Some checks failed
Docker Build and Push / setup (push) Successful in 54s
API Docs (Node.js Express) / test (20) (push) Failing after 3m4s
API Docs (Node.js Express) / build (push) Has been skipped
Integration Tests / integration-tests (push) Failing after 2m31s
Integration Tests / performance-tests (push) Has been skipped
API Gateway (Java Spring Boot) / test (21) (push) Failing after 4m18s
API Gateway (Java Spring Boot) / test (17) (push) Failing after 4m19s
API Gateway (Java Spring Boot) / build (push) Has been skipped
Service Adapters (Python FastAPI) / test (3.11) (push) Failing after 1m51s
Docker Build and Push / build-push-service-adapters (push) Successful in 1m15s
Service Adapters (Python FastAPI) / test (3.13) (push) Failing after 1m58s
Service Adapters (Python FastAPI) / test (3.12) (push) Failing after 3m17s
Service Adapters (Python FastAPI) / build (push) Has been skipped
Docker Build and Push / build-push-api-docs (push) Successful in 52s
Docker Build and Push / build-push-frontend (push) Successful in 45s
Docker Build and Push / build-push-api-gateway (push) Successful in 10m4s
45 lines
1.7 KiB
Markdown
45 lines
1.7 KiB
Markdown
# API Documentation Service
|
|
|
|
A unified API documentation service that aggregates OpenAPI specifications from all LabFusion services.
|
|
|
|
## Purpose
|
|
- Provide a single entry point for all API documentation
|
|
- Aggregate OpenAPI specs from all active services
|
|
- Display unified Swagger UI for the entire LabFusion ecosystem
|
|
- Monitor service health and availability
|
|
|
|
## Technology Stack
|
|
- **Language**: Node.js
|
|
- **Port**: 8083
|
|
- **Dependencies**: Express, Swagger UI, Axios
|
|
|
|
## Features
|
|
- **Unified Documentation**: Single Swagger UI for all services
|
|
- **Service Health Monitoring**: Real-time status of all services
|
|
- **Dynamic Spec Generation**: Automatically fetches and merges OpenAPI specs
|
|
- **Service Prefixing**: Each service's endpoints are prefixed for clarity
|
|
- **Fallback Handling**: Graceful handling of unavailable services
|
|
|
|
## API Endpoints
|
|
- `GET /` - Swagger UI interface
|
|
- `GET /openapi.json` - Unified OpenAPI specification
|
|
- `GET /services` - Service health status
|
|
- `GET /health` - Documentation service health
|
|
|
|
## Development Status
|
|
✅ **Complete** - Ready for use with comprehensive testing and clean code implementation
|
|
|
|
## Testing
|
|
- **Unit Tests**: Jest test suite with comprehensive coverage
|
|
- **Coverage**: Test coverage reporting
|
|
- **CI/CD**: Automated testing in Gitea Actions pipeline
|
|
- **Quality**: ESLint code quality checks
|
|
|
|
## Clean Code Implementation
|
|
- **Single Purpose**: Focused on OpenAPI spec aggregation
|
|
- **Error Handling**: Graceful degradation when services are unavailable
|
|
- **Caching**: Performance optimization with intelligent caching
|
|
- **Health Monitoring**: Real-time service status tracking
|
|
- **Configuration**: Environment-based settings management
|
|
- **Documentation**: Comprehensive inline documentation
|