-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
9931ad4
commit f7e1831
Showing
1 changed file
with
138 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,138 @@ | ||
# Gocell | ||
|
||
GoCell is a robust and scalable base platform for building web applications using the Go programming language. | ||
|
||
## Table of Contents | ||
|
||
- [Gocell](#gocell) | ||
- [Table of Contents](#table-of-contents) | ||
- [Introduction](#introduction) | ||
- [Prerequisites](#prerequisites) | ||
- [Getting Started](#getting-started) | ||
- [Running the REST API Server](#running-the-rest-api-server) | ||
- [Building the REST API Server](#building-the-rest-api-server) | ||
- [Running the Job Server](#running-the-job-server) | ||
- [Building the Job Server](#building-the-job-server) | ||
- [Modules Support](#modules-support) | ||
- [Running Tests](#running-tests) | ||
- [Tidying up Modules](#tidying-up-modules) | ||
- [Upgrading Dependencies](#upgrading-dependencies) | ||
- [Cleaning Dependency Cache](#cleaning-dependency-cache) | ||
- [Tools Commands](#tools-commands) | ||
- [Swagger Documentation](#swagger-documentation) | ||
- [Component](#component) | ||
|
||
## Introduction | ||
|
||
GoCell is a robust and scalable base platform for building web applications using the Go programming language. It provides a solid foundation with essential features and a modular architecture that allows developers to quickly kickstart their projects and focus on building core functionality. | ||
|
||
## Prerequisites | ||
|
||
Golang version v1.20 | ||
|
||
## Getting Started | ||
|
||
Explain how users can get started with Gocell project. | ||
|
||
### Running the REST API Server | ||
|
||
To run the REST API server, use the following command: | ||
|
||
```bash | ||
make run | ||
``` | ||
|
||
This will start the server using the provided configuration files. | ||
|
||
### Building the REST API Server | ||
|
||
To build the REST API server, use the following command: | ||
|
||
```bash | ||
make build | ||
``` | ||
|
||
This will compile the server executable. | ||
|
||
### Running the Job Server | ||
|
||
To run the Job server, use the following command: | ||
|
||
```bash | ||
make run-job | ||
``` | ||
|
||
This will start the Job server using the specified configuration file. | ||
|
||
### Building the Job Server | ||
|
||
To build the Job server, use the following command: | ||
|
||
```bash | ||
make build-job | ||
``` | ||
|
||
This will compile the Job server executable. | ||
|
||
## Modules Support | ||
|
||
Explain how users can interact with the various modules in Gocell project. | ||
|
||
### Running Tests | ||
|
||
To run tests for all modules, use the following command: | ||
|
||
```bash | ||
make test | ||
``` | ||
|
||
### Tidying up Modules | ||
|
||
To tidy up the project's Go modules, use the following command: | ||
|
||
```bash | ||
make tidy | ||
``` | ||
|
||
### Upgrading Dependencies | ||
|
||
To upgrade project dependencies, use the following command: | ||
|
||
```bash | ||
make deps-upgrade | ||
``` | ||
|
||
### Cleaning Dependency Cache | ||
|
||
To clean the Go module cache, use the following command: | ||
|
||
```bash | ||
make deps-clean-cache | ||
``` | ||
|
||
## Tools Commands | ||
|
||
### Swagger Documentation | ||
|
||
To generate Swagger documentation, use the following command: | ||
|
||
```bash | ||
make swaggo | ||
``` | ||
|
||
This will initialize Swagger and generate the API documentation. | ||
|
||
## Component | ||
|
||
- [x] Integrated Postgres | ||
- [x] Integrated MySQL | ||
- [x] Integrated RabbitMQ | ||
- [x] Integrated Redis | ||
- [x] Integrated Swagger | ||
- [x] Integrated Websocket | ||
- [x] Integrated base middlewares (CORS, ERROR, ...) | ||
- [x] Integrated Telegram / Slack bot | ||
- [x] Integrated Logger | ||
- [ ] Integrating Kafka | ||
- [ ] Add Dockerfile | ||
- [ ] Add cronjob |