Skip to content

0to1a/gofarm

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

46 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Reliability Rating Maintainability Rating GitHub issues GitHub license Supported Go Versions

What is GoFarm

GoFarm is an Application Development Framework for especially a Backend Developer with Golang. Our goal is to develop easier, standardized, and faster than you code from scratch. Simplify the interface and logic structure for an easy-to-maintain project.

GoFarm lets you create a better project, decreasing the learning curve and minimizing the amount of code needed. Let's contribute and make it better :)

Installation

We need some components to support Build & Deploy working well. Need to install:

For GoFarm Assistant / CLI:

Still in progress

For database generator:

go install github.com/volatiletech/sqlboiler/v4@latest
go install github.com/volatiletech/sqlboiler/blob/master/drivers/sqlboiler-mysql@latest
go install github.com/volatiletech/sqlboiler/v4/drivers/sqlboiler-psql@latest
go install github.com/volatiletech/sqlboiler/v4/drivers/sqlboiler-sqlite3@latest

Usage

Git clone from this repository or download here. To build use:

go build .

For download all dependencies, you can use:

go get ./...

Concept

  • Rapid Development: Analyzed behavior & Designed for Backend Engineer. Make better to maintain and rapid development. Reuse your modules and connect the dot quickly.
  • Performance First: Framework with a small footprint, make it not costly for production-grade.
  • Dual-Architecture: Using Microservices concept, but can deploy as single apps / Monolith. Just move the module to a new project, and the app will separate & become a microservice.
  • Structured: Single pattern of writing code (like MVC), makes other developers read & maintain easily. Minimizing the learning curve is our focus.
  • Clean Deployment: Focus on a clean structure to make the sure better deployment.

Requirement

Golang version 1.16+ and Go-Mod supported.

Feature on Next Development

  • Better logging system
  • GoFarm Assistant, like PHP Artisan-Laravel / Lumen
  • Continuable framework scaling & dependency module
  • Unit test, framework coverage
  • Unit test, project structure
  • Database migration pattern / tools
  • Postgres database connection
  • Sqlite database connection
  • Usage Documentation & Best-practice guidance
  • Support Docker deployment
  • Serverless Architecture deployment
  • Redis connection
  • Built-in cron job

Changelog and New Feature

You can find on GitHub's Release

Looking to contribute? Try to follow these guidelines:

  • Use issues for idea, bug, issue, or everything in your mind
  • For small change, please use PR
  • Help us on test, documentation, and create examples usage
  • Please improve this project to make better framework

Dependencies & Big Thanks for

  • github.com/labstack/echo
  • github.com/go-sql-driver/mysql
  • github.com/doug-martin/goqu
  • github.com/golang-jwt/jwt
  • github.com/go-co-op/gocron
  • github.com/go-redis/redis
  • github.com/volatiletech/sqlboiler
  • github.com/golang-migrate/migrate

About

Open Source Golang Framework, designed for Backend Developer

Resources

License

Code of conduct

Stars

Watchers

Forks

Packages

No packages published

Contributors 3

  •  
  •  
  •  

Languages