{"id":13820250,"url":"https://github.com/eryajf/xirang","last_synced_at":"2025-08-21T15:31:27.927Z","repository":{"id":50332012,"uuid":"439009609","full_name":"eryajf/xirang","owner":"eryajf","description":"简单好用，直接上手的go-web框架","archived":false,"fork":false,"pushed_at":"2024-06-17T00:41:59.000Z","size":343,"stargazers_count":40,"open_issues_count":0,"forks_count":7,"subscribers_count":5,"default_branch":"main","last_synced_at":"2024-12-10T10:03:42.090Z","etag":null,"topics":["eryajf","gin","gin-gorm","gin-vue-admin","go-admin","go-web","go-web-framework","golang","gorm-sqlite-driver","sqlite3"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/eryajf.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-12-16T14:01:01.000Z","updated_at":"2024-12-10T04:10:51.000Z","dependencies_parsed_at":"2023-12-23T10:20:01.736Z","dependency_job_id":"8be7eebb-1ce0-4d60-b99f-941ec09f32c7","html_url":"https://github.com/eryajf/xirang","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eryajf%2Fxirang","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eryajf%2Fxirang/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eryajf%2Fxirang/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eryajf%2Fxirang/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/eryajf","download_url":"https://codeload.github.com/eryajf/xirang/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":230520391,"owners_count":18238948,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["eryajf","gin","gin-gorm","gin-vue-admin","go-admin","go-web","go-web-framework","golang","gorm-sqlite-driver","sqlite3"],"created_at":"2024-08-04T08:01:00.153Z","updated_at":"2024-12-20T01:14:40.699Z","avatar_url":"https://github.com/eryajf.png","language":"Go","funding_links":[],"categories":["Go"],"sub_categories":[],"readme":"\u003cdiv align=\"center\"\u003e\n\n\u003ch1 align=\"center\"\u003eXiRang\u003c/h1\u003e\n\n[![Auth](https://img.shields.io/badge/Auth-eryajf-ff69b4)](https://github.com/eryajf)\n[![Go Version](https://img.shields.io/github/go-mod/go-version/eryajf/xirang)](https://github.com/eryajf/xirang)\n[![Gin Version](https://img.shields.io/badge/Gin-1.6.3-brightgreen)](https://github.com/eryajf/xirang)\n[![Gorm Version](https://img.shields.io/badge/Gorm-1.24.5-brightgreen)](https://github.com/eryajf/xirang)\n[![GitHub Issues](https://img.shields.io/github/issues/eryajf/xirang.svg)](https://github.com/eryajf/xirang/issues)\n[![GitHub Pull Requests](https://img.shields.io/github/issues-pr/eryajf/xirang)](https://github.com/eryajf/xirang/pulls)\n[![GitHub Pull Requests](https://img.shields.io/github/stars/eryajf/xirang)](https://github.com/eryajf/xirang/stargazers)\n[![HitCount](https://views.whatilearened.today/views/github/eryajf/xirang.svg)](https://github.com/eryajf/xirang)\n[![GitHub license](https://img.shields.io/github/license/eryajf/xirang)](https://github.com/eryajf/xirang/blob/main/LICENSE)\n\n\u003cp\u003e 🐉 简单好用，不缠不绕，直接上手的go-web框架 \u003c/p\u003e\n\n\u003cimg src=\"https://cdn.jsdelivr.net/gh/eryajf/tu@main/img/image_20240420_214408.gif\" width=\"800\"  height=\"3\"\u003e\n\u003c/div\u003e\u003cbr\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"\" rel=\"noopener\"\u003e\n \u003cimg src=\"https://cdn.jsdelivr.net/gh/eryajf/tu/img/image_20220826_101156.png\" alt=\"Project logo\"\u003e\u003c/a\u003e\n\u003c/p\u003e\n\n\u003e `xirang`，亦即息壤，大概在我读小学时，父亲从外地回来，并带回来几本读物，其中一本是迅哥儿小时候最爱读的《山海经》，也是在那时，我第一次认识这个词语。\n\u003e\n\u003e 维基百科对其解释是：息壤是中国古代传说中的一种神物，所谓“息壤”就是自己可以自动生长的土壤。用“息壤”修筑的堤坝，洪水长一米，堤坝也自动长一米。\n\u003e\n\u003e 我将项目命名为`xirang`，亦是希望在自己不间断地学习积累之中，项目也能够越发成长，并有其丰富的力量。\n\n## 🥸 项目介绍\n\n`xirang` 是一个非常简单的 `gin+gorm` 框架的基础架构，你只需要修改简单的代码，即可开始上手编写你的接口。\n\n只需要根据情况修改配置`config.yml`，然后配置里边的数据库配置信息，即可开始开发。\n\n数据库支持 MySQL 与 sqlite3(无 CGO 依赖)，如果你的系统仅为运维内部一个小系统，则推荐你使用 sqlite3。数据表会自动映射并创建。\n\n## 👨‍💻 项目地址\n\n| 分类 |                 GitHub                  |                    Gitee                     |\n| :--: | :-------------------------------------: | :------------------------------------------: |\n| 后端 |  https://github.com/eryajf/xirang.git   |  https://gitee.com/eryajf-world/xirang.git   |\n| 前端 | https://github.com/eryajf/xirang-ui.git | https://gitee.com/eryajf-world/xirang-ui.git |\n\n## 📖 目录结构\n\n```\nxirang\n├── config----------------配置文件读取\n├── controller------------控制层\n├── logic-----------------逻辑层\n├── middleware------------中间件\n├── model-----------------对象定义\n├── public----------------一些公共组件与工具\n├── routers---------------路由\n├── service---------------服务层\n├── test------------------一些测试\n├── config.yml------------配置文件\n└── main.go---------------程序入口\n```\n\n## 👀 功能概览\n\n|  ![登录页](https://cdn.jsdelivr.net/gh/eryajf/tu/img/image_20220830_234917.png)  | ![首页](https://cdn.jsdelivr.net/gh/eryajf/tu/img/image_20220830_233946.png)     |\n| :------------------------------------------------------------------------------: | -------------------------------------------------------------------------------- |\n| ![用户管理](https://cdn.jsdelivr.net/gh/eryajf/tu/img/image_20220830_234015.png) | ![分组管理](https://cdn.jsdelivr.net/gh/eryajf/tu/img/image_20220830_234043.png) |\n| ![角色管理](https://cdn.jsdelivr.net/gh/eryajf/tu/img/image_20220830_234122.png) | ![菜单管理](https://cdn.jsdelivr.net/gh/eryajf/tu/img/image_20220830_234153.png) |\n| ![接口管理](https://cdn.jsdelivr.net/gh/eryajf/tu/img/image_20220830_234218.png) | ![操作日志](https://cdn.jsdelivr.net/gh/eryajf/tu/img/image_20220830_234245.png) |\n\n## 🚀 快速开始\n\nxirang 项目的基础依赖项只有 MySQL，本地准备好这个服务之后，就可以启动项目，进行调试。\n\n`注意：xirang还支持sqlite3(无CGO依赖)，默认配置文件即指向sqlite3，你可以不准备任何依赖，直接运行项目。`\n\n### 拉取代码\n\n```sh\n# 后端代码\n$ git clone https://github.com/eryajf/xirang.git\n\n# 前端代码\n$ git clone https://github.com/eryajf/xirang-ui.git\n```\n\n### 更改配置\n\n```sh\n# 修改后端配置\n$ cd xirang\n# 文件路径 config.yml, 根据自己本地的情况，调整数据库等配置信息。\n$ vim config.yml\n```\n\n### 启动服务\n\n```sh\n# 启动后端\n$ cd xirang\n$ go mod tidy\n$ make run\n\n# 启动前端\n$ cd xirang-ui\n$ git config --global url.\"https://\".insteadOf git://\n$ npm install --registry=http://registry.npmmirror.com\n$ yarn dev\n```\n\n本地访问：http://localhost:8090，用户名/密码：admin/123456\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Feryajf%2Fxirang","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Feryajf%2Fxirang","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Feryajf%2Fxirang/lists"}