Skip to main content

Technology Stack

AttributeValue
ProjectOpen Projects Hub
Version1.0
StatusAccepted

Overview​

This document defines the technology choices for the Open Projects Hub, organized by system layer. Each technology selection aligns with MVP delivery constraints, team expertise, and Clean Architecture principles.

Technology Stack Matrix​

ComponentSelected TechnologyDescription
Frontend
FrameworkReact + TypeScriptComponent-based UI framework with type safety for freelancer and client-review workflows
UI LibraryAnt DesignAccessible, production-ready component library for rapid MVP delivery
State ManagementRedux ToolkitPredictable state container for multi-step refinement and approval flows
Build ToolViteFast development server and optimized production builds
TestingVitest + React Testing LibraryUnit and component testing with fast feedback loops
E2E TestingPlaywrightEnd-to-end testing for critical user workflows
Backend
FrameworkFastAPI (Python)Modern async framework with OpenAPI generation and Clean Architecture compatibility
Data ValidationPydanticRequest/response validation with strong typing
ORMSQLAlchemyPersistence layer abstraction in infrastructure layer following repository pattern
TestingPytestUnit and integration testing with fixtures and mocking support
ContainerizationDocker + UvicornMulti-stage builds for reproducible deployments
Authentication
Auth ModuleCustom FastAPI + JWTInternal bounded context handling user identity, login, and token issuance
Password Hashingbcrypt (via passlib)Secure password storage with industry-standard hashing
Token ManagementPyJWT / python-joseJWT generation and validation for stateless authentication
AuthorizationBackend role checks + workspace-scoped queriesAPI-layer role validation; every repository query is filtered by the caller's workspace
Data & Storage
DatabaseAmazon RDS PostgreSQLManaged relational database with ACID guarantees and Free Tier eligibility (12 months)
File StorageAmazon S3Object storage for exports and file attachments
Infrastructure
Frontend HostingAmazon S3 + CloudFrontStatic site hosting with global CDN, HTTPS via ACM, Free Tier eligible
Backend HostingAWS App RunnerContainer service with auto-scaling, health checks, and zero-downtime deployments
NetworkingVPC + Security GroupsPrivate network for RDS access from App Runner; public CloudFront and App Runner endpoints
IaCTerraformInfrastructure as Code for repeatable AWS resource provisioning
Observability
Application MonitoringSentry (Free Developer Plan)Error tracking, performance monitoring, and release correlation for frontend and backend
Infrastructure MetricsAWS CloudWatch (Free Tier)AWS service metrics, application logs, and infrastructure alarms
CI/CD
PipelineGitHub ActionsAutomated testing, quality gates, and deployment workflows
Container RegistryAmazon ECRDocker image storage for backend deployments

Key Integration Patterns​

Frontend ↔ Backend Communication​

  • Protocol: HTTPS REST APIs with JWT bearer authentication
  • CORS: CloudFront distribution allowlisted for backend access
  • State sync: Frontend Redux state synchronized with backend via RTK Query

Backend ↔ Database​

  • Access pattern: SQLAlchemy repository implementations in infrastructure layer
  • Connection pooling: 5-10 connections for MVP with query timeouts
  • Network security: VPC connector provides private RDS access from App Runner
  • Migration strategy: Backward-compatible versioned migrations for zero-downtime deploys

Authentication Flow​

  1. User submits credentials to /api/v1/auth/login endpoint
  2. Auth module validates credentials and issues JWT token
  3. Frontend stores token and includes in Authorization header
  4. Backend middleware validates JWT on protected routes
  5. Repositories filter every query by the caller's workspace

Observability Strategy​

  • Application layer: Sentry captures errors, performance traces, and release metadata
  • Infrastructure layer: CloudWatch monitors AWS service metrics and application logs
  • Cost target: $0/month using free tiers (Sentry Free Developer + CloudWatch Free Tier)
  • Alert channels: Email notifications for critical errors and infrastructure alarms

Scalability & Performance Strategy​

  • Horizontal scaling: Stateless backend containers on App Runner scale based on traffic
  • Database optimization: Query indexing on project/story surfaces with p95 latency monitoring
  • MVP capacity: Supports NFR-005/NFR-006 targets (3 projects, 30 stories per project) on AWS Free Tier
  • Evolution readiness: Module boundaries enable selective service extraction when growth demands it
  • Performance-first: Optimize queries and payloads before adding infrastructure complexity

Source References​


Last Updated: 2026-08-04