跳到主要内容

Todo 应用

Github StackBlitz

image

这个 Todo 应用是一个使用 Sveltekit、Tailwind CSS、Fiber、Entgo 和 SQLite 构建的全栈项目。它展示了如何构建一个全栈应用的单体架构。

运行项目

要运行项目,请按照以下步骤操作

  1. 执行以下命令来运行构建和运行应用所需的所有命令
go run ./bin all
  1. 构建过程完成后,你可以通过运行以下命令启动应用
./app

可用命令

以下命令可用于管理项目

命令描述
go-run运行 Golang 项目。
go-build构建 Golang 项目。
go-test运行 Golang 项目的测试。
svelte-run运行 SvelteKit 项目。
svelte-build构建 SvelteKit 项目。
generate-ent生成实体文件。
all运行所有命令 (generate-ent, svelte-build, go-test, go-build)。

使用方法

要使用此应用,请运行以下命令

go run ./bin <command>

API 路由

Go Fiber 应用提供以下 API 路由

方法端点处理函数描述
GET/api/v1/todo/listtodoHandler.GetAllTodos获取所有待办事项列表
GET/api/v1/todo/get/:idtodoHandler.GetTodoByID通过 ID 获取特定的待办事项
POST/api/v1/todo/createtodoHandler.CreateTodo创建一个新的待办事项
PUT/api/v1/todo/update/:idtodoHandler.UpdateTodoByID通过 ID 更新现有的待办事项
DELETE/api/v1/todo/delete/:idtodoHandler.DeleteTodoByID通过 ID 删除待办事项

Go 依赖项

  • Go Modules: Go 内置的包管理器,用于管理 Go 项目的依赖项。
  • Entgo: 一个 Golang 对象关系映射 (ORM) 工具,用于定义和生成数据库模式。
  • Fiber: 一个快速、极简的 Golang Web 框架。
  • Sqlite: 一个小型、轻量级的嵌入式 SQL 数据库引擎。

Npm 依赖项

  • SvelteKit: 一个用于构建现代 Web 应用的 JavaScript 框架。
  • Tailwind CSS: 一个快速且可定制的 CSS 样式库。可在 SvelteKit 项目中使用。

作者: @ugurkorkmaz