{"id":13836876,"url":"https://github.com/goaltools/goal","last_synced_at":"2025-07-10T16:31:09.809Z","repository":{"id":29259845,"uuid":"32792456","full_name":"goaltools/goal","owner":"goaltools","description":"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.","archived":false,"fork":false,"pushed_at":"2016-12-17T08:19:18.000Z","size":1135,"stargazers_count":87,"open_issues_count":12,"forks_count":3,"subscribers_count":5,"default_branch":"master","last_synced_at":"2024-08-05T15:05:23.808Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-2-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/goaltools.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2015-03-24T10:44:50.000Z","updated_at":"2024-05-13T22:51:03.000Z","dependencies_parsed_at":"2022-09-05T12:01:27.294Z","dependency_job_id":null,"html_url":"https://github.com/goaltools/goal","commit_stats":null,"previous_names":["colegion/goal","anonx/sunplate"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/goaltools%2Fgoal","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/goaltools%2Fgoal/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/goaltools%2Fgoal/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/goaltools%2Fgoal/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/goaltools","download_url":"https://codeload.github.com/goaltools/goal/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":225647937,"owners_count":17502153,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-08-04T15:00:56.210Z","updated_at":"2024-11-20T23:31:54.970Z","avatar_url":"https://github.com/goaltools.png","language":"Go","funding_links":[],"categories":["Go"],"sub_categories":[],"readme":"# Goal\n**Goal is a set of tools for high productivity web development in Go language.**\n\nGoal, being mostly inspired by [Revel Framework](https://github.com/revel/revel)\nand its discussions, is built around the concept of controllers and actions.\nHowever, as opposed to Revel and other high level frameworks Goal does not use runtime\nreflection and does not require your app to import monolithic dependencies.\n\nInstead Goal is implemented in a form of independent tools that\nmay be used with [`go generate`](https://blog.golang.org/generate).\nThat allows us to achieve type safety, minimalism of dependencies,\ncompatability with the standard library, and productivity for the end-developers.\nAt the same time Goal is very customizable (you can bring your own router, template system,\nand any other component). But that's without prejudice to the easiness and seamless of experience\nthanks to good defaults.\n\n### Getting Started\n\n1. Install Goal:\n\n        go get -u github.com/goaltools/goal\n\n2. Create a [new skeleton application](https://goaltools.github.io/manual/new/index.html):\n\n        goal new github.com/$username/$project\n\n3. Start a [watcher / task runner](https://goaltools.github.io/manual/run/index.html):\n\n        goal run github.com/$username/$project\n\n### Documentation\n\n* **[goaltools.github.io](https://goaltools.github.io)**\n  * [Introduction](https://goaltools.github.io/manual/index.html)\n  * [`goal new`](https://goaltools.github.io/manual/new/index.html) - generate skeleton application\n  * [`goal run`](https://goaltools.github.io/manual/run/index.html) - start watcher / task runner\n  * [`goal generate handlers`](https://goaltools.github.io/manual/handlers/index.html) - generate HTTP handler functions\n    * [Actions](https://goaltools.github.io/manual/handlers/actions.html)\n    * [Controllers](https://goaltools.github.io/manual/handlers/controllers.html)\n    * [Routes](https://goaltools.github.io/manual/handlers/routes.html) - a slice of routes and handler functions associated with them\n  * `goal generate listing` - ~~generate a list of file paths~~ (deprecated)\n\nAll `goal generate *` tools may be used with [`go generate`](https://blog.golang.org/generate).\n\n### Status\n\n**Proof of Concept**: not ready for use in the wild. **Working on**: splitting the project into\nindependent repos.\n\n[![GoDoc](https://godoc.org/github.com/goaltools/goal?status.svg)](https://godoc.org/github.com/goaltools/goal)\n[![Build Status](https://travis-ci.org/goaltools/goal.svg?branch=master)](https://travis-ci.org/goaltools/goal)\n[![Coverage Status](https://coveralls.io/repos/github/goaltools/goal/badge.svg?branch=master)](https://coveralls.io/github/goaltools/goal?branch=master)\n[![Go Report Card](http://goreportcard.com/badge/goaltools/goal?t=3)](http:/goreportcard.com/report/goaltools/goal)\n\n### License\nDistributed under the BSD 2-clause \"Simplified\" License unless otherwise noted.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgoaltools%2Fgoal","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgoaltools%2Fgoal","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgoaltools%2Fgoal/lists"}