https://github.com/kitsuya0828/gqlgen-ent-clean-architecture-boilerplate
A Clean Architecture boilerplate for Golang applications built with gqlgen and ent
https://github.com/kitsuya0828/gqlgen-ent-clean-architecture-boilerplate
clean-architecture ent golang gqlgen
Last synced: about 2 months ago
JSON representation
A Clean Architecture boilerplate for Golang applications built with gqlgen and ent
- Host: GitHub
- URL: https://github.com/kitsuya0828/gqlgen-ent-clean-architecture-boilerplate
- Owner: kitsuya0828
- License: mit
- Created: 2023-09-03T03:18:05.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2023-09-05T09:36:19.000Z (over 1 year ago)
- Last Synced: 2025-02-08T07:57:28.143Z (4 months ago)
- Topics: clean-architecture, ent, golang, gqlgen
- Language: Go
- Homepage:
- Size: 545 KB
- Stars: 3
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# gqlgen-ent-clean-architecture-boilerplate
A Clean Architecture boilerplate for Golang applications built with gqlgen and ent.
This boilerplate is inspired by [Clean Architecture with ent and gqlgen \| by Manato Kuroda \| Better Programming](https://betterprogramming.pub/clean-architecture-with-ent-and-gqlgen-a789933a3665), but with some original customizations based on the [official docs of ent.](https://entgo.io/ja/docs/tutorial-todo-gql).
[The Go gopher](https://go.dev/blog/gopher) was designed by [Renée French](https://www.instagram.com/reneefrench/).
## Usage
### Run Docker```bash
cd docker
docker comopse up
```### Set up database
```bash
make setup_db
make migrate_schema
```### Codegen
```bash
make generate
```### Start server
```bash
make start
```
You can see the **GraphQL Playground** at [http://localhost:8080/playground](http://localhost:8080/playground).### Testing
```bash
make setup_test_db
make test_repository
```### E2E
```bash
make setup_e2e_db
make e2e
```## FAQ
### How to add a schema?
> Now Writing.## References
* [gqlgen](https://gqlgen.com/)
* [Getting Started](https://gqlgen.com/getting-started/)
* [ent.](https://entgo.io/)
* [First Steps](https://entgo.io/docs/tutorial-setup)
* [GraphQL Basics](https://entgo.io/docs/tutorial-todo-gql)