Skip to content

firas1438/Stackr

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Stackr

An AI-powered tool that helps developers understand how their tech stack fits together. Describe your project, select technologies layer by layer, and get a clear architecture explanation, a visual diagram, and alternative stack suggestions tailored to your use case.

Features

  • Interactive stack picker: categories and technologies loaded from PostgreSQL.
  • AI architecture generation: powered by Google Gemini (gemini-2.5-flash).
  • Visual diagrams: auto-generated Mermaid flowcharts showing how every component connects.
  • Alternative stack suggestions: AI recommends different approaches when a better fit exists.
  • History feed: browse recent architectures generated on the platform.

Tech Stack

Layer Technology
Frontend React, Vite, TanStack Query, Tailwind CSS
Backend NestJS, Prisma ORM
Database PostgreSQL
Containerization Docker, Docker Compose
AI Google Gemini via @google/genai
IaC Terraform
Configuration Management Ansible
Cloud Provider AWS (EC2, RDS, ALB, ASG)

Note: AWS infrastructure was deployed using an AWS Academy Sandbox Environment.

Getting Started

- Local Development

Run the full stack locally with Docker Compose:

docker compose up -d

This starts the frontend, backend, and PostgreSQL database as three services. Visit http://localhost:5173.

- AWS Deployment (Terraform + Ansible)

Infrastructure is provisioned by Terraform and server configuration is handled automatically by Ansible on boot.

All infrastructure code lives under infrastructure/:

  • infrastructure/terraform/ - AWS resource provisioning (VPC, EC2, RDS, ALB, ASG).
  • infrastructure/ansible/ - Server configuration playbooks (Node.js, Nginx, systemd, app build).
cd infrastructure/terraform

terraform init
terraform plan
terraform apply

To destroy the infra:

terraform destroy

Make sure infrastructure/terraform/terraform.tfvars is filled in using terraform.tfvars.example as a reference before running.

Once Terraform provisions the EC2 instances, each instance automatically clones the repository and runs its Ansible playbook locally on boot - no manual configuration needed.

API routes

Method Route Description
GET /health Health check
GET /catalog Categories + technologies
GET /favicon?domain= Favicon proxy for logos
POST /stacks Generate architecture (idea + selections)
GET /stacks History list
GET /stacks/:id Single stack detail

Demo

StackrDemo

About

AI tool that generates system architecture from a selected tech stack with visual diagrams and alternative stack recommendations.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors