Sign inSign up

madelyn2025/system-designer

By madelyn2025

Updated 6 months ago

Image
0

267

madelyn2025/system-designer repository overview

SpringScribe

(Setup and Run Locally)

AI-powered web app that generates architecture diagrams, Java source code, Dockerfile, unit tests and error reports from a form to plain-text Java microservice description.

Stack: REact JS/Vite · FastAPI/LangGraph · MySQL · OpenAI GTP-4.0


Prerequisites
ToolVersion
Docker24+

Quick Start
1 - Create your project folder
mkdir system-designer && cd system-designer
2 - Create docker-compose.yml
version: "3.8"
services:
  app:
    image: madelyn2025/system-designer:latest
    ports:
      - "80:80"
    env_file:
      - .env
    depends_on:
      mysql:
        condition: service_healthy
    restart: unless-stopped

  mysql:
    image: mysql:8.0
    env_file:
      - .env
    volumes:
      - mysql_data:/var/lib/mysql
    healthcheck:
      test: ["CMD", "mysqladmin", "ping", "-h", "localhost",
             "-u", "root", "-p${MYSQL_ROOT_PASSWORD}"]
      interval: 10s
      timeout: 5s
      retries: 5
    restart: unless-stopped

volumes:
  mysql_data:
3 - Create .env
# MySQL
MYSQL_ROOT_PASSWORD=your_strong_root_password
MYSQL_DATABASE=system_designer
MYSQL_USER=appuser
MYSQL_PASSWORD=your_strong_user_password

# App DB connection
DATABASE_URL=mysql+pymysql://appuser:your_strong_user_password@mysql:3306/system_designer

# OpenAI
OPENAI_API_KEY=sk-...

NEVER COMMIT .env TO GIT


ADD .env TO YOUR .gitignore

4 - Run
docker-compose up -d

Open your broswer: http://localhost

5 - Stop
docker-compose down

# to delete all data 
docker-compose down -v

Architecture
madelyn2025/system-designer
 ├── nginx (port 80)
 │     ├── React SPA  →  /usr/share/nginx/html
 │     └── /api/*     →  proxy → FastAPI:8000
 └── FastAPI (internal :8000)
       └── SQLAlchemy → MySQL container

Troubleshooting
SymptomFix
mysql container unhealthyCheck .env passwords match exaclty
App shows blank pageWait ~15s for MySQL healthcheck to pass, then refresh
502 Bad GatewayFastAPI still starting - wait 10s and retry
Port 80 already in useChange "80:80" -> "80:80" and open http://localhost:8080

Updating to Latest Image
dicker-compose pull
docker-compose up -d

Source

Built for the NetCompany Hackathon. Frontend & Backend source available on request.

Tag summary

Content type

Image

Digest

sha256:8a670c367

Size

153.4 MB

Last updated

6 months ago

docker pull madelyn2025/system-designer