Skip to content

Commit 665ca9a

Browse files
committed
Initialize FastAPI migration with modern Python structure
This commit establishes the foundation for migrating Imbi from Tornado to FastAPI with AI integration capabilities. Changes: - Add pyproject.toml with modern Python packaging (Hatchling) - Create src/imbi/ directory structure for consolidated codebase - Add comprehensive PRD documenting FastAPI migration and Claude/MCP integration - Add MIGRATION.md guide for administrators and developers - Update .gitignore for modern Python development Key architectural decisions: - Python 3.12+ exclusively - FastAPI for async web framework - Piccolo ORM for type-safe database operations - Anthropic Claude SDK for conversational AI - Model Context Protocol (MCP) for external AI integration New features planned: - Claude-powered chat interface for natural language queries - MCP server for Claude Desktop and IDE integration - Auto-generated OpenAPI specification - Consolidated repository (eliminate openapi/ and ddl/ submodules) Repository consolidation: - Move api/ submodule code to src/imbi/ - Replace DDL migrations with Piccolo migrations - Remove openapi/ submodule (FastAPI auto-generates) - Remove all GitLab integration code 🤖 Generated with Claude Code
1 parent 33ca217 commit 665ca9a

5 files changed

Lines changed: 1809 additions & 8 deletions

File tree

.gitignore

Lines changed: 90 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,102 @@
1-
__pycache__
2-
.bak
3-
*.egg-info
1+
# Python
2+
__pycache__/
3+
*.py[cod]
4+
*$py.class
5+
*.so
46
*.pyc
5-
*.env
6-
env/
7+
*.egg-info
8+
.Python
79
build/
8-
ddl/build/
10+
develop-eggs/
911
dist/
12+
downloads/
13+
eggs/
14+
.eggs/
15+
lib/
16+
lib64/
17+
parts/
18+
sdist/
19+
var/
20+
wheels/
21+
MANIFEST
22+
23+
# Virtual environments
24+
env/
25+
.venv/
26+
venv/
27+
ENV/
28+
29+
# Testing
30+
.pytest_cache/
31+
.coverage
32+
.coverage.*
33+
htmlcov/
34+
.tox/
35+
.nox/
36+
coverage.xml
37+
*.cover
38+
39+
# IDEs
40+
.vscode/
41+
.idea/
42+
*.swp
43+
*.swo
44+
*~
45+
.DS_Store
46+
.bak
47+
48+
# Environment files
49+
*.env
50+
.env
51+
.env.local
52+
.env.*.local
53+
54+
# Logs
55+
*.log
56+
logs/
57+
58+
# Database
59+
*.db
60+
*.sqlite
61+
*.sqlite3
1062
ddl.sql
63+
scaffolding/postgres/metadata.sql
64+
65+
# Old structure (will be removed)
66+
ddl/build/
1167
imbi/static/fonts/
1268
imbi/static/*.js
1369
imbi/static/*.js.map
1470
openapi/node_modules/
15-
scaffolding/postgres/metadata.sql
71+
72+
# UI (submodule)
1673
ui/.eslintcache
1774
ui/coverage/
1875
ui/node_modules/
1976
ui/yarn-error.log
20-
vendor
77+
ui/dist/
78+
ui/.cache/
79+
80+
# Build artifacts
81+
*.whl
82+
*.tar.gz
83+
84+
# Piccolo
85+
piccolo_migrations/__pycache__/
86+
87+
# MCP
88+
mcp_config.json
89+
90+
# Redis dumps
91+
dump.rdb
92+
93+
# Temporary files
94+
*.tmp
95+
.temp/
96+
97+
# Documentation builds
98+
docs/_build/
99+
site/
100+
101+
# Vendor
102+
vendor/

0 commit comments

Comments
 (0)