gowok
Compare original and translation side by side
🇺🇸
Original
English🇨🇳
Translation
ChineseGowok is a library that contains a lot of functions that help you to build Go project.
It has some utilities like:
- config loader,
- project bootstrapper,
- HTTP response builder,
- nil safety,
- password hash, and so on.
The Background
Even using framework, build a Golang project still tiring.
So many repetitive tasks have to done by developer.
The worst, that activities almost same, like:
- managing database connection(s),
- bootstrapping HTTP (or anything) server,
- make utility functions, and so on.
Gowok here to end this nightmare.
Don't worry about your work anymore.
The Use Cases
-
REST API Backend ServiceGowok ships with built-in support for HTTP server through the net/http which you can used to build REST API.
-
Microservice with GRPCGowok also provide microservices communication via GRPC, it possible to works with HTTP in parallel.
-
Event Driven Listener (Worker)Gowok has runner and hooks management that can used to setup event listener. Every listeners will registered in bootstrapping process.
The Developer Experience
Gowok aims to be easy to use that can increase developer's productivity.
All features are designed to follow official and community coding pattern.
Plus, the libraries used are as familiar as possible to many developers.
Everything understandable here.
For example, if you ask how to run project using Gowok.
The answer would be easy.
Yappp..!! Just load the project then call function.
Run()Example:
go
gowok.Run()That easy, broh!
The Development Status
In this time, Gowok still version 0.x.x.
With ongoing development, it will be more stable and ready to use widely.
Although, our team uses Gowok as everyday tool in peaceful work.
Core
开发背景
| Topic | Description | Reference |
|---|---|---|
| Getting Started | starting new project | getting-started |
| Configuration | configuration structure, reading config values starting new project | configuration |
| Runner | manage how to run the project | runner |
| Singleton | object container, global long-lived object management | singleton |
| Web | HTTP server, router | web |
即便使用框架,构建Golang项目仍然十分繁琐。开发者需要完成大量重复性工作,更糟的是,这些工作内容几乎千篇一律,比如:
- 管理数据库连接,
- 启动HTTP(或其他类型)服务器,
- 编写工具函数 等等。
Gowok正是为终结这种困境而生。从此无需再为这些重复工作发愁。
Features
使用场景
| Topic | Description | Reference |
|---|---|---|
| Some (Nil Safety) | wrapping nilable value for safety access | some |
| SQL | connect to multiple SQL servers with different connection types | sql |
-
REST API后端服务Gowok通过net/http内置了HTTP服务器支持,你可以用它来构建REST API。
-
基于GRPC的微服务Gowok还支持通过GRPC实现微服务通信,并且可以与HTTP服务并行运行。
-
事件驱动监听器(Worker)Gowok具备运行器和钩子管理功能,可用于设置事件监听器。所有监听器都会在项目引导过程中完成注册。
—
开发者体验
—
Gowok的设计目标是易于使用,以提升开发者的生产力。所有功能均遵循官方及社区的编码规范。此外,所使用的库都是众多开发者所熟悉的,一切都通俗易懂。
比如,如果你问如何使用Gowok运行项目,答案非常简单。
哇哦!只需加载项目然后调用函数即可。
Run()示例:
go
gowok.Run()就这么简单!
—
开发状态
—
目前,Gowok仍处于0.x.x版本。随着开发的持续推进,它将变得更加稳定并适合广泛使用。
不过,我们团队已经在日常工作中平稳使用Gowok了。
—
核心模块
—
| 主题 | 描述 | 参考文档 |
|---|---|---|
| 入门指南 | 创建新项目 | getting-started |
| 配置 | 配置结构、读取配置值及创建新项目 | configuration |
| 运行器 | 管理项目运行方式 | runner |
| 单例 | 对象容器、全局长生命周期对象管理 | singleton |
| Web模块 | HTTP服务器、路由 | web |
—
功能特性
—
| 主题 | 描述 | 参考文档 |
|---|---|---|
| 空值安全处理 | 包装可空值以实现安全访问 | some |
| SQL模块 | 连接多种不同类型的SQL服务器 | sql |