A Modern Full-Stack Community Platform with AI-Powered Features
Getting Started β’ Documentation β’ Contributing β’ Security
|
Secure JWT-based authentication with ASP.NET Identity, featuring token rotation, account lockout protection, and email confirmation. HuggingFace-powered community assistant providing intelligent responses and automated support. Fully containerized with Docker and Kubernetes support for seamless deployment and scaling. |
Complete profile management system across all platforms with real-time synchronization. Native experiences on Web (Angular 19) and Mobile (Flutter for iOS/Android). Automated testing, building, and deployment with GitHub Actions for all components. |
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β Client Layer β
ββββββββββββββββββββ¬βββββββββββββββββββ¬ββββββββββββββββββββββββββββ€
β π Angular 19 β π± Flutter β π External APIs β
β (ClientApp/) β (Mobile/) β β
ββββββββββ¬ββββββββββ΄βββββββββ¬ββββββββββ΄ββββββββββββββ¬ββββββββββββββ
β β β
ββββββββββββββββββββΌββββββββββββββββββββββββ
β
βββββββββΌββββββββ
β π API GW β
β (nginx) β
βββββββββ¬ββββββββ
β
ββββββββββββββββββββΌβββββββββββββββββββ
β β β
βββββββΌββββββ ββββββββΌβββββββ βββββββΌββββββ
β π· .NET 9 β β π Python β β π‘ SignalR β
β API β β AI Agent β β Hub β
β (src/) β β (AiAgent/) β β β
βββββββ¬ββββββ ββββββββ¬βββββββ βββββββββββββ
β β
ββββββββββ¬ββββββββββ
β
ββββββββΌβββββββ
β ποΈ Database β
β SQL Server β
βββββββββββββββ
fullycommunity/
βββ π ClientApp/ # Angular 19 Frontend
β βββ src/
β βββ app/
β β βββ core/ # Guards, interceptors, services
β β βββ features/ # Feature modules (auth, profile)
β β βββ shared/ # Shared components
β βββ environments/
β
βββ π src/ # ASP.NET Core 9 Backend
β βββ CommunityCar.API/ # Web API layer
β βββ CommunityCar.Application/ # Business logic
β βββ CommunityCar.Domain/ # Entities & interfaces
β βββ CommunityCar.Infrastructure/ # Data access
β βββ CommunityCar.Tests/ # Unit & integration tests
β
βββ π AiAgent/ # Python AI Service
β βββ agents/ # AI assistants
β βββ routers/ # FastAPI routes
β βββ services/ # Business services
β βββ tests/ # Pytest tests
β
βββ π Mobile/ # Flutter Mobile App
β βββ lib/
β βββ config/ # Router, theme
β βββ models/ # Data models
β βββ providers/ # State management
β βββ screens/ # UI screens
β βββ services/ # API services
β
βββ π .devops/ # DevOps Configurations
β βββ k8s/ # Kubernetes manifests
β βββ Dockerfile.* # Docker images
β βββ docker-compose.yml
β
βββ π .github/ # GitHub Configurations
β βββ workflows/
β βββ backend/ # .NET CI/CD
β βββ frontend/ # Angular CI/CD
β βββ mobile/ # Flutter CI/CD
β βββ ai-agent/ # Python CI/CD
β βββ infrastructure/ # Docker, Terraform
β βββ shared/ # CodeQL, Release, PR automation
β
βββ π docs/ # Documentation
Important
Before you begin, ensure you have the required tools installed. The platform consists of multiple components that can be run independently or together using Docker.
| π οΈ Tool | π¦ Version | β¬οΈ Download | π Purpose |
|---|---|---|---|
| Node.js | 20+ | nodejs.org | Frontend development |
| .NET SDK | 9.0 | dotnet.microsoft.com | Backend API |
| Python | 3.11+ | python.org | AI Agent service |
| Flutter | 3.24+ | flutter.dev | Mobile application |
| Docker | Latest | docker.com | Containerization |
Tip
Quick Setup: If you have Docker installed, you can skip individual tool installations and run everything with docker-compose up -d!
| .NET SDK | 9.0 | dotnet.microsoft.com |
| Python | 3.11+ | python.org |
| Flutter | 3.24+ | flutter.dev |
| Docker | Latest | docker.com |
π· Backend (.NET)
cd src
dotnet restore
dotnet run --project CommunityCar.APIEndpoints:
- π API:
http://localhost:5000 - π Swagger:
http://localhost:5000/swagger
π§ͺ Run Tests
cd src
dotnet test --verbosity normal[!TIP] Use
--collect:"XPlat Code Coverage"to generate coverage reports.
π Frontend (Angular)
cd ClientApp
npm install
ng serveAccess: http://localhost:4200
π€ AI Agent (Python)
cd AiAgent
python -m venv venv
# Activate virtual environment
source venv/bin/activate # Linux/Mac
# OR
venv\Scripts\activate # Windows
pip install -r requirements.txt
uvicorn main:app --reloadEndpoints:
- π API:
http://localhost:8000 - π Docs:
http://localhost:8000/docs
π± Mobile (Flutter)
cd Mobile
flutter pub get
flutter run[!NOTE] Ensure you have an emulator running or a physical device connected.
π³ Docker (All Services)
cd .devops
docker-compose up -d[!TIP] This is the easiest way to run all services together. Perfect for testing the complete platform!
π API ReferenceREST API Endpoints Complete API documentation with request/response examples |
ποΈ ArchitectureSystem Design Detailed architecture diagrams and design decisions |
βοΈ Setup GuideDevelopment Setup Step-by-step development environment setup |
π€ ContributingContribution Guidelines How to contribute to the project |
π SecuritySecurity Policy Security practices and vulnerability reporting |
We welcome contributions from developers of all skill levels! π
Whether you're fixing bugs, adding features, or improving documentation, your contributions make this project better for everyone.
# 1οΈβ£ Fork & clone the repo
git clone https://github.com/YOUR_USERNAME/fullycommunity.git
cd fullycommunity
# 2οΈβ£ Create a feature branch
git checkout -b feature/amazing-feature
# 3οΈβ£ Make your changes & commit (follow conventional commits)
git commit -m "feat: add amazing feature"
# 4οΈβ£ Push & create a PR
git push origin feature/amazing-featureNote
Please read our Contributing Guide for detailed guidelines on code style, commit messages, and the PR process.
Caution
Found a security vulnerability? Please DO NOT open a public issue.
Report security issues privately:
- π§ Email:
security@fullycommunity.com - π See our Security Policy for detailed reporting guidelines
We take security seriously and will respond promptly to all reports.
This project is licensed under the MIT License - see the LICENSE file for details.