{"id":13515090,"url":"https://github.com/mentix02/lightning","last_synced_at":"2026-01-16T10:31:01.015Z","repository":{"id":57606177,"uuid":"228616906","full_name":"mentix02/lightning","owner":"mentix02","description":"A blazingly fast API server for The Medialist written in Go.","archived":false,"fork":false,"pushed_at":"2020-03-16T07:42:12.000Z","size":53,"stargazers_count":0,"open_issues_count":1,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-03-31T04:36:26.416Z","etag":null,"topics":["go","lightning","server"],"latest_commit_sha":null,"homepage":null,"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/mentix02.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":"2019-12-17T12:57:06.000Z","updated_at":"2020-03-16T07:42:14.000Z","dependencies_parsed_at":"2022-08-26T17:12:48.505Z","dependency_job_id":null,"html_url":"https://github.com/mentix02/lightning","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/mentix02/lightning","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mentix02%2Flightning","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mentix02%2Flightning/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mentix02%2Flightning/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mentix02%2Flightning/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mentix02","download_url":"https://codeload.github.com/mentix02/lightning/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mentix02%2Flightning/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28478050,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-16T06:30:42.265Z","status":"ssl_error","status_checked_at":"2026-01-16T06:30:16.248Z","response_time":107,"last_error":"SSL_read: 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":["go","lightning","server"],"created_at":"2024-08-01T05:01:06.191Z","updated_at":"2026-01-16T10:31:00.677Z","avatar_url":"https://github.com/mentix02.png","language":"Go","funding_links":[],"categories":["Go"],"sub_categories":[],"readme":"# Lightning\n![CircleCI](https://img.shields.io/circleci/build/github/mentix02/lightning/master)\n![GitHub code size in bytes](https://img.shields.io/github/languages/code-size/mentix02/lightning)\n[![GitHub license](https://img.shields.io/github/license/mentix02/lightning)](https://github.com/mentix02/lightning/blob/master/LICENSE)\n[![Go Report Card](https://goreportcard.com/badge/github.com/mentix02/lightning)](https://goreportcard.com/report/github.com/mentix02/lightning)\n\nA **simple** \u0026 blazingly fast API server for The Medialist.\n\nSome highly critical function calls that require to be fast live over here. This project was started due to the slow\nresponse times achieved from the views from the server running Django. Since the majority of the backend is written in\nPython, there's no point in re-writing the entire codebase but for the views that perform **simple** retrievals (with proper \nauthentication, of course), Go seems to be an apt fit to implement them in. The pattern is a **simple** \"model controller\"\npattern since the only models we're working with are predefined from Django's ORM and we only return\nJSON responses.\n\nThe server used is provided by Go's built in `http` package and that lives inside [`main.go`](main.go). All the handlers, \naka the views, are written in [`handlers.go`](handlers.go).\nThe router used is the more than capable [mux](https://github.com/gorilla/mux) router. All the model operations\n(mostly retrievals) live inside [`db.go`](db.go). There's some special data types that Go does not provide a good interface\nfor and thus they are all stored inside [`structs.go`](structs.go) - examples include a singly linked list for storing\nprimary keys from database fetches.\n\nAll the handlers return JSON and thus there are no templates to work with. The frontend will most likely be served from\nthe Django server but it might be implemented in Go in the future.\n\nSince the project is mostly bare-bones Go with very few dependencies, no package manager is used. Proper documentation\nis in development and will be coming soon.\n\n## Documentation\n\nDocumentation can be found [here](docs).\n\n## License\n\nLightning is licensed under the MIT license.\n\n## Contributing\n\nLightning is a highly critical project and is, as of now, not accepting any pull requests since there is no formal\ncontributing guides or a CI endpoint available. But they're both in development and will soon be available.\n\n## Further Reading\n\nIf you're here, check out the main backend written in Python - [medialist-backend](https://github.com/mentix02/medialist-backend).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmentix02%2Flightning","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmentix02%2Flightning","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmentix02%2Flightning/lists"}