Monorepo for The Order - A comprehensive platform for legal, financial, and governance systems.
## Overview
The Order is a mono-repo containing all applications, services, packages, infrastructure, and documentation for managing legal documents, financial systems, identity management, datarooms, and member portals.
This repository also supports the governance and legal transition framework for:
- **Order of Military Hospitallers** - Constitutional sovereign structure
- **International Criminal Court of Commerce** - Judicial arm and tribunal
- **Digital Bank of International Settlements (DBIS)** - Financial market infrastructure
See [docs/reports/GOVERNANCE_TASKS.md](./docs/reports/GOVERNANCE_TASKS.md) and [docs/governance/](./docs/governance/) for comprehensive governance documentation.
Environment variables are managed using SOPS (Secrets Operations). See `docs/governance/SECURITY.md` for details.
1. Copy `.env.example` files to `.env.local` in each workspace
2. For encrypted secrets, use SOPS with age keys
3. Never commit plaintext secrets to the repository
Example:
```bash
# Decrypt and load secrets
sops -d secrets/dev.env.enc > .env.local
```
## Environments
- **dev**: Local development environment
- **stage**: Staging environment for testing
- **prod**: Production environment
Environment-specific configurations are in `infra/k8s/overlays/`.
## Git Submodules
Some services and apps are managed as Git submodules. To add submodules:
```bash
# See scripts/add-submodules.sh for examples
./scripts/add-submodules.sh
```
To update submodules:
```bash
git submodule update --remote
```
## Contribution
Please read [CONTRIBUTING.md](docs/governance/CONTRIBUTING.md) for details on our code of conduct and the process for submitting pull requests.
### Development Workflow
1. Create a feature branch from `main`
2. Make your changes
3. Run tests and linting: `pnpm test && pnpm lint`
4. Commit using [Conventional Commits](https://www.conventionalcommits.org/)
5. Push and create a Pull Request
### Code Standards
- TypeScript strict mode enabled
- ESLint + Prettier for code formatting
- All tests must pass
- Type checking must pass
- Follow the architecture decisions in `docs/architecture/adrs/`
## Security
See [SECURITY.md](docs/governance/SECURITY.md) for security policies and reporting procedures.
## Architecture
Architecture Decision Records (ADRs) are located in `docs/architecture/adrs/`. See [docs/architecture/README.md](docs/architecture/README.md) for more information.
## Release Process
Releases are managed via semantic versioning and automated through CI/CD:
1. Merge to `main` triggers automated tests and builds
2. Tagged releases trigger deployment to staging
3. Manual approval required for production deployment
4. See `.github/workflows/release.yml` for details
## License
See [LICENSE](LICENSE) for license information.
## Support
For questions and support, please open an issue in this repository.