https://github.com/gernest/utron
A lightweight MVC framework for Go(Golang)
https://github.com/gernest/utron
golang lightweight-mvc-framework mvc utron
Last synced: about 2 months ago
JSON representation
A lightweight MVC framework for Go(Golang)
- Host: GitHub
- URL: https://github.com/gernest/utron
- Owner: gernest
- License: mit
- Archived: true
- Created: 2015-09-16T07:55:54.000Z (over 10 years ago)
- Default Branch: master
- Last Pushed: 2018-10-28T20:04:59.000Z (over 7 years ago)
- Last Synced: 2025-09-28T21:33:45.472Z (5 months ago)
- Topics: golang, lightweight-mvc-framework, mvc, utron
- Language: Go
- Homepage:
- Size: 1.27 MB
- Stars: 2,221
- Watchers: 69
- Forks: 149
- Open Issues: 8
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
- awesome-go-cn - utron
- go-awesome - utron
- go-awesome - utron
- awesome-go - utron - Lightweight MVC framework for Go(Golang). Stars:`2.2K`. (Web Frameworks / Utility/Miscellaneous)
- awesome-go-zh - utron
- awesome-go - utron - Lightweight MVC framework for Go(Golang). (Web Frameworks / Utility/Miscellaneous)
- awesome-go-info - utron
- awesome-Char - utron - Lightweight MVC framework for Go(Golang). (Web Frameworks / HTTP Clients)
- awesome-go - utron - A lightweight MVC framework for Go(Golang) - ★ 2088 (Web Frameworks)
- awesome-go - utron
- awesome-go-cn - utron
- awesome-go - utron - Lightweight MVC framework for Go(Golang). (Web Frameworks / Advanced Console UIs)
- go-awesome-with-star-updatetime - utron - Lightweight MVC framework for Go(Golang). (Web Frameworks / HTTP Clients)
- awesome-go-extra - utron - 09-16T07:55:54Z|2018-10-28T20:04:59Z| (Web Frameworks / Fail injection)
- awesome-go - utron - Lightweight MVC framework for Go(Golang). (Web Frameworks / Utility/Miscellaneous)
- awesome-go-processed - utron - Lightweight MVC framework for Go(Golang).| (Web Frameworks / Advanced Console UIs)
- awesome-go - utron - Lightweight MVC framework for Go(Golang). (Web Frameworks / HTTP Clients)
- awesome-go - utron - Lightweight MVC framework for Go(Golang). (Web Frameworks / Utility/Miscellaneous)
- awesome-go-cn - utron
- awesome-go - utron - Lightweight MVC framework for Go(Golang). (Web Frameworks / <span id="高级控制台用户界面-advanced-console-uis">高级控制台用户界面 Advanced Console UIs</span>)
- awesome-go - utron - Lightweight MVC framework for Go(Golang). (Web Frameworks / Utility/Miscellaneous)
- awesome-go - utron - Lightweight MVC framework for Go(Golang). - :arrow_down:15 - :star:1615 (Web Frameworks / HTTP Clients)
README

# utron
[](https://godoc.org/github.com/gernest/utron) [](https://coveralls.io/github/gernest/utron?branch=master) [](https://travis-ci.org/gernest/utron) [](https://gitter.im/gernest/utron?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge) [](https://goreportcard.com/report/github.com/gernest/utron)
`utron` is a lightweight MVC framework in Go ([Golang](https://golang.org)) for building fast, scalable and robust database-driven web applications.
# Features
* [x] Postgres, MySQL, SQLite and Foundation database support
* [x] Modular (you can choose which components to use)
* [x] Middleware support. All [alice](https://github.com/justinas/alice) compatible Middleware works out of the box
* [x] Gopher spirit (write golang, use all the golang libraries you like)
* [x] Lightweight. Only MVC
* [x] Multiple configuration files support (currently json, yaml, toml and hcl)
# Overview
`utron` is a lightweight MVC framework. It is based on the principles of simplicity, relevance and elegance.
* Simplicity. The design is simple, easy to understand, and doesn't introduce many layers between you and the standard library. It is a goal of the project that users should be able to understand the whole framework in a single day.
* Relevance. `utron` doesn't assume anything. We focus on things that matter, this way we are able to ensure easy maintenance and keep the system well-organized, well-planned and sweet.
* Elegance. `utron` uses golang best practises. We are not afraid of heights, it's just that we need a parachute in our backpack. The source code is heavily documented, any functionality should be well explained and well tested.
## Motivation
After two years of playing with golang, I have looked on some of my projects and asked myself: "How golang is that?"
So, `utron` is my reimagining of lightweight MVC, that maintains the golang spirit, and works seamlessly with the current libraries.
## Installation
`utron` works with Go 1.4+
go get github.com/gernest/utron
For the Old API use
go get gopkg.in/gernest/utron.v1
# Tutorials
- [create a todo list application with utron](https://github.com/utronframework/tutorials/blob/master/create_todo_list_application_with_utron.md)
- [use custom not found handler in utron](https://github.com/utronframework/tutorials/blob/master/set_not_found_handler.md)
## Sample application
- [Todo list](https://github.com/utronframework/todo)
- [File Upload](https://github.com/utronframework/upload)
- [chat](https://github.com/utronframework/chat)
# Contributing
Start with clicking the star button to make the author and his neighbors happy. Then fork the repository and submit a pull request for whatever change you want to be added to this project.
If you have any questions, just open an issue.
# Author
Geofrey Ernest
Twitter : [@gernesti](https://twitter.com/gernesti)
# Acknowledgements
These amazing projects have made `utron` possible:
* [gorilla mux](https://github.com/gorilla/mux)
* [ita](https://github.com/gernest/ita)
* [gorm](https://github.com/jinzhu/gorm)
* [alice](https://github.com/justinas/alice)
* [golang](http://golang.org)
# Licence
This project is released under the MIT licence. See [LICENCE](LICENCE) for more details.