All Projects → onakrainikoff → echo-rest-api

onakrainikoff / echo-rest-api

Licence: other
Example of creating REST API with Echo framework

Programming Languages

go
31211 projects - #10 most used programming language
Makefile
30231 projects

Projects that are alternatives of or similar to echo-rest-api

inject
A web framework inspired by spring boot, base on echo framework and dependency injection
Stars: ✭ 17 (-56.41%)
Mutual labels:  echo, echo-framework
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 (+35.9%)
Mutual labels:  echo, echo-framework
echo-middleware
HTTP middleware implemented for the echo framework
Stars: ✭ 39 (+0%)
Mutual labels:  echo, echo-framework
elm-ui-examples
Examples applications for Elm-UI
Stars: ✭ 33 (-15.38%)
Mutual labels:  examples
go-starter
Go 服务框架脚手架. 整合 echo、swag、viper、nsq、logrus、fx、xorm、cobra 等第三方库
Stars: ✭ 145 (+271.79%)
Mutual labels:  echo
tensorflow-example
Tensorflow-example:使用MNIST训练模型,并识别手写数字图片
Stars: ✭ 26 (-33.33%)
Mutual labels:  examples
DotNetWithCMake
Your swiss army knife for creating .NET assemblies with CMake and integrating unmanaged code.
Stars: ✭ 50 (+28.21%)
Mutual labels:  examples
hebi-matlab-examples
Examples for the HEBI Robotics API for MATLAB
Stars: ✭ 20 (-48.72%)
Mutual labels:  examples
react-samples
Multi-project repository containing examples to explain react concepts.
Stars: ✭ 25 (-35.9%)
Mutual labels:  examples
Game-Examples
Godot game examples for gotm.io - the Godot Platform!
Stars: ✭ 27 (-30.77%)
Mutual labels:  examples
Examples
An complete examples and related support for various popular projects, and more.
Stars: ✭ 22 (-43.59%)
Mutual labels:  examples
standalone-configuration-management
Basic examples of how to use each of chef, puppet, salt and ansible as standalone configuration management systems.
Stars: ✭ 14 (-64.1%)
Mutual labels:  examples
vercel-examples
📦 Example projects using Vercel platform. Using Node.js, PHP and others.
Stars: ✭ 205 (+425.64%)
Mutual labels:  examples
trillian-examples
A place to store some examples which use Trillian APIs to build things.
Stars: ✭ 116 (+197.44%)
Mutual labels:  examples
GeoStatsTutorials
GeoStats.jl tutorials
Stars: ✭ 49 (+25.64%)
Mutual labels:  examples
ktor-API-examples
Examples with ktor to create an API REST
Stars: ✭ 23 (-41.03%)
Mutual labels:  examples
k6-example-data-generation
Example repository showing how to utilise k6 and faker to load test using generated data
Stars: ✭ 32 (-17.95%)
Mutual labels:  examples
community datasets
Example datasets and dashboards known to work well in OmniSci
Stars: ✭ 14 (-64.1%)
Mutual labels:  examples
go-webapp-sample
golang, echo, gorm
Stars: ✭ 194 (+397.44%)
Mutual labels:  echo
cycle-snabbdom-examples
Cycle.js Component Examples with Routing & Transitions!
Stars: ✭ 13 (-66.67%)
Mutual labels:  examples

echo-rest-api

В данном проекте показан пример создания REST API на Go с использованием Echo framework.

В проекте использованы

HTTP

  • github.com/labstack/echo - для создания rest сервиса; использованы: router, data binding и data rendering, logger middleware

Валидация

  • gopkg.in/go-playground/validator.v9 - для data validation

База данных

  • database/sql - для работы с запросами и транзакционностью
  • github.com/lib/pq - в качестве СУБД использовалась postgresql
  • github.com/rubenv/sql-migrate - миграционная тулза для sql
  • docker postgres image - для запуска postgresql

Конфигурация

  • flag - для передачи параметров при запуске
  • github.com/jinzhu/configor - для загрузки конфигурации из yaml

Логгирование

  • github.com/sirupsen/logrus - для логов приложения

Тестирование

  • testing - для написания тестов
  • github.com/golang/mock/gomock - для генерации моков
  • github.com/stretchr/testify/assert - исключительно для assert в тестах

Зависимости

github.com/golang/dep - менеджер зависимостей

Для запуска

  • make init - установит необходимые тулзы (dep, sql-migrate, mockgen), затем через dep установит зависимости проекта
  • make run - запустит приложение, при этом запустив docker контейнер с БД
  • make test - запустит приложение, при этом запустив docker контейнер с БД
  • make spec - сгенерирует open-api спецификацию в spec/api.json. После запуска сервис отдает спеку как статику по пути /spec/api.json, можно также выполнить swagger serve -F=swagger http://localhost:8081/spec/api.json, что бы отобразить в html виде c запущенного сервиса.
  • spec-ui - откроет спеку в html
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].