SudoSumo Infrastructure Technical Specifications
Sudosumo architecture diagram
1. Frontend
Explore Frontend Repo- FrameworkNext.js (React.js-based with TypeScript).
- ConceptionFigma.
- StylingTailwindCSS.
- Rendering StrategyServer-Side Rendering (SSR) for improved security, efficient caching, and optimized SEO.
- AuthenticationOAuth2 via Auth.js with Google as the provider.
- DeploymentDeployed using a serverless provider Netlify for automatic scaling and cost efficiency.
- SecurityTLS configuration for secure communication between frontend and backend.
2. Backend
Explore Backend Repo- TechnologyJava Spring Boot (REST API).
- Architecture
- Domain-Driven Design (DDD) for improved modularity, separation of concerns, and ease of maintenance.
- Built with Jakarta EE for enterprise-level scalability and robustness.
- SecurityOAuth2 with Google as the identity provider; uses JWT tokens for secure session management.
- Database InteractionREST API for frontend communication; additional cron jobs scheduled for periodic database updates.
- HostingHosted on an AWS EC2 instance using Docker container to add isolation and consistency across environments, ensuring dedicated resources for backend operations.
- Load BalancerAWS Elastic Load Balancer (ELB) to distribute traffic across multiple backend instances for high availability, serving as the front interface to the internet.
- TLS ConfigurationFor secure HTTP communication between frontend and backend.
- Data Update MechanismScheduled cron jobs to reset each user's life to 5 at midnight, ensuring daily updates to the database.
3. Database
- Database TechnologyPostgreSQL.
- ManagementHosted on an AWS RDS instance.
4. Security
- SSL/TLSSSL/TLS certificates for end-to-end encryption.
- AWS Security GroupEnsures that no instance is unnecessarily exposed to the internet by properly configuring security group rules.