Skip to content

maomullick/BetterStart

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

177 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

BetterStart

BetterStart is a lightweight startup management system designed specifically for small startups.
It is offered as a SaaS product and provides a set of tools to streamline core startup operations.

✨ Key Features

  1. Project Management – Manage projects, tasks, and workflows with ease.
  2. HR Management with AI-Driven CV Evaluation – Automate CV screening and improve hiring efficiency.
  3. Legal GPT – AI-powered generation of legal documents contextualized for Bangladeshi laws.

🏗 Architecture

BetterStart is built on a microservices architecture for scalability and maintainability.

System Architecture Diagram

🚀 Installation

  1. Provision Infrastructure

    • Create a private AWS S3 bucket with proper ACL, CORS policy, and encryption using the AWS Management Console.
      OR
    • Use Terraform for automated provisioning (recommended):
      cd terraform/envs/dev
      terraform init
      terraform plan
      terraform apply --auto-approve

    This will automatically configure:
    ✅ S3 bucket with CORS, Lifecycle Policies, and SSE-KMS encryption.

  2. Configure Environment Variables

    • Navigate to the project root.
    • For each service (backend, frontend, worker), copy .env.example to .env and update values.
    • Ensure S3 bucket name is correctly set in the backend .env file.
  3. Run Services with Docker

    docker compose up --build -d

    This starts:
    Backend API
    Frontend Web App
    RabbitMQ Message Broker
    RabbitMQ Worker

  4. Access URLs

    • Frontend: http://localhost:3000
    • Backend API Docs: http://localhost:8000/docs
    • RabbitMQ Management UI: http://localhost:15672

💪 Strengths

  • Infrastructure as Code (IaC) with Terraform

    • Automates provisioning of S3 bucket policies, CORS rules, Lifecycle management, and SSE-KMS encryption with key rotation.
    • Improves consistency, repeatability, and security of infrastructure.
  • Microservices Architecture

    • Highly scalable, modular, and maintainable design.
    • Services (Backend, Frontend, Workers, Messaging) are decoupled, enabling independent deployment and scaling.
  • Secure by Design

    • Enforces S3 bucket encryption using AWS KMS.
    • Private bucket with restricted ACL for better data protection.
  • Cloud-Native & Containerized

    • Uses Docker for reproducible environments across development and production.
    • Supports horizontal scaling and easy orchestration.

⚙️ Full Deployment (Coming Soon)

We are working on a complete deployment setup using Terraform and Ansible to automate the entire infrastructure and application deployment process.

This will include:

  • Provisioning all required cloud resources.
  • Configuring services and dependencies automatically.
  • End-to-end deployment of frontend, backend, and workers.

About

A lightweight project management tool for early-stage startups, featuring task tracking, collaborative planning, and HR management.

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages