All Projects → nanamen → go-onion-architecture-sample

nanamen / go-onion-architecture-sample

Licence: other
Sample RestAPI project write in Go

Programming Languages

go
31211 projects - #10 most used programming language

Projects that are alternatives of or similar to go-onion-architecture-sample

go-echo-boilerplate
The fastest way to build a restful API with golang and echo framework. Includes common required features for modern web applications. A boilerplate project with golang and Echo.
Stars: ✭ 53 (+32.5%)
Mutual labels:  restful-api, echo-framework
kontenbase
Kontenbase is a no code backend API platform / Backend as a Service (BaaS)
Stars: ✭ 98 (+145%)
Mutual labels:  restful-api
software-systems-architecture
A collection of descriptions of the architecture that various systems use.
Stars: ✭ 24 (-40%)
Mutual labels:  restful-api
grapevine
Fast, unopinionated, embeddable, minimalist web framework for .NET
Stars: ✭ 72 (+80%)
Mutual labels:  restful-api
SpringsScala
Sample Projects for Creating Springs Web services in Scala
Stars: ✭ 16 (-60%)
Mutual labels:  restful-api
echo-rest-api
Example of creating REST API with Echo framework
Stars: ✭ 39 (-2.5%)
Mutual labels:  echo-framework
inject
A web framework inspired by spring boot, base on echo framework and dependency injection
Stars: ✭ 17 (-57.5%)
Mutual labels:  echo-framework
gothic
🦇 Gothic is a user registration and authentication SWT/JWT microservice. It supports REST, gRPC, and gRPC Web API, reCAPTCHA & a variety of DBs with Gorm.
Stars: ✭ 65 (+62.5%)
Mutual labels:  restful-api
goexpress
An Express JS Style HTTP server implementation in Golang
Stars: ✭ 87 (+117.5%)
Mutual labels:  restful-api
project-3-crm
⭐crm 客户关系管理系统模板⭐一个不错的后台管理种子项目,拥有自由设置角色自由分配权限🔑的权限管理功能,三员管理多员管理均可,前端antd vue admin后端spring-boot-api-seedling 拥有完善的功能。文档包含需求文档,设计文档和测试文档等。同时配置了travis,拥有集成测试和自动构建的功能。
Stars: ✭ 128 (+220%)
Mutual labels:  restful-api
node-server-template
This is Node.js server tidy template / boilerplate with Express (with asyncified handlers, custom error handler) framework and MongoDb. The server use ES6 and above. On different branches you can see different techniques' and technologies' usage, such as Kafka, nodemailer, file download... You also can find postman collections.
Stars: ✭ 116 (+190%)
Mutual labels:  restful-api
ecommerce api
E-commerce by Django Rest Framework
Stars: ✭ 156 (+290%)
Mutual labels:  restful-api
travels-api
API for Travels Management - UFLA Comp Jr/20 anniversary event
Stars: ✭ 22 (-45%)
Mutual labels:  restful-api
sanic-currency-exchange-rates-api
This is a self hosted, free, open source Python Currency Exchange Rate API fork.
Stars: ✭ 20 (-50%)
Mutual labels:  restful-api
springboot-bestpractice
SpringBoot best practice architecture. Using Spring Security, Spring Data JPA.
Stars: ✭ 51 (+27.5%)
Mutual labels:  restful-api
symfony-todo-backend
This is the result of all the videos that were created in the series that i published on the playlist. LINK BELOW
Stars: ✭ 172 (+330%)
Mutual labels:  restful-api
cubic
📦 Easy to scale, zero-config, real-time focused app platform for node.js
Stars: ✭ 16 (-60%)
Mutual labels:  restful-api
eShopOnWeb
Sample ASP.NET Core 6.0 reference application, powered by Microsoft, demonstrating a layered application architecture with monolithic deployment model. Download the eBook PDF from docs folder.
Stars: ✭ 8,250 (+20525%)
Mutual labels:  ddd-sample
AnomalyDetection
基于智能计算框架nupic的异常检测restful Api.
Stars: ✭ 31 (-22.5%)
Mutual labels:  restful-api
YuiAPI
一个浏览器API测试客户端,API文档生成器,支持chrome/firefox/新版edge
Stars: ✭ 25 (-37.5%)
Mutual labels:  restful-api

go-onion-architecture-sample

onion-architecture sample(Go, echo, REST, DDD)

Depends on

  • echo
  • viper
  • gorm
  • goose
  • assert
  • go-sqlmock.v1

How to use

Install

  • Dep
    $ brew install dep
  • go-task
    $ go get -u -v github.com/go-task/task/cmd/task
  • gometalinter
    $ go get -u -v github.com/alecthomas/gometalinter
  • goose
    $ go get bitbucket.org/liamstask/goose/cmd/goose

Application setting

$ gometalinter --install --update
$ dep ensure

Database setting

You have to write Database connection information in db/dbconf.yml and conf/local.yml
$ goose up

Run Server

task run

Sample Request

Create User
curl -X POST \
  -H 'Content-Type: application/json' \
  -d '{"name":"Joe Smith"}' \
  localhost:1323/users
Get AllUser

curl localhost:1323/users

Get User

curl localhost:1323/users/1

Update User
curl -X PUT \
  -H 'Content-Type: application/json' \
  -d '{"name":"Joe"}' \
  localhost:1323/users/1
Delete User

curl -X DELETE localhost:1323/users/1

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].