Fiber Boilerplate

screenshot of Fiber Boilerplate
vue
scss
tailwind

This is the go boilerplate on the top of fiber web framework. With simple setup you can use many features out of the box

Overview

The Fiber Boilerplate is a go boilerplate built on top of the Fiber web framework. It offers a simple setup with many out-of-the-box features. Some of these features include basic authentication, role-based authorization, file uploads, UI customization with Tailwind, payment processing via PayPal, logging with file rotation, support for PostGres or MySQL databases with GORM V2, REST API authentication with JWT, Redis integration for cache and session management, hot reload with Air, and easy configuration settings via .env file. The boilerplate also includes setup for Docker and offers easy and almost zero downtime production deployment with a Makefile.

Features

  • Basic Auth with Login, Register: Allows users to authenticate themselves with login and registration functionality.
  • Email confirmation on Registration: Sends email confirmation to users upon successful registration.
  • Role-based authorization using Casbin: Implements role-based authorization for controlling user access to various resources.
  • File uploads: Allows users to upload files to the server.
  • UI on Tailwind: Provides a customizable user interface with Tailwind CSS.
  • Setup ready for VueJS integration: Enables smooth integration with the VueJS frontend framework.
  • Laravel mix for UI: Enhances the UI development process by using Laravel Mix.
  • Payment processing via PayPal: Integrates with PayPal for processing payments.
  • Logging via Phuslu/Log with file rotation: Provides logging functionality with file rotation support.
  • PostGres or MySQL with GORM V2: Supports both PostGres and MySQL databases using the GORM V2 library.
  • REST API Authentication with JWT: Implements JWT-based authentication for REST APIs.
  • APP and API Separation based on JWT Token: Separates application and API logic based on JWT tokens.
  • REST-based basic auth: Provides basic authentication for REST APIs.
  • Use of Redis for Cache and Session: Utilizes Redis for caching and session management.
vue
Vue

Vue.js is a lightweight and flexible JavaScript framework that allows developers to easily build dynamic and reactive user interfaces. Its intuitive syntax, modular architecture, and focus on performance make it a popular choice for modern web development.

scss
SCSS

SCSS is a preprocessor scripting language that extends the capabilities of CSS by adding features such as variables, nesting, and mixins. It allows developers to write more efficient and maintainable CSS code, and helps to streamline the development process by reducing repetition and increasing reusability.

tailwind
Tailwind

Tailwind CSS is a utility-first CSS framework that provides pre-defined classes for building responsive and customizable user interfaces.

fullstack
Fullstack

A fullstack boilerplate provides a starter application that includes both frontend and backend. It should include database, auth, payments, user roles and other backend services to build a fully featured saas or webapps.

eslint
Eslint

ESLint is a linter for JavaScript that analyzes code to detect and report on potential problems and errors, as well as enforce consistent code style and best practices, helping developers to write cleaner, more maintainable code.

postcss
Postcss

PostCSS is a popular open-source tool that enables web developers to transform CSS styles with JavaScript plugins. It allows for efficient processing of CSS styles, from applying vendor prefixes to improving browser compatibility, ultimately resulting in cleaner, faster, and more maintainable code.

webpack
Webpack

Webpack is a popular open-source module bundler for JavaScript applications that bundles and optimizes the code and its dependencies for production-ready deployment. It can also be used to transform other types of assets such as CSS, images, and fonts.