Synaplan
기업을 위한 오픈소스 AI 플랫폼
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기README 전체를 불러오는 중입니다. 아래는 저장된 발췌입니다.
HR salary tool for ~10,000 employees (Incubyte take-home).
All make targets are in the root Makefile. Run them from the repo root (make help lists everything).
Production matches docs/IMPLEMENTATION_PLAN.md §3a: Railway (API + Postgres) and Vercel (React UI). Pushes to the connected Git branch redeploy each service.
Vercel build env: VITE_API_URL=https://testtask-incubyte-production.up.railway.app (no trailing slash; the app calls /api/...).README 전문 보기 ↗HR salary tool for ~10,000 employees (Incubyte take-home).
| Doc | Purpose |
|---|---|
| docs/REQUIREMENTS.md | Scope and success criteria |
| docs/ARTIFACTS.md | Design decisions and AI usage log |
| docs/IMPLEMENTATION_PLAN.md | Phases and stack |
All make targets are in the root Makefile. Run them from the repo root (make help lists everything).
Production matches docs/IMPLEMENTATION_PLAN.md §3a: Railway (API + Postgres) and Vercel (React UI). Pushes to the connected Git branch redeploy each service.
| Link | |
|---|---|
| Deployed app (frontend) | https://test-task-incubyte.vercel.app/ |
| Deployed API (backend apis) | https://testtask-incubyte-production.up.railway.app/docs |
| Layer | Platform | URL |
|---|---|---|
| Frontend (UI) | Vercel | test-task-incubyte.vercel.app |
| Backend (API) | Railway | testtask-incubyte-production.up.railway.app |
| Database | Railway Postgres | Private; API uses referenced DATABASE_URL |
| Endpoint | URL |
|---|---|
| Health | GET /api/health |
| OpenAPI / Swagger | /docs |
Vercel build env: VITE_API_URL=https://testtask-incubyte-production.up.railway.app (no trailing slash; the app calls /api/...).
Railway API env: DATABASE_URL (reference Postgres), CORS_ORIGINS must include https://test-task-incubyte.vercel.app (and localhost origins if you still test locally).
On first deploy with an empty database, the API auto-seeds 10,000 employees (AUTO_SEED_ON_STARTUP=true). Migrations run on container start (backend/scripts/railway-start.sh).
Data model
System architecture (local Docker and production)
Requires Docker and Compose.
cp .env.example .env
make up
| Service | URL |
|---|---|
| UI | http://localhost:5173 |
| API docs | http://127.0.0.1:8000/docs |
Stop: Ctrl+C, then make down (add docker compose down -v to reset DB).
If the UI shows missing @mui/* imports after pulling new frontend deps, recreate the frontend service (docker compose up -d --build --force-recreate frontend) or remove the frontend_node_modules volume once.
Compose variables live in .env (see .env.example).
One-time setup:
cd backend && python3 -m venv .venv && .venv/bin/pip install -e ".[dev]"
cd ../frontend && npm install
cp frontend/.env.example frontend/.env # VITE_API_URL
make env # creates backend/.env
Postgres on localhost:5432 (e.g. make db-up, wait until healthy), then:
make migrate
make run # API :8000 — separate terminal: make ui for :5173
make seed # optional if DB empty; API also auto-seeds on startup
make test
Makefile all make targets (repo root only)
docker-compose.yml db + API + UI
backend/ FastAPI, Alembic, pytest
frontend/ React, Vite
docs/