소형 건설업체(100억 미만)를 위한 AI 기반 토목공사 통합관리 플랫폼 Backend (FastAPI): - SQLAlchemy 모델 13개 (users, projects, wbs, tasks, daily_reports, reports, inspections, quality, weather, permits, rag, settings) - API 라우터 11개 (auth, projects, tasks, daily_reports, reports, inspections, weather, rag, kakao, permits, settings) - Services: Claude AI 래퍼, CPM Gantt 계산, 기상청 API, RAG(pgvector), 카카오 Skill API - Alembic 마이그레이션 (pgvector 포함) - pytest 테스트 (CPM, 날씨 경보) Frontend (Next.js 15): - 11개 페이지 (대시보드, 프로젝트, Gantt, 일보, 검측, 품질, 날씨, 인허가, RAG, 설정) - TanStack Query + Zustand + Tailwind CSS 인프라: - Docker Compose (PostgreSQL pgvector + backend + frontend) - 한국어 README 및 설치 가이드 Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
56 lines
1.1 KiB
TOML
56 lines
1.1 KiB
TOML
[build-system]
|
|
requires = ["hatchling"]
|
|
build-backend = "hatchling.build"
|
|
|
|
[project]
|
|
name = "conai-backend"
|
|
version = "1.0.0"
|
|
description = "CONAI - Construction AI Platform Backend"
|
|
requires-python = ">=3.11"
|
|
dependencies = [
|
|
# Web framework
|
|
"fastapi>=0.115.0",
|
|
"uvicorn[standard]>=0.32.0",
|
|
# Database
|
|
"sqlalchemy>=2.0.36",
|
|
"alembic>=1.14.0",
|
|
"asyncpg>=0.30.0",
|
|
"psycopg2-binary>=2.9.10",
|
|
# Supabase
|
|
"supabase>=2.10.0",
|
|
# Auth
|
|
"python-jose[cryptography]>=3.3.0",
|
|
"passlib[bcrypt]>=1.7.4",
|
|
"python-multipart>=0.0.20",
|
|
# AI
|
|
"anthropic>=0.40.0",
|
|
# Config
|
|
"pydantic-settings>=2.6.0",
|
|
"pydantic>=2.10.0",
|
|
# HTTP
|
|
"httpx>=0.28.0",
|
|
# PDF
|
|
"weasyprint>=64.0",
|
|
"jinja2>=3.1.4",
|
|
# Excel
|
|
"openpyxl>=3.1.5",
|
|
# Scheduling
|
|
"apscheduler>=3.10.4",
|
|
# Storage
|
|
"boto3>=1.35.0",
|
|
# Utilities
|
|
"python-dateutil>=2.9.0",
|
|
"pytz>=2024.2",
|
|
]
|
|
|
|
[project.optional-dependencies]
|
|
dev = [
|
|
"pytest>=8.3.0",
|
|
"pytest-asyncio>=0.24.0",
|
|
"httpx>=0.28.0",
|
|
"pytest-cov>=6.0.0",
|
|
]
|
|
|
|
[tool.hatch.build.targets.wheel]
|
|
packages = ["app"]
|