Skip to content

goaltools/goal

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Goal

Goal is a set of tools for high productivity web development in Go language.

Goal, being mostly inspired by Revel Framework and its discussions, is built around the concept of controllers and actions. However, as opposed to Revel and other high level frameworks Goal does not use runtime reflection and does not require your app to import monolithic dependencies.

Instead Goal is implemented in a form of independent tools that may be used with go generate. That allows us to achieve type safety, minimalism of dependencies, compatability with the standard library, and productivity for the end-developers. At the same time Goal is very customizable (you can bring your own router, template system, and any other component). But that's without prejudice to the easiness and seamless of experience thanks to good defaults.

Getting Started

  1. Install Goal:

     go get -u github.com/goaltools/goal
    
  2. Create a new skeleton application:

     goal new github.com/$username/$project
    
  3. Start a watcher / task runner:

     goal run github.com/$username/$project
    

Documentation

All goal generate * tools may be used with go generate.

Status

Proof of Concept: not ready for use in the wild. Working on: splitting the project into independent repos.

GoDoc Build Status Coverage Status Go Report Card

License

Distributed under the BSD 2-clause "Simplified" License unless otherwise noted.

About

Goal is a toolkit for high productivity web development in Go language in the spirit of Revel Framework that is built around the concept of code generation.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages