https://github.com/ch3nnn/webstack-go
基于 Go 开源的网址导航网站,具备完整的前后台。您可以拿来制作自己平日收藏的网址导航。
https://github.com/ch3nnn/webstack-go
bookmark gin go navigation website
Last synced: 27 days ago
JSON representation
基于 Go 开源的网址导航网站,具备完整的前后台。您可以拿来制作自己平日收藏的网址导航。
- Host: GitHub
- URL: https://github.com/ch3nnn/webstack-go
- Owner: ch3nnn
- License: mit
- Created: 2022-05-05T15:53:22.000Z (almost 3 years ago)
- Default Branch: master
- Last Pushed: 2025-03-29T17:19:34.000Z (about 1 month ago)
- Last Synced: 2025-04-01T10:07:11.112Z (about 1 month ago)
- Topics: bookmark, gin, go, navigation, website
- Language: Go
- Homepage: http://47.94.59.82:9999/
- Size: 14.5 MB
- Stars: 278
- Watchers: 4
- Forks: 78
- Open Issues: 8
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-hacking-lists - ch3nnn/webstack-go - 基于 Go 开源的网址导航网站,具备完整的前后台。您可以拿来制作自己平日收藏的网址导航。 (Go)
README
# webstack-go 网址导航后台系统
基于 Golang 开源的网址导航网站项目,具备完整的前后台,您可以拿来制作自己平日收藏的网址导航。
> v1: 使用 mysql 和 redis 组件, 丰富的后端功能。 v2: 简化版无需额外组件, 使用轻量级 sqlite 数据库。- 前端模板: [WebStackPage](https://github.com/WebStackPage/WebStackPage.github.io)、[光年后台模板](https://gitee.com/yinqi/Light-Year-Admin-Using-Iframe-v4)
- 后端框架: 基于 [go-nunu](https://github.com/go-nunu/nunu) 脚手架搭建功能:
- [x] 新增 webstack - 导航首页
- [x] 新增 仪表盘 (SSE)
- [x] 新增 网站管理 - 网站分类
- [x] 新增 网站管理 - 网站列表
- [x] 新增 系统管理 - 自定义导航基本信息 (Logo、favicon、备案信息等)
- [x] 新增 支持批量添加 (自动获取标题、Logo、网站描述)
- [x] 新增 一键同步、导出功能
- [x] 新增 由 [gorm-gen](https://github.com/go-gorm/gen) 代码生成提供支持的友好且更安全的 GORM
- [x] 杂项 与仓库保持同步 [Docker Hub](https://hub.docker.com/r/ch3nnn/webstack-go/tags)## 快速开始
### 一、运行环境
- Golang 1.22
- SQLite### 二、启动服务
**1、二进制文件**
你可以直接从[ Releases ](https://github.com/ch3nnn/webstack-go/releases)下载预先编译好的二进制文件,解压后执行:
```bash
./webstack-go -conf config/prod.yml
```> [!NOTE]
> MacOS 在执行二进制文件时会提示:未打开“webstack-go”,因为 Apple 无法检查其是否包含恶意软件。
>
> 可在“系统设置 > 隐私与安全性 > 安全性”中点击“仍然允许”,然后再次尝试执行二进制文件。**2、源码运行服务 (需要 Golang 环境)**
1. 目录下执行 `go mod tidy` 拉取项目依赖库
2. 执行 `go build -o ./bin/server ./cmd/server` 编译项目,生成可执行文件 server
3. 编译完执行 `./bin/server -conf=config/prod.yml` 首次启动程序之后,会生成 SQLite 数据库,并自动创建表结构**3、Docker 运行服务**
#### 下载镜像
1. docker run 运行
```bash
docker run -i -t --restart always -p 8000:8000 --name webstack-go -v ./data/storage:/data/app/storage ch3nnn/webstack-go:latest
```2. docker compose (推荐)
```yaml
services:
webstack-go:
stdin_open: true
tty: true
restart: always
ports:
- 8000:8000
container_name: webstack-go
image: ch3nnn/webstack-go:latest
volumes:
- ./data/storage:/data/app/storage
```#### 本地编译
1. 目录下执行 `make docker` 等待启动
```shell
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
5cb641ff3950 webstack-go:v2 "./server" 5 seconds ago Up 5 seconds 0.0.0.0:8000->8000/tcp webstack-go
```
2. docker container 正常运行后, 在浏览器中打开界面,链接地址:http://127.0.0.1:8000## 效果图
> **首页**

> **网站分类**

> **新增网站**

> **网站信息**

> **网站配置**

## Star History
[](https://star-history.com/#ch3nnn/webstack-go&Date)