Synaplan
기업을 위한 오픈소스 AI 플랫폼
저장소 정보는 아직 수집하지 않았습니다.
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
메이커가 쓴 소개는 위의 한 줄이 전부입니다. 더 자세한 내용은 저장소 README에서 읽을 수 있습니다. 저장소 README ↗
README 전체를 불러오는 중입니다.
README 전문 보기 ↗Multi-tenant gym and fitness management platform. Many gyms, each with many locations, under one platform operator.
| Folder | What it is |
|---|---|
backend/ | Java 21 + Spring Boot 4 modular monolith, PostgreSQL + RLS |
frontend/ | Next.js — public SEO zone and authenticated admin console |
app/ | React Native + Expo — all five roles, one application |
docs/ | SRS, architecture, engineering standards, data model |
Read these before changing anything structural. They are the authority; when code and document disagree, one of them is a bug.
| Document | Fixes |
|---|---|
docs/LIMITBEYOND_SRS_v1.1.pdf | What the system must do — ~200 numbered requirements |
docs/LIMITBEYOND_ARCH_v1.0.pdf | Technology decisions, ADR-01 to ADR-15 |
docs/LIMITBEYOND_STANDARDS_v1.0.pdf | How code is written, reviewed and enforced |
docs/LIMITBEYOND_DATAMODEL_v1.0.pdf | 74 entities, every relationship and constraint |
CLAUDE.md is the condensed ruleset for AI coding assistants.
cd backend
docker compose up -d # PostGIS-enabled Postgres on :5432
cp .env.example .env
./mvnw spring-boot:run # http://localhost:8080
Two database roles, and the distinction matters: lb_migrator owns the schema
and runs Flyway; lb_app owns nothing and serves requests. A table owner
bypasses Row-Level Security, so connecting as the owner would silently disable
every isolation guarantee in the platform.
cd frontend
cp .env.example .env.local
npm run dev # http://localhost:3000
Public routes are statically generated with ISR and carry full metadata plus
JSON-LD built from database content. /console/* is authenticated,
client-rendered and noindex.
cd app
cp .env.example .env
npx expo start
On a physical device set EXPO_PUBLIC_API_BASE_URL to your machine's LAN IP —
localhost resolves to the phone.
These fail silently: they compile, pass ordinary tests, and show no symptom until it matters.
SET LOCAL, never bare SET, for RLS contextpublic_id, never a full URLFull reasoning in docs/LIMITBEYOND_STANDARDS_v1.0.pdf §4.
Scaffolded, compiling, and typechecking clean. Phase 1 implementation has not
started — see docs/LIMITBEYOND_ARCH_v1.0.pdf §14 for the build sequence.