PHPackages                             adunsulag/oe-module-custom-skeleton - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. adunsulag/oe-module-custom-skeleton

ActiveOpenemr-module

adunsulag/oe-module-custom-skeleton
===================================

OpenEMR Custom Module Skeleton Starter Project

2.0.1(3y ago)137918[2 PRs](https://github.com/adunsulag/oe-module-custom-skeleton/pulls)GPL-3.0PHPPHP &gt;= 7.4

Since Aug 2Pushed 1y ago3 watchersCompare

[ Source](https://github.com/adunsulag/oe-module-custom-skeleton)[ Packagist](https://packagist.org/packages/adunsulag/oe-module-custom-skeleton)[ RSS](/packages/adunsulag-oe-module-custom-skeleton/feed)WikiDiscussions main Synced 1mo ago

READMEChangelogDependencies (3)Versions (10)Used By (0)

OpenEMR Custom Module Skeleton Starter Project
==============================================

[](#openemr-custom-module-skeleton-starter-project)

This is a sample module project that developers can clone and use to create their own custom modules inside the OpenEMR codebase. These modules leverage the oe-module-install-plugin which installs the custom module into the OpenEMR custom module installation folder.

The project has sample code that demostrates adding your module to the menu system, creating global settings, and adding a rest api endpoint.

There are a limited number of events currently in the OpenEMR codebase, as we continue to add support for module writers we will add more events to the codebase. If there is a place in the core codebase you would like your custom module to connect to please file an issue at

Getting Started
---------------

[](#getting-started)

You can start by cloning the project. When developing modules the best initial location would be to clone the directory inside the OpenEMR custom modules location. This is at *&lt;openemr\_installation\_directory&gt;//interface/modules/custom\_modules/*

```
git clone https://github.com/adunsulag/oe-module-custom-skeleton

```

Update the composer.json file properties for your own project.

Look at src/Bootstrap.php to see how to add menu items, subscribe to system events, insert global settings, or adjust the OpenEMR api.

### Installing Module Via Composer

[](#installing-module-via-composer)

There are two ways to install your module via composer.

#### Public Module

[](#public-module)

We highly encourage you to share your created modules with the OpenEMR community. To ensure that other developers / users can install your packages please register your module on . Once your module has been registered users can install your package by doing a `composer require "/`

#### Private Module

[](#private-module)

If your module is a private module you can still tell composer where to find your module by setting it up to use a private repository. You can do it with the following command:

```
composer config repositories.repo-name vcs https://github.com//

```

For example to install this skeleton as a module you can run the following

```
composer config repositories.repo-name vcs https://github.com/adunsulag/oe-module-custom-skeleton

```

At that point you can run the install command

```
composer require adunsulag/oe-module-custom-skeleton

```

### Installing Module via filesystem

[](#installing-module-via-filesystem)

If you copy your module into the installation directory you will need to copy your module's composer.json "psr-4" property into your OpenEMR's psr-4 settings. You will also need to run a `composer dump-autoload` wherever your openemr composer.json file is located in order to get your namespace properties setup properly to include your module.

### Activating Your Module

[](#activating-your-module)

Install your module using either composer (recommended) or by placing your module in the *&lt;openemr\_installation\_directory&gt;//interface/modules/custom\_modules/*.

Once your module is installed in OpenEMR custom\_modules folder you can activate your module in OpenEMR by doing the following.

1. Login to your OpenEMR installation as an administrator
2. Go to your menu and select Modules -&gt; Manage Modules
3. Click on the Unregistered tab in your modules list
4. Find your module and click the *Register* button. This will reload the page and put your module in the Registered list tab of your modules
5. Now click the *Install* button next your module name.
6. Finally click the *Enable* button for your module.

Contributing
------------

[](#contributing)

If you would like to help in improving the skeleton library just post an issue on Github or send a pull request.

###  Health Score

35

—

LowBetter than 79% of packages

Maintenance38

Infrequent updates — may be unmaintained

Popularity20

Limited adoption so far

Community16

Small or concentrated contributor base

Maturity56

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 90% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~62 days

Recently: every ~124 days

Total

9

Last Release

1246d ago

Major Versions

1.0.6 → 2.0.02022-01-08

PHP version history (2 changes)1.0.0PHP ^7.1

2.0.1PHP &gt;= 7.4

### Community

Maintainers

![](https://www.gravatar.com/avatar/d31537807c312261d834bfbcf19efafca59fd9c12349945d8cf281747e9b2421?d=identicon)[adunsulag](/maintainers/adunsulag)

---

Top Contributors

[![adunsulag](https://avatars.githubusercontent.com/u/228117?v=4)](https://github.com/adunsulag "adunsulag (18 commits)")[![kojiromike](https://avatars.githubusercontent.com/u/1566303?v=4)](https://github.com/kojiromike "kojiromike (1 commits)")[![sjpadgett](https://avatars.githubusercontent.com/u/1859985?v=4)](https://github.com/sjpadgett "sjpadgett (1 commits)")

---

Tags

openemropenemr-module

### Embed Badge

![Health badge](/badges/adunsulag-oe-module-custom-skeleton/health.svg)

```
[![Health](https://phpackages.com/badges/adunsulag-oe-module-custom-skeleton/health.svg)](https://phpackages.com/packages/adunsulag-oe-module-custom-skeleton)
```

###  Alternatives

[shopware/platform

The Shopware e-commerce core

3.3k1.5M3](/packages/shopware-platform)[sulu/sulu

Core framework that implements the functionality of the Sulu content management system

1.3k1.3M152](/packages/sulu-sulu)[prestashop/prestashop

PrestaShop is an Open Source e-commerce platform, committed to providing the best shopping cart experience for both merchants and customers.

9.0k15.4k](/packages/prestashop-prestashop)[contao/core-bundle

Contao Open Source CMS

1231.6M2.3k](/packages/contao-core-bundle)[shopware/core

Shopware platform is the core for all Shopware ecommerce products.

595.2M386](/packages/shopware-core)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
