Scallpy(beta):像 Vite 一样快速搭建 FastAPI 项目 – 秒级完成

发布: (2025年12月14日 GMT+8 09:49)
4 min read
原文: Dev.to

Source: Dev.to

🤯 生产力困境:慢还是臃肿?

FastAPI 速度极快,但它的脚手架生态并不总是如此。

如果你和大多数人一样,在启动项目时一定经历过以下两条痛苦路径之一:

  • 手动路线(慢速路径) 🐌 – 搭建文件夹结构、测试、初始数据库连接、Pydantic 和环境变量,这些工作会耗费本该用于业务逻辑的数小时。
  • 模板路线(臃肿) 🐘 – 使用沉重的模板会引入不必要的复杂度和你根本不会用到的功能,导致代码臃肿,最终还得把它们删掉。

真正的问题在于:我们需要现代 CLI 框架的启动速度,却又想保留 FastAPI 的自由与极简。

💡 区别:交互式而非强加

这就是改变游戏规则的地方。我们没有提供“一揽子”模板,而是构建了 Scallpy —— 一个只给你所请求内容的 CLI 工具。它交互式、灵活,并保持极简。

方面其他工具Scallpy
依赖安装许多你可能不需要的依赖由你决定安装什么(仅提供 ORM 和数据库选项)
安装方式需要较长的安装过程简单 pip install scallpy==0.1.2,然后运行 scallpy create
项目结构固定结构可在干净或结构化项目之间选择(基本结构)

🛠 内容是什么?掌控权在你手中

最终得到的是符合 Python 社区标准的干净结构,注重可读性。

干净项目

myproject/
├── src/
│   └── myproject/
│       ├── __init__.py
│       └── main.py
├── tests/
│   └── test_basic.py
├── .gitignore
├── pyproject.toml
└── README.md

结构化项目

myproject/
├── src/
│   └── myproject/
│       ├── __init__.py
│       ├── api/
│       │   ├── __init__.py
│       │   └── routes.py
│       ├── core/
│       │   ├── __init__.py
│       │   └── config.py
│       ├── main.py
│       └── models/
│           └── __init__.py
├── tests/
│   └── test_basic.py
├── .env
├── .gitignore
├── pyproject.toml
├── README.md
└── requirements.txt

添加 --use-db 以获得数据库支持,或 --use-orm 以获得 ORM 模型。这样在大型应用中更易扩展。

🧠 智能设计:注释掉的数据库

为什么数据库代码被注释掉?为了保持灵活性。并非每个项目在第一天就需要数据库,所以导入语句和启动事件被注释。准备好添加数据库支持时,只需取消注释——如此简单。这避免了强制引入不必要的依赖,同时保持模板的干净与极简。

⚠️ Beta 状态

Scallpy 目前仍处于 beta 阶段。工具尚未完全成熟,可能会出现小 bug 或意外行为。如果发现问题,请在 GitHub 上提交报告——我们会快速修复。你的反馈帮助我们改进并实现稳定发布!

🤝 试用并贡献

准备好尝试 Scallpy 了吗?使用以下命令安装:

pip install scallpy

几秒钟即可创建你的第一个项目:

scallpy create

如果喜欢,请在 GitHub 上给它点星。通过报告问题、提出功能建议或提交 Pull Request 来贡献代码。

Back to Blog

相关文章

阅读更多 »