Modules
Each module is an Orchard Core module with a Core library and, where it has contracts for other projects to implement, an Abstractions library. See Architecture for the layering rules.
| Module | Projects | Feature | Page |
|---|---|---|---|
| Foundation | CrestApps.Almohaseb, CrestApps.Almohaseb.Core, CrestApps.Almohaseb.Abstractions | Almohaseb Foundation (dependency only) | Foundation |
| Admin UI | CrestApps.Almohaseb.Admin.UI, CrestApps.Almohaseb.Admin.UI.Core | Almohaseb Admin UI (dependency only) | Admin UI |
| Jobs | CrestApps.Almohaseb.Jobs, CrestApps.Almohaseb.Jobs.Core | Almohaseb Jobs (dependency only) | Jobs |
| Imports | CrestApps.Almohaseb.Imports, CrestApps.Almohaseb.Imports.Core | Imports | Imports |
| Ledger | CrestApps.Almohaseb.Ledger, CrestApps.Almohaseb.Ledger.Core | Accounting | Ledger |
| Contacts | CrestApps.Almohaseb.Contacts, CrestApps.Almohaseb.Contacts.Core | Customers & vendors | Contacts |
| Items | CrestApps.Almohaseb.Items, CrestApps.Almohaseb.Items.Core | Sales categories | Items |
| Sales | CrestApps.Almohaseb.Sales, CrestApps.Almohaseb.Sales.Core | Sales & receivables | Sales |
| Purchases | CrestApps.Almohaseb.Purchases, CrestApps.Almohaseb.Purchases.Core | Purchases & payables | Purchases |
| Assets | CrestApps.Almohaseb.Assets, CrestApps.Almohaseb.Assets.Core | Fixed assets | Assets |
| Mileage | CrestApps.Almohaseb.Mileage, CrestApps.Almohaseb.Mileage.Core | Trip log | Mileage |
| Documents | CrestApps.Almohaseb.Documents, CrestApps.Almohaseb.Documents.Core | Documents & attachments | Documents |
| Banking | CrestApps.Almohaseb.Banking, CrestApps.Almohaseb.Banking.Core | Banking | Banking |
| Retail | CrestApps.Almohaseb.Retail, CrestApps.Almohaseb.Retail.Core | Cash drawer, Daily close, Check cashing, Lottery, Fuel | Retail |
| Reports | CrestApps.Almohaseb.Reports, CrestApps.Almohaseb.Reports.Core | Operational reports, Dashboard widgets | Reports |
| Sales Tax | CrestApps.Almohaseb.SalesTax, CrestApps.Almohaseb.SalesTax.Core | Sales tax returns | Sales Tax |
| Payroll | CrestApps.Almohaseb.Payroll, CrestApps.Almohaseb.Payroll.Core | Payroll | Payroll |
| Firm | CrestApps.Almohaseb.Firm, CrestApps.Almohaseb.Firm.Core | Accounting firm | Firm |
Adding a module
- Create the Core and Module projects (and Abstractions when other projects implement its contracts) following the layering rules, and reference the module from
CrestApps.Almohaseb.Web. - Declare a feature only when a person should choose it; otherwise mark it
EnabledByDependencyOnly. - Document it in the same change: a Technical Manual page here, a User Manual page for its screens, both sidebars, the Feature ID Reference, and Configuration when it reads settings. The contributor guide is
src/CrestApps.Almohaseb.Docs/README.md.