Skip to content

GinBoot is a utility library for the Gin Web Framework that simplifies common tasks in web application development, including database operations, API request handling, and error management. The library is designed to enhance productivity by providing reusable, customizable components.

Notifications You must be signed in to change notification settings

Klass-lk/GinBoot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

74 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Ginboot Framework

A lightweight and powerful Go web framework built on top of Gin, designed for building scalable web applications with MongoDB integration and AWS Lambda support.

Setup

Prerequisites

  • Go 1.21 or later
  • MongoDB (for local development)
  • AWS SAM CLI (for deployment)
  • AWS credentials configured

Installation

  1. Install the Ginboot CLI tool:
go install github.com/klass-lk/ginboot-cli@latest
  1. Create a new project:
# Create a new project
ginboot new myproject

# Navigate to project directory
cd myproject

# Initialize dependencies
go mod tidy
  1. Run locally:
go run main.go

Your API will be available at http://localhost:8080/api/v1

Build and Deploy

To deploy your application to AWS Lambda:

# Build the project for AWS Lambda
ginboot build

# Deploy to AWS
ginboot deploy

On first deployment, you'll be prompted for:

  • Stack name (defaults to project name)
  • AWS Region
  • S3 bucket configuration

These settings will be saved in ginboot-app.yml for future deployments.

Features

  • Database Operations: Built-in multi-database support (MongoDB, SQL, DynamoDB) through a generic repository interface, enabling common CRUD operations with minimal code.
  • API Request Handling: Simplified API request and authentication context extraction.
  • Error Handling: Easily define and manage business errors.
  • Password Encoding: Inbuilt password hashing and matching utility for secure authentication.
  • CORS Configuration: Flexible CORS setup with both default and custom configurations.

Installation

To install GinBoot, add it to your project:

go get github.com/klass-lk/ginboot

Documentation

For more detailed information on Ginboot's features and usage, refer to the following documentation:

Contributing

Contributions are welcome! Please read our contributing guidelines for more details.

License

This project is licensed under the MIT License. See the LICENSE file for details.

About

GinBoot is a utility library for the Gin Web Framework that simplifies common tasks in web application development, including database operations, API request handling, and error management. The library is designed to enhance productivity by providing reusable, customizable components.

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages