feat: comprehensive project structure improvements and Cloud for Sovereignty landing zone
- Add Cloud for Sovereignty landing zone architecture and deployment - Implement complete legal document management system - Reorganize documentation with improved navigation - Add infrastructure improvements (Dockerfiles, K8s, monitoring) - Add operational improvements (graceful shutdown, rate limiting, caching) - Create comprehensive project structure documentation - Add Azure deployment automation scripts - Improve repository navigation and organization
This commit is contained in:
145
packages/README.md
Normal file
145
packages/README.md
Normal file
@@ -0,0 +1,145 @@
|
||||
# Packages Directory
|
||||
|
||||
**Last Updated**: 2025-01-27
|
||||
**Purpose**: Shared libraries and packages overview
|
||||
|
||||
## Overview
|
||||
|
||||
This directory contains shared libraries and packages used across services and applications in The Order monorepo.
|
||||
|
||||
## Package Categories
|
||||
|
||||
### Core Packages
|
||||
|
||||
#### `shared/`
|
||||
- **Purpose**: Common utilities, middleware, error handling
|
||||
- **Used By**: All services
|
||||
- **Key Features**: Logging, validation, authentication, rate limiting
|
||||
|
||||
#### `database/`
|
||||
- **Purpose**: Database layer, migrations, queries
|
||||
- **Used By**: All services
|
||||
- **Key Features**: PostgreSQL client, migrations, query builders
|
||||
|
||||
#### `schemas/`
|
||||
- **Purpose**: Zod/JSON schemas for validation
|
||||
- **Used By**: All services and apps
|
||||
- **Key Features**: Request/response validation, type safety
|
||||
|
||||
### Authentication & Security
|
||||
|
||||
#### `auth/`
|
||||
- **Purpose**: Authentication and authorization
|
||||
- **Used By**: All services
|
||||
- **Key Features**: JWT, OIDC, DID authentication
|
||||
|
||||
#### `crypto/`
|
||||
- **Purpose**: Cryptography, KMS integration
|
||||
- **Used By**: Identity, Legal Documents services
|
||||
- **Key Features**: Key management, signing, encryption
|
||||
|
||||
### Infrastructure
|
||||
|
||||
#### `storage/`
|
||||
- **Purpose**: Storage abstraction (S3/GCS/Azure)
|
||||
- **Used By**: Intake, Dataroom, Legal Documents services
|
||||
- **Key Features**: WORM storage, object lifecycle
|
||||
|
||||
#### `monitoring/`
|
||||
- **Purpose**: Observability and metrics
|
||||
- **Used By**: All services
|
||||
- **Key Features**: Prometheus metrics, OpenTelemetry
|
||||
|
||||
#### `cache/`
|
||||
- **Purpose**: Caching utilities
|
||||
- **Used By**: All services
|
||||
- **Key Features**: Redis caching, cache strategies
|
||||
|
||||
### Specialized Packages
|
||||
|
||||
#### `verifier-sdk/`
|
||||
- **Purpose**: Verifiable credential verification
|
||||
- **Used By**: Identity service
|
||||
- **Key Features**: VC verification, DID resolution
|
||||
|
||||
#### `ocr/`
|
||||
- **Purpose**: OCR processing
|
||||
- **Used By**: Intake service
|
||||
- **Key Features**: Document OCR, text extraction
|
||||
|
||||
#### `payment-gateway/`
|
||||
- **Purpose**: Payment gateway abstraction
|
||||
- **Used By**: Finance service
|
||||
- **Key Features**: Stripe integration, payment processing
|
||||
|
||||
## Package Structure
|
||||
|
||||
All packages follow a consistent structure:
|
||||
|
||||
```
|
||||
package/
|
||||
├── src/
|
||||
│ ├── index.ts # Main exports
|
||||
│ └── [module files]
|
||||
├── tests/ # Test files
|
||||
├── package.json # Package definition
|
||||
└── README.md # Package documentation
|
||||
```
|
||||
|
||||
## Using Packages
|
||||
|
||||
### In Services
|
||||
|
||||
```typescript
|
||||
import { createLogger, errorHandler } from '@the-order/shared';
|
||||
import { getPool, createDocument } from '@the-order/database';
|
||||
import { IssueVCSchema } from '@the-order/schemas';
|
||||
```
|
||||
|
||||
### In Applications
|
||||
|
||||
```typescript
|
||||
import { Button } from '@the-order/ui';
|
||||
import { validateSchema } from '@the-order/schemas';
|
||||
```
|
||||
|
||||
## Development
|
||||
|
||||
### Building Packages
|
||||
|
||||
```bash
|
||||
# Build all packages
|
||||
pnpm build
|
||||
|
||||
# Build specific package
|
||||
pnpm --filter @the-order/shared build
|
||||
```
|
||||
|
||||
### Testing Packages
|
||||
|
||||
```bash
|
||||
# Test all packages
|
||||
pnpm test
|
||||
|
||||
# Test specific package
|
||||
pnpm --filter @the-order/shared test
|
||||
```
|
||||
|
||||
## Package Dependencies
|
||||
|
||||
Packages can depend on other packages:
|
||||
- `shared` → No dependencies
|
||||
- `database` → `shared`
|
||||
- `auth` → `shared`, `database`
|
||||
- Services → Multiple packages
|
||||
|
||||
## Related Documentation
|
||||
|
||||
- [Project Structure](../PROJECT_STRUCTURE.md)
|
||||
- [Service Documentation](../services/)
|
||||
- [Architecture Documentation](../docs/architecture/)
|
||||
|
||||
---
|
||||
|
||||
**Last Updated**: 2025-01-27
|
||||
|
||||
Reference in New Issue
Block a user