diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 0000000..ddf9939 --- /dev/null +++ b/CHANGELOG.md @@ -0,0 +1,58 @@ +# Changelog + +All notable changes to the TaaS Platform will be documented in this file. + +The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), +and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). + +## [1.0.0] - 2026-04-01 + +### Added +- Initial release of TaaS Platform +- API Server (Go 1.26) with RESTful endpoints +- Carrier Connector for GSMA ES2+ integration +- Charging Engine (Rust 1.94) with Redis-based credit control +- Packet Gateway stub with eBPF architecture +- Web Dashboard (Next.js 15) with Tailwind CSS +- Docker deployment with docker-compose +- Kubernetes manifests for production deployment +- Complete documentation (API, Architecture, Deployment) +- Setup scripts for MongoDB and Redis +- Development environment setup script +- Comprehensive TODO list with research links + +### Features +- eSIM creation and management +- Real-time credit control +- Usage tracking and reporting +- Developer dashboard +- Webhook support (planned) +- Multi-tenant architecture +- Horizontal scaling support + +### Technical +- Go 1.26 with Green Tea GC +- Rust 1.94 with array_windows +- TypeScript/Next.js 15 +- MongoDB 7.0 for subscriber data +- Redis 7 for real-time state +- free5GC integration ready +- eBPF/Aya framework integration + +## [Unreleased] + +### Planned Features +- Complete eBPF packet gateway implementation +- Real-time webhook delivery +- Advanced analytics dashboard +- Multi-region deployment support +- SGP.32 (IoT eSIM) support +- CLI tool for developers +- Terraform provider +- Enhanced monitoring and alerting + +--- + +## Version History + +- **1.0.0** - Initial release with core functionality diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md new file mode 100644 index 0000000..ee74639 --- /dev/null +++ b/CONTRIBUTING.md @@ -0,0 +1,129 @@ +# Contributing to TaaS Platform + +Thank you for your interest in contributing to the TaaS Platform! This document provides guidelines for contributing to the project. + +## Getting Started + +1. **Fork the repository** +2. **Clone your fork:** + ```bash + git clone https://github.com/YOUR_USERNAME/telecom-platform.git + cd telecom-platform + ``` +3. **Set up development environment:** + ```bash + ./scripts/dev-setup.sh + make all + ``` + +## Development Workflow + +1. **Create a feature branch:** + ```bash + git checkout -b feature/your-feature-name + ``` + +2. **Make your changes:** + - Write clear, documented code + - Follow language-specific style guides + - Add tests for new functionality + +3. **Run tests:** + ```bash + make test + ``` + +4. **Commit your changes:** + ```bash + git add . + git commit -m "feat: add new feature" + ``` + +5. **Push to your fork:** + ```bash + git push origin feature/your-feature-name + ``` + +6. **Create a Pull Request** + +## Code Style + +### Go +- Follow [Effective Go](https://go.dev/doc/effective_go) +- Use `gofmt` for formatting +- Run `golangci-lint` before committing + +### Rust +- Follow [Rust API Guidelines](https://rust-lang.github.io/api-guidelines/) +- Use `cargo fmt` for formatting +- Run `cargo clippy` before committing + +### TypeScript +- Follow [Airbnb Style Guide](https://github.com/airbnb/javascript) +- Use Prettier for formatting +- Use ESLint for linting + +## Commit Message Format + +We use [Conventional Commits](https://www.conventionalcommits.org/): + +``` +(): + + + +