All Projects → uptrace → go-realworld-example-app

uptrace / go-realworld-example-app

Licence: BSD-2-Clause license
Exemplary real world application built with Go, Gin, and go-pg

Programming Languages

go
31211 projects - #10 most used programming language

Projects that are alternatives of or similar to go-realworld-example-app

echo-gorm-realworld-app
realworld application built with Golang + Echo + Gorm
Stars: ✭ 18 (-62.5%)
Mutual labels:  realworld, realworld-backend
symfony-realworld-example-app
Symfony 5 codebase containing real world examples (CRUD, auth, advanced patterns, etc) that adheres to the RealWorld spec and API.
Stars: ✭ 89 (+85.42%)
Mutual labels:  realworld, realworld-backend
Golang Gin Realworld Example App
Exemplary real world application built with Golang + Gin
Stars: ✭ 1,780 (+3608.33%)
Mutual labels:  gin, realworld
scala-http4s-realworld-example-app
Example of a RealWorld app backend powered by Scala + http4s
Stars: ✭ 35 (-27.08%)
Mutual labels:  realworld, realworld-backend
kuu
Modular Go Web Framework based on GORM and Gin.
Stars: ✭ 15 (-68.75%)
Mutual labels:  gin
go-saas
go data framework for saas(multi-tenancy)
Stars: ✭ 101 (+110.42%)
Mutual labels:  gin
laya-template
服务基本框架,template
Stars: ✭ 13 (-72.92%)
Mutual labels:  gin
watchman
📆 更夫(watchman)是一款可视化的定时任务配置 Web 工具,麻麻不用担心我漏掉任何更新啦!
Stars: ✭ 40 (-16.67%)
Mutual labels:  gin
logger
Gin middleware/handler to logger url path using rs/zerolog
Stars: ✭ 119 (+147.92%)
Mutual labels:  gin
gin-api-boilerplate
A Go RESTful API server with gin and docker
Stars: ✭ 16 (-66.67%)
Mutual labels:  gin
spike
Golang Use Gin Framework implementation of the project
Stars: ✭ 20 (-58.33%)
Mutual labels:  gin
go-fastapi
Create an API and get Swagger definition for free
Stars: ✭ 76 (+58.33%)
Mutual labels:  gin
casbin-pg-adapter
A go-pg adapter for casbin
Stars: ✭ 23 (-52.08%)
Mutual labels:  go-pg
urlstruct
urlstruct decodes url.Values into structs
Stars: ✭ 27 (-43.75%)
Mutual labels:  go-pg
truthy
Open source headless CMS API written using NestJS, that has pre built modules like User Management, Role Management, Permission Management, Email Module, Account Settings, OTP, Throttling, RBAC support, Localization, and many more.
Stars: ✭ 200 (+316.67%)
Mutual labels:  realworld-backend
gmsec
golang micro service base on gin. golang 微服务集成框架
Stars: ✭ 141 (+193.75%)
Mutual labels:  gin
mir
Mir is a toolkit for register method handler to http engine router(eg: gin,echo,iris,mux,httprouter) use struct tag info.
Stars: ✭ 42 (-12.5%)
Mutual labels:  gin
deno-drash-realworld-example-app
Deno + Drash RealWorld example app
Stars: ✭ 56 (+16.67%)
Mutual labels:  realworld
go-web-demo
基于gin的go web框架。包含log、mysql、redis、httpClient、grpcClient、hystrix 等组件,swagger、pprof集成。
Stars: ✭ 72 (+50%)
Mutual labels:  gin
HelloGin
Gin,Vue,Redis,Mysql,Xorm,FastDFS, Hello Gin ! 项目适合入门Gin
Stars: ✭ 62 (+29.17%)
Mutual labels:  gin

Go Gin + go-pg realworld example application

CircleCI PkgGoDev

❤️ Uptrace.dev - distributed traces, logs, and errors in one place

Introduction

This project implements JSON API as specified in RealWorld spec. It was created to demonstrate how to use:

Project structure

Project consists of the following packages:

  • rwe global package parses configs, establishes DB connections etc.
  • org package manages users and tokens.
  • blog package manages articles and comments.
  • app folder contains application resources such as config.
  • cmd/api runs HTTP server with JSON API.
  • cmd/migrate_db command that runs SQL migrations.

The most interesting part for go-pg users is probably article filter.

Project bootstrap

First of all you need to create a config file changing defaults as needed:

cp app/config/dev.yml.default app/config/dev.yml

Project comes with a Makefile that contains following recipes:

  • make db_reset drops existing database and creates a new one.
  • make test runs unit tests.
  • make api_test runs API tests provided by RealWorld.

After checking that tests are passing you can start API HTTP server:

go run cmd/api/*.go -env=dev
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].