{"id":36446148,"url":"https://github.com/tiny-go/lite","last_synced_at":"2026-01-11T22:44:50.717Z","repository":{"id":57505241,"uuid":"130372835","full_name":"tiny-go/lite","owner":"tiny-go","description":"Simple tool for building RESTful APIs","archived":false,"fork":false,"pushed_at":"2020-01-04T19:12:25.000Z","size":66,"stargazers_count":1,"open_issues_count":2,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-08-15T00:10:50.085Z","etag":null,"topics":["api","golang","restful","server"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/tiny-go.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":"2018-04-20T14:25:29.000Z","updated_at":"2023-06-23T03:02:25.000Z","dependencies_parsed_at":"2022-08-22T09:00:25.984Z","dependency_job_id":null,"html_url":"https://github.com/tiny-go/lite","commit_stats":null,"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"purl":"pkg:github/tiny-go/lite","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tiny-go%2Flite","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tiny-go%2Flite/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tiny-go%2Flite/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tiny-go%2Flite/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tiny-go","download_url":"https://codeload.github.com/tiny-go/lite/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tiny-go%2Flite/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28326144,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-11T22:11:01.104Z","status":"ssl_error","status_checked_at":"2026-01-11T22:10:58.990Z","response_time":60,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":["api","golang","restful","server"],"created_at":"2026-01-11T22:44:50.156Z","updated_at":"2026-01-11T22:44:50.712Z","avatar_url":"https://github.com/tiny-go.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# lite\n\n[![GoDoc][godoc-badge]][godoc-link]\n[![License][license-badge]][license-link]\n[![Build Status][circleci-badge]][circleci-link]\n[![Report Card][report-badge]][report-link]\n[![GoCover][cover-badge]][cover-link]\n\nSimple tool for building RESTful APIs\n\n### Installation\n```bash\ngo get -u github.com/tiny-go/lite\n```\n\n### Modules\nYou can use `BaseModule` that provides basic module functionality (such as register/unregister/list) or write your own implementation. `BaseModule` already contains `Register`, `Unregister` and `Controllers` methods and implements `Module` interface.\n\n### Controllers\nAny golang `func`, `struct` or custom type can be used as a controller provided that it implements `Controller` interface and has some action methods, such as `Get`/`GetAll`/`Post`/`PostAll`/... (check the entire list in `interfaces.go`).\n\n### Dependencies\nIf you need to pass some dependencies (like config, database connection etc) to your module/controller use `handler.Map(dep)`, it will be passed to the module/controller (use struct tag ``inject:\"true\"`` in front of the struct fields that should be injected). Take a look at `example` folder for more information (for instance `example/auth/user/controller.go`).\n\n### Usage\n```go\npackage main\n\nimport (\n\t\"log\"\n\t\"net/http\"\n\n\t\"github.com/tiny-go/lite\"\n\t// register codecs\n\t\"github.com/tiny-go/codec/driver\"\n\t_ \"github.com/tiny-go/codec/driver/json\"\n\t_ \"github.com/tiny-go/codec/driver/xml\"\n)\n\nfunc main() {\n\t// set default codec\n\tdriver.Default(\"application/json\")\n\t// create new handler\n\thandler := lite.NewHandler()\n\t// map dependencies\n\thandler.Map(depA)\n\thandler.Map(depB)\n\thandler.Map(depC)\n\t// register modules\n\thandler.Use(aliasOne, moduleA)\n\thandler.Use(aliasTwo, moduleB)\n\t// start HTTP server\n\tlog.Fatal(http.ListenAndServe(\":8080\", handler))\n}\n```\n\n[godoc-badge]: https://godoc.org/github.com/tiny-go/lite?status.svg\n[godoc-link]: https://godoc.org/github.com/tiny-go/lite\n[license-badge]: https://img.shields.io/:license-MIT-green.svg\n[license-link]: https://opensource.org/licenses/MIT\n[circleci-badge]: https://circleci.com/gh/tiny-go/lite.svg?style=shield\n[circleci-link]: https://circleci.com/gh/tiny-go/lite\n[report-badge]: https://goreportcard.com/badge/github.com/tiny-go/lite\n[report-link]: https://goreportcard.com/report/github.com/tiny-go/lite\n[cover-badge]: https://gocover.io/_badge/github.com/tiny-go/lite\n[cover-link]: https://gocover.io/github.com/tiny-go/lite\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftiny-go%2Flite","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftiny-go%2Flite","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftiny-go%2Flite/lists"}