No description
| .cursor/plans | ||
| .local | ||
| gradle/wrapper | ||
| src/main | ||
| .gitignore | ||
| .scalafmt.conf | ||
| build.gradle.kts | ||
| config.example.yaml | ||
| gradle.properties | ||
| gradlew | ||
| gradlew.bat | ||
| README.md | ||
| settings.gradle.kts | ||
Hetu Scala Backend
使用 Scala 和 Cats Effect 实现的函数式 Web 后端项目。
技术栈
- 构建工具: Gradle
- 语言: Scala 3.3.3
- Web 框架: http4s
- 数据库: PostgreSQL + Doobie
- 函数式编程: Cats Effect 3
- 配置管理: Ciris
- JSON: Circe
- 日志: Log4cats + Logback
快速开始
前置要求
- Java 17+
- Gradle 8.0+ (或使用 Gradle Wrapper)
运行项目
# 使用 Gradle Wrapper(推荐)
./gradlew build
# 运行测试
./gradlew test
# 运行应用(使用默认配置 config.example.yaml)
./gradlew run
# 运行应用(使用自定义配置文件)
CONFIG_PATH=config.test.yaml ./gradlew run
测试配置
项目包含一个测试配置文件 config.test.yaml,配置了开发环境的数据库连接。注意:
- 测试配置文件会被
.gitignore忽略,不会被提交到仓库 - 可以基于
config.example.yaml创建自己的配置文件
项目结构
src/
main/scala/hetu/
config/ # 配置管理
http/ # HTTP 路由和中间件
db/ # 数据库访问层
modules/ # 业务模块
shared/ # 共享代码
test/scala/ # 测试代码
配置
项目使用 YAML 配置文件。请参考 config.example.yaml 创建你的配置文件。
开发
参考 AGENTS.md 了解如何使用 AI 代理进行开发。