All Projects β†’ rafaelsq β†’ boiler

rafaelsq / boiler

Licence: MIT license
Another Golang boilerplate

Programming Languages

go
31211 projects - #10 most used programming language
javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to boiler

Bedrock
Build a Node web app with user authentication, security, and more in under 10 minutes. Now supports React Hot Loading for super-fast development. πŸ‘Œ
Stars: ✭ 187 (+790.48%)
Mutual labels:  starter-kit
Statamic Peak
Statamic Peak is an opinionated starter kit for all your Statamic sites.
Stars: ✭ 212 (+909.52%)
Mutual labels:  starter-kit
React Firebase Admin
React βš›οΈ starter kit with Firebase πŸ”₯ and Bulma for setting up an admin dashboard - Highly scalable, PWA, Serverless
Stars: ✭ 232 (+1004.76%)
Mutual labels:  starter-kit
Ui
🏁🌐 Frontend Svelte PWA starter for SaaS startups
Stars: ✭ 200 (+852.38%)
Mutual labels:  starter-kit
Starter Kit
Some useful R-Ladies files πŸ’œ 🌍
Stars: ✭ 211 (+904.76%)
Mutual labels:  starter-kit
React Starter Kit
React, Redux, Webpack, Material UI, Boostrap 4, Code Splitting, HMR
Stars: ✭ 229 (+990.48%)
Mutual labels:  starter-kit
Weex Vue Starter Kit
weex starter kit in vue to use weexpack & weex both.(support hot-reload)
Stars: ✭ 182 (+766.67%)
Mutual labels:  starter-kit
Hackathon Starter Kit
A Node-Typescript/Express Boilerplate with Authentication(Local, Github, Facebook, Twitter, Google, Dropbox, LinkedIn, Discord, Slack), Authorization, and CRUD functionality + PWA Support!
Stars: ✭ 242 (+1052.38%)
Mutual labels:  starter-kit
Apiato
PHP Framework for building scalable API's on top of Laravel.
Stars: ✭ 2,564 (+12109.52%)
Mutual labels:  starter-kit
Minwiz
Minimal starter kit for under 2 KB sites
Stars: ✭ 228 (+985.71%)
Mutual labels:  starter-kit
Js Library Boilerplate
Javascript Starter Boilerplate - Webpack 4, Babel 7, UMD, Hot Reloading, and more
Stars: ✭ 202 (+861.9%)
Mutual labels:  starter-kit
Starter Pack
Combines React (ft. hooks), Redux, Redux-saga and TypeScript with Auth0 as a starting point for modern web apps with solid authentication
Stars: ✭ 209 (+895.24%)
Mutual labels:  starter-kit
Gulp Pug Starter
Frontend development with pleasure. Pug + SCSS version
Stars: ✭ 228 (+985.71%)
Mutual labels:  starter-kit
Koa Web Kit
πŸš€A Modern, Production-Ready, and Full-Stack Node Web Framework with React
Stars: ✭ 199 (+847.62%)
Mutual labels:  starter-kit
Create Exposed App
App generator with everything exposed for maximum control (powered by TypeScript, ESBuild, Jest, ESLint, GitHub Actions, Prettier, and more)
Stars: ✭ 232 (+1004.76%)
Mutual labels:  starter-kit
Polymer Skeleton
πŸ’€ Skeleton for Polymer 3 app with Webpack, PostCSS and Service Workers ready.
Stars: ✭ 185 (+780.95%)
Mutual labels:  starter-kit
Run Aspnetcore
A starter kit for your next ASP.NET Core web application. Boilerplate for ASP.NET Core reference application, demonstrating a layered application architecture with applying Clean Architecture and DDD best practices. Download 100+ page eBook PDF from here ->
Stars: ✭ 227 (+980.95%)
Mutual labels:  starter-kit
Arc
React starter kit based on Atomic Design
Stars: ✭ 2,780 (+13138.1%)
Mutual labels:  starter-kit
Extension Create
Create modern cross-browser extensions with no build configuration.
Stars: ✭ 167 (+695.24%)
Mutual labels:  starter-kit
Go Html Boilerplate
Starter pack for doing web development in Go
Stars: ✭ 229 (+990.48%)
Mutual labels:  starter-kit

Boiler

Actions Status Report card GoDoc License MIT

Telemetry

$ export BOILER_TELEMETRY_ENABLED=true
$ make jaeger

Check http://localhost:16686/ after doing any request

Project

Architeture Layers

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”œβ”€β–  transport ■──  e.g. Rest, GraphQL, etc...
β”œβ”€β”€β–  service ■───  i.e. business logic
β”œβ”€β”€β”€β”€β–  io ■──────  i.e. external APIs, MySQL, redis, fileSystem, etc...
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Project

β”Œβ”€β–  README.md
β”œβ”€β–  Makefile
β”œβ”€β–  .golangci.yml        // lint
β”œβ”€β–  .wtc.yaml            // watch settings
β”‚
β”œβ”€β”cmd
β”‚ β”œβ”€β–  cmd.go             // common function
β”‚ β”‚
β”‚ β”œβ”€β”worker              // handle async operation
β”‚ β”‚ β”œβ”€β–  worker.go
β”‚ β”‚ └─┐internal
β”‚ β”‚   └─┐handle
β”‚ β”‚     └─■ handle.go
β”‚ β”‚
β”‚ └─┐server                // HTTP server
β”‚   β”œβ”€β–  server.go          // entrypoint
β”‚   └─┐internal
β”‚     β”œβ”€β”router
β”‚     β”‚ β”œβ”€β–  middleware.go
β”‚     β”‚ └─■ router.go      // route www, rest, graphql, etc..
β”‚     β”‚
β”‚     β”œβ”€β”www
β”‚     β”‚ β”œβ”€β–  handle.go
β”‚     β”‚ └─┐ static
β”‚     β”‚   └─■ *.*
β”‚     β”‚
β”‚     β”œβ”€β”rest
β”‚     β”‚ β”œβ”€β–  handle.go
β”‚     β”‚ └─┐entity
β”‚     β”‚   └─■ <handle_name>.go  // payload and response definitions
β”‚     β”‚
β”‚     └─┐graphql
β”‚       β”œβ”€β–  handle.go
β”‚       β”œβ”€β–  schema.graphql
β”‚       β”œβ”€β–  gqlgen.yml
β”‚       β”œβ”€β–  query.go
β”‚       β”œβ”€β–  mutation.go
β”‚       β”œβ”€β–  resolver.go
β”‚       └─┐entity
β”‚         └─■ *.go
β”‚
└─┐pkg
  β”‚
  β”œβ”€β”iface               // project interfaces
  β”‚ β”œβ”€β–  *.go
  β”‚ └─┐mock
  β”‚   └─■ *.go
  β”‚
  β”œβ”€β”service             // business logic
  β”‚ β”œβ”€β–  service.go       // new
  β”‚ └─■ *.go
  β”‚
  β”œβ”€β”entity
  β”‚ └─■ *.go
  β”‚
  β”œβ”€β”errors
  β”‚ β”œβ”€β–  codeerr.go
  β”‚ β”œβ”€β–  wraperr.go
  β”‚ └─■ errors.go
  β”‚
  β”œβ”€β”telemetry           // add telemetry Span for both iface.Service and iface.IO
  β”‚ β”œβ”€β–  service.go
  β”‚ └─■ io.go
  β”‚
  └─┐io
    β”‚
    β”œβ”€β”config
    β”‚ β”œβ”€β–  config.go
    β”‚ └─■ *.yaml         // custom config file
    β”‚
    β”œβ”€β”log
    β”‚ └─■ log.go
    β”‚
    └─┐database.go
      β”œβ”€β–  database.go
      └─■ *.go

Requirements

Worker requires a running Redis server.

You can easily start a redis server using docker; docker run -d --name=redis -p 6379:6379 --restart=always redis:7

Run Dev Mode

$ make

more info on .wtc.yaml

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].