docs: update readme
All checks were successful
CI / Test (push) Successful in 21s
CI / Lint (push) Successful in 18s
CI / Build (push) Successful in 12s
CI / Format Check (push) Successful in 2s

This commit is contained in:
2025-11-05 21:42:24 +01:00
parent b01d5bdeea
commit cab7cadf9e
6 changed files with 13 additions and 31 deletions

View File

@@ -1,12 +1,12 @@
# Go Platform (goplt)
# Go Platform
**Plugin-friendly SaaS/Enterprise Platform Go Edition**
**SaaS/Enterprise Platform Go Edition**
A modular, extensible platform built with Go that provides a solid foundation for building scalable, secure, and observable applications. The platform supports plugin-based architecture, enabling teams to build feature modules independently while sharing core services.
## Architecture Overview
Go Platform follows **Clean/Hexagonal Architecture** principles with clear separation between:
Go Platform follows **Hexagonal Architecture** principles with clear separation between:
- **Core Kernel**: Foundation services (authentication, authorization, configuration, logging, observability)
- **Module Framework**: Plugin system for extending functionality
@@ -14,15 +14,6 @@ Go Platform follows **Clean/Hexagonal Architecture** principles with clear separ
- **Security-by-Design**: Built-in JWT authentication, RBAC/ABAC authorization, and audit logging
- **Observability**: OpenTelemetry integration for tracing, metrics, and logging
### Key Principles
- **Clean Architecture**: Separation between `pkg/` (interfaces) and `internal/` (implementations)
- **Dependency Injection**: Using `uber-go/fx` for lifecycle management
- **Microservices-Ready**: Each module is an independent service from day one
- **Plugin-First Design**: Extensible architecture supporting static and dynamic module loading
- **Security-by-Design**: JWT authentication, RBAC/ABAC, and audit logging
- **Observability**: OpenTelemetry, structured logging, and Prometheus metrics
## Directory Structure
```
@@ -40,7 +31,7 @@ goplt/
├── pkg/ # Public interfaces (exported)
│ ├── config/ # ConfigProvider interface
│ ├── logger/ # Logger interface
│ ├── module/ # IModule interface
│ ├── module/ # IModule interface
│ ├── auth/ # Auth interfaces
│ ├── perm/ # Permission DSL
│ └── infra/ # Infrastructure interfaces
@@ -212,7 +203,7 @@ type IModule interface {
- **Structured Logging**: JSON-formatted logs with correlation IDs
- **Health Checks**: Kubernetes-ready health and readiness endpoints
## 🔧 Configuration
## Configuration
Configuration is managed through YAML files and environment variables. See `config/default.yaml` for the base configuration structure.
@@ -223,15 +214,6 @@ Key configuration sections:
- **Logging**: Log level, format, and output destination
- **Authentication**: JWT settings and token configuration
## Testing
The project follows table-driven testing patterns and includes:
- Unit tests for all packages
- Integration tests for service interactions
- Mock generation for interfaces
- Test coverage reporting
## Contributing
1. Create a feature branch: `git checkout -b feature/my-feature`
@@ -251,6 +233,6 @@ The project follows table-driven testing patterns and includes:
- [Implementation Plan](docs/content/plan.md)
- [Playbook](docs/content/playbook.md)
## 📞 Support
## Support
For questions and support, please refer to the documentation or create an issue in the repository.