docs: update readme
This commit is contained in:
26
README.md
26
README.md
@@ -1,6 +1,6 @@
|
|||||||
# 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.
|
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.
|
||||||
|
|
||||||
@@ -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
|
- **Security-by-Design**: Built-in JWT authentication, RBAC/ABAC authorization, and audit logging
|
||||||
- **Observability**: OpenTelemetry integration for tracing, metrics, and 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
|
## Directory Structure
|
||||||
|
|
||||||
```
|
```
|
||||||
@@ -212,7 +203,7 @@ type IModule interface {
|
|||||||
- **Structured Logging**: JSON-formatted logs with correlation IDs
|
- **Structured Logging**: JSON-formatted logs with correlation IDs
|
||||||
- **Health Checks**: Kubernetes-ready health and readiness endpoints
|
- **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.
|
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
|
- **Logging**: Log level, format, and output destination
|
||||||
- **Authentication**: JWT settings and token configuration
|
- **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
|
## Contributing
|
||||||
|
|
||||||
1. Create a feature branch: `git checkout -b feature/my-feature`
|
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)
|
- [Implementation Plan](docs/content/plan.md)
|
||||||
- [Playbook](docs/content/playbook.md)
|
- [Playbook](docs/content/playbook.md)
|
||||||
|
|
||||||
## 📞 Support
|
## Support
|
||||||
|
|
||||||
For questions and support, please refer to the documentation or create an issue in the repository.
|
For questions and support, please refer to the documentation or create an issue in the repository.
|
||||||
|
|||||||
Reference in New Issue
Block a user