Skip to content

Commit a188c29

Browse files
committed
add Taskcafe
1 parent c2ab825 commit a188c29

File tree

9 files changed

+173
-2
lines changed

9 files changed

+173
-2
lines changed

README.md

+3-2
Original file line numberDiff line numberDiff line change
@@ -34,8 +34,6 @@
3434
11. [用 Java 拿下 HTML 分分钟写个小爬虫](contents/Java/jsoup/content.md)
3535
12. [不想加班开发管理后台了,试试这个 Java 开源项目吧!](contents/Java/eladmin/content.md)
3636

37-
38-
3937
#### JS 系列
4038

4139
1. [功能强大的 JS 文件上传库:FilePond](contents/JavaScript/FilePond/content.md)
@@ -46,6 +44,9 @@
4644
4. [用这个库 3 分钟实现让你满意的表格功能:Bootstrap-Table](contents/JavaScript/Bootstrap_Table/content.md)
4745
5. [内容创作者不要再复制粘贴啦,一劳永逸自建个文章多发平台吧!](contents/JavaScript/ArtiPub/content.md)
4846

47+
#### Go 系列
48+
49+
1. [把“烦恼”放进看板,开源免费的项目管理工具来帮你啦!](contents/Golang/Taskcafe/content.md)
4950

5051
#### Rust 系列
5152

contents/Golang/Taskcafe/content.md

+170
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,170 @@
1+
# 把“烦恼”放进看板,开源免费的项目管理工具来帮你啦!
2+
3+
> 本文适合喜欢倒腾效率工具的小伙伴和 Go 语言初学者
4+
5+
<img src="./images/cover.jpg" style="zoom:67%;" />
6+
7+
<p align="center">本文作者:HelloGitHub-<strong>蔡文心</strong></p>
8+
9+
这里是维护 4 年有余**开源爱好者的老朋友**——HelloGitHub 推出的[《讲解开源项目》](https://github.com/HelloGitHub-Team/Article)系列。
10+
11+
今天给大家带来的一款基于 Go+React 实现的**项目管理工具**开源项目——**Taskcafe**,该项目可以作为 Go Web 的实战项目学习,不会 Go 的读者也可以轻松通过 Docker 安装使用。
12+
13+
> 项目地址:https://github.com/JordanKnott/taskcafe
14+
15+
16+
## 一、介绍
17+
18+
相信各位小伙伴们在工作中或多或少都有接触过项目管理工具。项目管理工具可以为我们提供**轻松量化工作内容****为团队提供高效协作的方法****项目进度可视化**等等的帮助,提高我们的工作效率和对目标的专注程度。**Taskcafe** 就能够让我们快速拥有一个属于自己的任务管理工具,帮助记录、管理、追踪任务,让你的生活和工作更加高效!
19+
20+
![](./images/1.png)
21+
22+
在项目管理工具中最常用的视图模式就是**看板**了,所以**看板**也被称为项目管理工具中的黄金圣杯。使用 **Taskcafe** 可以让我们轻松的将周身事物看板(任务),**万物皆可放入看板**
23+
24+
目前 **Taskcafe** 支持的功能:
25+
26+
- 确保任务、项目、任务组等数据经过验证(例如:仅项目名称不能有空格)
27+
- 任务视图筛选
28+
- 用户界面
29+
- 截止日期通知和提醒
30+
- 项目收藏夹
31+
- 团队设置
32+
- 日历视图
33+
- 列表显示
34+
- 任务固定
35+
- 等等
36+
37+
市面上已有种类繁多的任务管理工具,从 **MeisterTask****禅道** 再到 **Teambition**,他们使用从简单到复杂、功能从基础到丰富。但我印象中上述这些基本都是付费的,免费开源、部署方便的 **Taskcafe** 可以一试,让我们继续往下看吧!
38+
39+
### 1.1 私有部署
40+
41+
能够在个人服务器上搭建个人的项目管理工具,不用担心隐私**安全**问题和**收费**的烦恼。
42+
43+
### 1.2 可扩展
44+
45+
使用任务管理工具时总会遇到因为自身业务的特殊性导致现有工具不能满足需求的情况。因为 **Taskcafe** 是开源项目,所以能够自己动手添加适应自己工作流程的功能。
46+
47+
### 1.3 安装方式
48+
49+
- Docker
50+
- 源码
51+
52+
考虑到此项目的受众可能包括非程序员人群,接下来本文中将演示最方便的一种方案 **使用 Docker 安装**
53+
54+
## 二、安装
55+
56+
### 2.1 Docker
57+
58+
**准备**
59+
60+
1. [Docker 安装文档](https://docs.docker.com/engine/install/)
61+
2. [Docker-compose 容器编排安装文档](https://docs.docker.com/compose/install/)
62+
63+
**Step 1 Clone 项目**
64+
65+
```shell
66+
git clone https://github.com/JordanKnott/taskcafe && cd taskcafe
67+
```
68+
69+
**Step 2 在项目根目录下执行**
70+
71+
```shell
72+
docker-compose -p taskcafe up -d
73+
```
74+
75+
**Step 3 成功**
76+
77+
访问:http://localhost:3333
78+
79+
![](./images/2.png)
80+
81+
## 三、使用
82+
83+
### 3.1 创建 Admin 用户
84+
85+
![](./images/2.png)
86+
87+
### 3.2 创建项目
88+
89+
![](./images/3.png)
90+
91+
### 3.3 创建看板(list)
92+
93+
![](./images/4.png)
94+
95+
### 3.4 添加任务(card)
96+
97+
在任务中可以添加成员、TODO 列表、查看操作记录、添加标签和添加附件等等
98+
99+
![](./images/5.png)
100+
101+
### 3.5 移动任务
102+
103+
![](./images/6.gif)
104+
105+
Taskcafe 包含的功能就不一一介绍了,跟着项目的文档,在 Web 页面“点点点”就可以了。那么快去动手实践一番吧!
106+
107+
## 四、技术栈
108+
109+
### 1.1 前端
110+
部分功能采用知名的 Kanban 面板实现。
111+
112+
- React
113+
- Typescript
114+
- GraphQL
115+
116+
### 2.1 后端
117+
118+
- Golang
119+
- Chai 用于轻松构建 Restfull API
120+
- JWT 用户态控制
121+
- Postgres 数据库
122+
- Machinery 一个分布式的消息队列
123+
124+
### 3.1 项目结构
125+
126+
```shell
127+
...
128+
├── README.md
129+
├── cmd
130+
│ ├── mage
131+
│ └── taskcafe
132+
│ ├── main.go //go的启动文件
133+
├── frontend //前端工程
134+
│ ├── .editorconfig
135+
│ ├── .eslintignore
136+
│ ├── .eslintrc.json
137+
│ ├── .gitignore
138+
│ ├── .prettierrc.js
139+
│ ├── .storybook
140+
│ ├── Makefile
141+
│ ├── codegen.yml
142+
│ ├── package.json
143+
│ ├── public
144+
│ ├── src
145+
│ ├── tsconfig.json
146+
│ └── yarn.lock
147+
├── internal //后端工程主要内容
148+
│ ├── auth
149+
│ ├── commands
150+
│ ├── db
151+
│ ├── graph
152+
│ ├── logger
153+
│ ├── notification
154+
│ ├── route //路由注册
155+
│ └── utils
156+
├── magefile.go
157+
├── migrations //数据库迁移文件
158+
...
159+
```
160+
161+
后端使用 Golang 编写,属于 Golang 在 Web 项目的运用,采用了前后端分离模式,由于使用了 GraphQL 可以明显发现 API 数量有所减少。
162+
163+
**如果你是一个 Golang 新手那非常推荐你阅读下 Taskcafe 的源码,该项目结构清晰并且有非常友好的注释,常用的 Go 中间件都有用到,适合做为 Go 新手实战和学习项目。**
164+
165+
## 五、最后
166+
167+
至此,相信你对 Taskcafe 项目有了简单了解,并且已经能够成功在本地运行起来了。希望你在实际体验中融入自己的工作、生活和周围的事物来感受**看板**的魅力,充分体会到万物皆可**看板**
168+
169+
如果这次推荐的 Taskcafe 能够为你带来一点点帮助,请在右下角帮我点个赞吧~
170+

contents/Golang/Taskcafe/images/1.png

153 KB
Loading

contents/Golang/Taskcafe/images/2.png

228 KB
Loading

contents/Golang/Taskcafe/images/3.png

81.9 KB
Loading

contents/Golang/Taskcafe/images/4.png

135 KB
Loading

contents/Golang/Taskcafe/images/5.png

313 KB
Loading

contents/Golang/Taskcafe/images/6.gif

260 KB
Loading
423 KB
Loading

0 commit comments

Comments
 (0)