5128e1551c
Backend (backend/):
- FastAPI app with layered app/{api,core,crud,db,models,schemas} structure
- TiDB connection via SQLAlchemy. The URL is built with URL.create rather
than string formatting: the password contains '@', which would otherwise be
parsed as the user/host separator and silently truncate the credential.
- Alembic environment wired to Base.metadata and the app settings, so
backend/.env stays the single source of truth for credentials
- /api/health endpoint reporting database reachability
- models/ and crud/ are intentionally empty: no model classes are defined and
no tables are created, at import time or otherwise
Frontend (frontend/):
- Vue 3 + Vite + TypeScript scaffold (create-vue, --bare)
- axios instance with a normalized error shape
- vue-router with a home route and a catch-all 404
- pinia + pinia-plugin-persistedstate; the app store persists selected keys
- Element Plus with its icons registered globally
- dev proxy forwards /api to the FastAPI service on port 8000
The database paper_doc was created in TiDB out of band; no table exists yet.
28 lines
964 B
JSON
28 lines
964 B
JSON
// TSConfig for modules that run in Node.js environment via either transpilation or type-stripping.
|
|
{
|
|
"extends": "@tsconfig/node24/tsconfig.json",
|
|
"include": [
|
|
"vite.config.*",
|
|
"vitest.config.*",
|
|
"cypress.config.*",
|
|
"playwright.config.*",
|
|
"eslint.config.*"
|
|
],
|
|
"compilerOptions": {
|
|
// Most tools use transpilation instead of Node.js's native type-stripping.
|
|
// Bundler mode provides a smoother developer experience.
|
|
"module": "preserve",
|
|
"moduleResolution": "bundler",
|
|
|
|
// Include Node.js types and avoid accidentally including other `@types/*` packages.
|
|
"types": ["node"],
|
|
|
|
// Disable emitting output during `vue-tsc --build`, which is used for type-checking only.
|
|
"noEmit": true,
|
|
|
|
// `vue-tsc --build` produces a .tsbuildinfo file for incremental type-checking.
|
|
// Specified here to keep it out of the root directory.
|
|
"tsBuildInfoFile": "./node_modules/.tmp/tsconfig.node.tsbuildinfo"
|
|
}
|
|
}
|