Construction Erp
Construction management application for Moroccan BTP companies, built on Frappe and ERPNext. Currently under active development, with construction-specific workflows, DocTypes, and business processes.
- Author: yassinidyhya
- Repository: https://github.com/yassinidyhya/construction_ERP
- GitHub stars: 2
- Forks: 0
- License: MIT
- Category: Other
- Maintenance: Actively Maintained
Install Construction Erp
bench get-app https://github.com/yassinidyhya/construction_ERP
Tags
- btp
- construction
- erp
- erpnext
- frappe
- marocco
Add the Frappe Gems badge to your README
Maintain Construction Erp? Paste this into your README:
[](https://frappegems.com/gems/apps/yassinidyhya/construction_ERP)
About Construction Erp
BTP — Construction Management for ERPNext
> Construction management for Moroccan BTP companies, built on Frappe and ERPNext.
BTP is an open-source construction management application being developed for Moroccan construction and BTP companies.
The project extends Frappe / ERPNext with construction-specific workflows, data models, and business processes while keeping ERPNext as the underlying ERP platform.
> Status: Work in Progress > > BTP is actively under development. Features, workflows, and the data model are still evolving and the application is not yet considered production-ready.
Overview
Construction companies have operational requirements that are not fully covered by a general-purpose ERP.
BTP aims to provide a dedicated construction layer on top of ERPNext, covering the workflows involved in managing construction projects, resources, costs, and day-to-day operations.
The project is being developed with the Moroccan construction market in mind, with future consideration for local business practices, terminology, and regulatory requirements.
The goal is not to rebuild ERPNext.
Instead, BTP adds the construction-specific functionality needed by BTP companies while continuing to use ERPNext for core ERP capabilities.
Architecture
┌─────────────────────────────────┐
│ BTP │
│ Construction-specific features │
│ Workflows · DocTypes · Reports │
└────────────────┬────────────────┘
│
┌────────────────▼────────────────┐
│ ERPNext │
│ Accounting · Stock · Projects │
│ Buying · Selling · HR · CRM │
└────────────────┬────────────────┘
│
┌────────────────▼────────────────┐
│ Frappe │
│ Framework · ORM · API · Auth │
│ Permissions · Background Jobs │
└─────────────────────────────────┘
ERPNext already provides core ERP functionality such as accounting, inventory, purchasing, projects, HR, and other business operations. BTP focuses on extending that foundation for construction-specific use cases.
Target Users
BTP is being designed primarily for Moroccan:
- Construction companies
- BTP contractors
- Civil engineering companies
- Building contractors
- Subcontractors
- Infrastructure companies
- Construction project teams
The application may evolve to support additional construction-related businesses and workflows as development progresses.
Current Direction
The project is currently focused on establishing the foundation for construction management within ERPNext.
Planned and evolving areas include:
- Construction project management
- Construction-specific DocTypes
- Project and site workflows
- Cost and resource tracking
- Construction operations
- Construction reporting
- Integration with ERPNext's existing modules
- Moroccan-specific business requirements
These areas are part of the project's development direction and should not be interpreted as completed functionality.
Technology
| Layer | Technology |
|---|---|
| ERP Platform | ERPNext |
| Framework | Frappe Framework |
| Backend | Python |
| Database | MariaDB |
| Frontend | Frappe UI / JavaScript |
| Application Management | Frappe Bench |
| Code Quality | Ruff, ESLint, Prettier, PyUpgrade |
Installation
BTP is installed as a Frappe application inside an existing Frappe/ERPNext Bench environment.
Requirements
You need a working Frappe Bench installation with ERPNext installed.
Get the application
cd $PATH_TO_YOUR_BENCH
bench get-app https://github.com/yassinidyhya/construction_ERP.git --branch develop
Install the application
bench install-app btp
After installation, migrate the site if required:
bench --site migrate
Development
The application is located inside the Bench apps directory:
apps/btp/
Start the development environment with:
bench start
Because BTP is still under development, installation and development requirements may change as the project evolves.
Code Quality
The repository uses pre-commit for formatting and linting.
Install the hooks:
cd apps/btp
pre-commit install
Run all checks manually:
pre-commit run --all-files
The current configuration includes:
- Ruff
- ESLint
- Prettier
- PyUpgrade
Project Structure
The application follows the standard Frappe application structure.
construction_ERP/
├── btp/
│ ├── hooks.py
│ ├── modules.txt
│ └── ...
├── pyproject.toml
├── license.txt
└── README.md
As development progresses, construction-specific modules, DocTypes, reports, workflows, and utilities will be added to the application.
Project Status
Work in Progress
BTP is not a finished product.
The project is currently being developed as a foundation for a construction management solution for Moroccan BTP companies.
The architecture, data model, workflows, and functionality may change significantly during development.
Do not use the current version as a production construction management system unless you have independently reviewed and validated the application for your requirements.
Roadmap
The roadmap will evolve alongside the project.
Potential areas of development include:
- [ ] Construction project workflows
- [ ] Site management
- [ ] Construction cost management
- [ ] Resource management
- [ ] Construction reporting
- [ ] Moroccan business localization
- [ ] Additional ERPNext integrations
- [ ] Production deployment readiness
- [ ] Documentation and user guides
Contributing
BTP is a public project and contributions, issues, and suggestions are welcome.
If you want to propose a significant change, open an issue first so the approach can be discussed before implementation.
Before submitting changes, run:
pre-commit run --all-files
License
BTP is released under the MIT License.
See license.txt for the complete license text.
Built With
BTP — Building construction management capabilities for ERPNext, with Moroccan BTP companies in mind.
Related Other apps for Frappe & ERPNext
- Erpnext — Free and Open Source Enterprise Resource Planning (ERP)
- Helpdesk — Modern, Streamlined, Free and Open Source Customer Service Software
- Print Designer — Visual print designer for Frappe / ERPNext
- Ctr — CTR模型代码和学习笔记总结
- Whitelabel — Whitelabel ERPNext
- Fossunited — fossunited.org
- Helm — Helm Chart Repository for Frappe/ERPNext
- Frappe Attachments S3 — A frappe app to upload file attachments in doctypes to s3.