{"id":14637805,"url":"https://github.com/ch3nnn/webstack-go","last_synced_at":"2025-04-08T11:11:28.900Z","repository":{"id":153689113,"uuid":"489036314","full_name":"ch3nnn/webstack-go","owner":"ch3nnn","description":"基于 Go 开源的网址导航网站，具备完整的前后台。您可以拿来制作自己平日收藏的网址导航。","archived":false,"fork":false,"pushed_at":"2025-03-29T17:19:34.000Z","size":15255,"stargazers_count":278,"open_issues_count":8,"forks_count":78,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-04-01T10:07:11.112Z","etag":null,"topics":["bookmark","gin","go","navigation","website"],"latest_commit_sha":null,"homepage":"http://47.94.59.82:9999/","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/ch3nnn.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":"2022-05-05T15:53:22.000Z","updated_at":"2025-04-01T06:28:06.000Z","dependencies_parsed_at":null,"dependency_job_id":"cb385d4e-c009-42ba-aeb9-a8cd7bf2c01e","html_url":"https://github.com/ch3nnn/webstack-go","commit_stats":{"total_commits":70,"total_committers":4,"mean_commits":17.5,"dds":"0.34285714285714286","last_synced_commit":"0887753bda0aaa9dd9e6a62ee306a4bdb52254ff"},"previous_names":[],"tags_count":10,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ch3nnn%2Fwebstack-go","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ch3nnn%2Fwebstack-go/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ch3nnn%2Fwebstack-go/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ch3nnn%2Fwebstack-go/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ch3nnn","download_url":"https://codeload.github.com/ch3nnn/webstack-go/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247829511,"owners_count":21002997,"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":["bookmark","gin","go","navigation","website"],"created_at":"2024-09-10T02:01:16.469Z","updated_at":"2025-04-08T11:11:28.880Z","avatar_url":"https://github.com/ch3nnn.png","language":"Go","readme":"# webstack-go 网址导航后台系统\n\n基于 Golang 开源的网址导航网站项目，具备完整的前后台，您可以拿来制作自己平日收藏的网址导航。\n\u003e v1: 使用 mysql 和 redis 组件, 丰富的后端功能。 v2: 简化版无需额外组件, 使用轻量级 sqlite 数据库。\n\n- 前端模板: [WebStackPage](https://github.com/WebStackPage/WebStackPage.github.io)、[光年后台模板](https://gitee.com/yinqi/Light-Year-Admin-Using-Iframe-v4)\n- 后端框架: 基于 [go-nunu](https://github.com/go-nunu/nunu) 脚手架搭建\n\n功能：\n- [x] 新增 webstack - 导航首页\n- [x] 新增 仪表盘 (SSE）\n- [x] 新增 网站管理 - 网站分类\n- [x] 新增 网站管理 - 网站列表\n- [x] 新增 系统管理 - 自定义导航基本信息 (Logo、favicon、备案信息等）\n- [x] 新增 支持批量添加 (自动获取标题、Logo、网站描述）\n- [x] 新增 一键同步、导出功能\n- [x] 新增 由 [gorm-gen](https://github.com/go-gorm/gen) 代码生成提供支持的友好且更安全的 GORM\n- [x] 杂项 与仓库保持同步 [Docker Hub](https://hub.docker.com/r/ch3nnn/webstack-go/tags)\n\n## 快速开始\n\n### 一、运行环境\n\n- Golang 1.22\n- SQLite\n\n### 二、启动服务\n\n**1、二进制文件**\n\n你可以直接从[ Releases ](https://github.com/ch3nnn/webstack-go/releases)下载预先编译好的二进制文件，解压后执行:\n\n```bash\n./webstack-go -conf config/prod.yml \n```\n\n\u003e [!NOTE]\n\u003e MacOS 在执行二进制文件时会提示：未打开“webstack-go”，因为 Apple 无法检查其是否包含恶意软件。\n\u003e \n\u003e 可在“系统设置 \u003e 隐私与安全性 \u003e 安全性”中点击“仍然允许”，然后再次尝试执行二进制文件。\n\n\n**2、源码运行服务 (需要 Golang 环境)**\n1. 目录下执行 `go mod tidy` 拉取项目依赖库\n2. 执行 `go build -o ./bin/server ./cmd/server` 编译项目，生成可执行文件 server \n3. 编译完执行 `./bin/server -conf=config/prod.yml` 首次启动程序之后，会生成 SQLite 数据库，并自动创建表结构\n\n\n**3、Docker 运行服务**\n#### 下载镜像\n1. docker run 运行\n```bash\ndocker run -i -t --restart always -p 8000:8000 --name webstack-go -v ./data/storage:/data/app/storage ch3nnn/webstack-go:latest\n```\n\n2. docker compose (推荐)\n```yaml\nservices:\n  webstack-go:\n    stdin_open: true\n    tty: true\n    restart: always\n    ports:\n      - 8000:8000\n    container_name: webstack-go\n    image: ch3nnn/webstack-go:latest\n    volumes:\n      - ./data/storage:/data/app/storage\n```\n\n#### 本地编译\n1. 目录下执行 `make docker` 等待启动\n   ```shell\n   CONTAINER ID   IMAGE            COMMAND      CREATED         STATUS         PORTS                    NAMES\n   5cb641ff3950 webstack-go:v2   \"./server\"   5 seconds ago Up 5 seconds 0.0.0.0:8000-\u003e8000/tcp webstack-go\n   ```\n2. docker container 正常运行后, 在浏览器中打开界面，链接地址：http://127.0.0.1:8000\n\n## 效果图\n\n\u003e **首页**\n\n![](.github/image/index.png)\n\n\u003e **网站分类**\n\n![](.github/image/category.png)\n\n\u003e **新增网站**\n\n![](.github/image/add_site.png)\n\n\u003e **网站信息**\n\n![](.github/image/site.png)\n\n\u003e **网站配置**\n\n![](.github/image/config.png)\n\n## Star History\n\n[![Star History Chart](https://api.star-history.com/svg?repos=ch3nnn/webstack-go\u0026type=Date)](https://star-history.com/#ch3nnn/webstack-go\u0026Date)\n","funding_links":[],"categories":["Go"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fch3nnn%2Fwebstack-go","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fch3nnn%2Fwebstack-go","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fch3nnn%2Fwebstack-go/lists"}