refactor: 标准化项目结构 frontend/ + backend/ + SQLite + run.sh

- 目录重构: app/ -> frontend/,与 backend/ 并列
- 数据库: 默认 SQLite(零配置),修复 DSN() bug
- run.sh: 一键启动前后端,支持 start/stop/restart/status
- Makefile: install/dev/build/lint/clean 快捷命令
- vite.config.ts: 配置 dev server 端口 5173 + API 代理到 8080
- config.yaml: SQLite 默认配置,开箱即用
- docs/: 完整开发文档(项目结构/API/数据库/规范/部署)
- 修复: GORM foreign key 关联声明
- 修复: go get gorm.io/driver/sqlite 依赖
This commit is contained in:
attacker committed 2026-06-13 23:34:23 +08:00
1 parent 7d6674bddd
commit 97c4207ff8
132 files changed
+1572 -34

No files matched your search

@@ -0,0 +1,31 @@
import { Outlet } from 'react-router-dom';
import { cn } from '@/lib/utils';
import { useThemeStore } from '@/store';
import { Sidebar } from './Sidebar';
import { Header } from './Header';
export function MainLayout() {
const { sidebarCollapsed } = useThemeStore();
return (
<div className="min-h-screen bg-slate-950">
<Sidebar />
<div
className="transition-all duration-300"
style={{ marginLeft: sidebarCollapsed ? '4rem' : '16rem' }}
>
<Header />
<main
className={cn(
'pt-14 transition-all duration-300',
'min-h-[calc(100vh-3.5rem)]'
)}
>
<div className="p-6">
<Outlet />
</div>
</main>
</div>
</div>
);
}