OpenEAHub is an open source Enterprise Architecture management application for lightweight portfolio governance. It helps architecture teams manage applications, business capabilities, technologies, integrations, enterprise data objects, owners, roadmaps, risks, and technical debt.
The project is intentionally simple for an MVP. It is designed to run locally from VS Code, be deployed with Docker Compose, and be extended by open source contributors.
- Dashboard with summary counts for core architecture assets
- Application portfolio with ownership, lifecycle, hosting, criticality, capability links, integration links, technology stack, and risk score
- Business capability hierarchy with application links and heatmap data
- Technology catalog with lifecycle status
- Integration catalog with source, target, protocol, frequency, and data object context
- Data object catalog for enterprise data governance discussions
- Roadmap view for planned initiatives and impacted assets
- Risk and technical debt tracking
- Search and filtering across core catalogs
- CSV export for applications, capabilities, technologies, and integrations
- Local JWT authentication with Admin, Architect, and Viewer roles
- HTML documentation site under the docs folder
| Layer | Technology |
|---|---|
| Frontend | React, TypeScript, Vite |
| Backend | Node.js, Express, TypeScript |
| Database | PostgreSQL |
| ORM | Prisma |
| Authentication | JWT with bcrypt password hashing |
| Tests | Vitest and Supertest |
| Deployment | Docker Compose |
| Documentation | Static HTML |
Screenshots can be added after running the application locally.
| Page | Placeholder |
|---|---|
| Dashboard | docs/assets/dashboard-placeholder.svg |
| Application portfolio | docs/assets/applications-placeholder.svg |
| Capability map | docs/assets/capability-map-placeholder.svg |
cp .env.example .env
docker compose up --buildOpen the frontend at http://localhost:5173.
Open the backend health endpoint at http://localhost:4000/health.
Seeded login accounts are listed below.
| Role | Password | |
|---|---|---|
| Admin | admin@openeahub.local | OpenEAHub123! |
| Architect | architect@openeahub.local | OpenEAHub123! |
| Viewer | viewer@openeahub.local | OpenEAHub123! |
Install the recommended extensions from .vscode/extensions.json.
Create your local environment file.
cp .env.example .envStart PostgreSQL only.
docker compose up dbInstall backend dependencies.
cd backend
npm install
npm run prisma:generate
npm run prisma:push
npm run seed
npm run devInstall frontend dependencies in a second terminal.
cd frontend
npm install
npm run devFor fast local MVP setup use Prisma db push.
cd backend
npm run prisma:push
npm run seedTo reset and reload the sample data, run the seed command with SEED_RESET=true.
SEED_RESET=true npm run seedFor formal migration history use Prisma migrate.
cd backend
npm run prisma:migrate
npm run seedOpen docs/api.html in a browser. The backend routes are under /api.
OpenEAHub/
README.md
LICENSE
CONTRIBUTING.md
CODE_OF_CONDUCT.md
SECURITY.md
docker-compose.yml
.env.example
.gitignore
.vscode/
extensions.json
docs/
index.html
getting-started.html
architecture.html
api.html
data-model.html
deployment.html
contributing.html
backend/
package.json
src/
prisma/
schema.prisma
seed.ts
tests/
frontend/
package.json
src/
public/
Fork the repository, create a feature branch, keep changes small, add or update tests when practical, and open a pull request with a clear summary.
See CONTRIBUTING.md and docs/contributing.html for more detail.
OpenEAHub is released under the MIT License. See LICENSE.