{"id":24107811,"url":"https://github.com/alessiosavi/streamingserver","last_synced_at":"2026-03-07T20:31:48.868Z","repository":{"id":43053383,"uuid":"290494356","full_name":"alessiosavi/StreamingServer","owner":"alessiosavi","description":"A simple video streaming services with authentication using redis","archived":false,"fork":false,"pushed_at":"2023-12-01T14:40:06.000Z","size":91,"stargazers_count":12,"open_issues_count":3,"forks_count":3,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-04-01T01:42:20.367Z","etag":null,"topics":["authentication","golang","redis","streaming","video-streaming-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/alessiosavi.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,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-08-26T12:47:31.000Z","updated_at":"2024-09-29T21:03:38.000Z","dependencies_parsed_at":"2023-12-01T15:47:52.306Z","dependency_job_id":null,"html_url":"https://github.com/alessiosavi/StreamingServer","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alessiosavi%2FStreamingServer","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alessiosavi%2FStreamingServer/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alessiosavi%2FStreamingServer/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alessiosavi%2FStreamingServer/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/alessiosavi","download_url":"https://codeload.github.com/alessiosavi/StreamingServer/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253796950,"owners_count":21965809,"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":["authentication","golang","redis","streaming","video-streaming-server"],"created_at":"2025-01-10T22:53:01.882Z","updated_at":"2025-09-25T09:12:10.102Z","avatar_url":"https://github.com/alessiosavi.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# StreamingServer\n\nA simple video streaming services with authentication using redis\n\n[![License](https://img.shields.io/github/license/alessiosavi/StreamingServer)](https://img.shields.io/github/license/alessiosavi/StreamingServer)\n[![Version](https://img.shields.io/github/v/tag/alessiosavi/StreamingServer)](https://img.shields.io/github/v/tag/alessiosavi/StreamingServer)\n[![Code size](https://img.shields.io/github/languages/code-size/alessiosavi/StreamingServer)](https://img.shields.io/github/languages/code-size/alessiosavi/StreamingServer)\n[![Repo size](https://img.shields.io/github/repo-size/alessiosavi/StreamingServer)](https://img.shields.io/github/repo-size/alessiosavi/StreamingServer)\n[![Issue open](https://img.shields.io/github/issues/alessiosavi/StreamingServer)](https://img.shields.io/github/issues/alessiosavi/StreamingServer)\n[![Issue closed](https://img.shields.io/github/issues-closed/alessiosavi/StreamingServer)](https://img.shields.io/github/issues-closed/alessiosavi/StreamingServer)\n[![Codacy Badge](https://api.codacy.com/project/badge/Grade/9c5dc127effe4048b33ed1718190c299)](https://app.codacy.com/manual/alessiosavi/StreamingServer?utm_source=github.com\u0026utm_medium=referral\u0026utm_content=alessiosavi/StreamingServer\u0026utm_campaign=Badge_Grade_Dashboard)\n[![Go Report Card](https://goreportcard.com/badge/github.com/alessiosavi/StreamingServer)](https://goreportcard.com/report/github.com/alessiosavi/StreamingServer)\n[![GoDoc](https://godoc.org/github.com/alessiosavi/GoGPUtils?status.svg)](https://godoc.org/github.com/alessiosavi/StreamingServer)\n\n## Introduction\n\nThis project is developed for have a plug-and-play video streaming server delegated to expose all the films downloaded\nfrom you main computer. With this tool, you can save all of you preterits films, song, videos into your PC. Then, you\ncan view these media from anywhere using an internet connection.\n\nThe server have a basic authentication system. One endpoint is delegated to register a user, another one is delegated\nto manage the log-in phase.\n\nAnother endpoint is delegated to verify the account, so before that an account is able to stream your resources, you\nhave to verify that the account is related to someone that you know\n\n## Requirements\n\n- [GoGPUtils](https://github.com/alessiosavi/GoGPUtils/string) Enhance productivity and avoid to reinvent the wheel\n  every time that you start a Go project\n- [redis](https://github.com/go-redis/redis) Type-safe Redis client for Golang\n- [fasthttp](https://github.com/valyala/fasthttp) Fast HTTP package for Go. Tuned for high performance. Zero memory\n  allocations in hot paths. Up to 10x faster than net/http\n- [logrus](https://github.com/sirupsen/logrus) Structured, pluggable logging for Go.\n- [filename](https://github.com/onrik/logrus/) Hooks for logrus logging\n\n## Table Of Contents\n\n- [StreamingServer](#StreamingServer)\n    - [Introduction](#introduction)\n    - [Requirements](#requirements)\n    - [Table Of Contents](#table-of-contents)\n    - [Prerequisites](#prerequisites)\n    - [Usage](#usage)\n    - [In Details](#in-details)\n    - [Example response](#example-response)\n    - [Contributing](#contributing)\n    - [Versioning](#versioning)\n    - [Authors](#authors)\n    - [License](#license)\n    - [Acknowledgments](#acknowledgments)\n\n## Prerequisites\n\nThe software is coded in `golang`, into the `go.mod` file are saved the necessary dependencies. In order to download all\nthe dependencies, you can type the following string from your terminal\n\n```bash\ngo get -v -u all\n```\n\n## Usage\n\n## In Details\n\n```bash\ntree\n.\n├── auth\n│   └── authutils.go\n├── conf                            // Folder that contains the configuration files \n│   ├── ssl                         // Folder that contains the certificate for the SSL connection\n│   │   ├── localhost.crt\n│   │   └── localhost.key\n│   └── test.json                   // File that contain the configuration related to the tool\n├── crypt                           \n│   └── basiccrypt.go               // basiccrypt contain the necessary method to encrypt/decrypt data\n├── database\n│   └── redis\n│       └── basicredis.go           // basicredis contain the necessary method to deal with save/load/update data from/to redis\n├── datastructures\n│   └── datastructures.go           // datastructures contain the necessary datastructure used among all the project\n├── docker-compose.yml\n├── Dockerfile\n├── go.mod\n├── go.sum\n├── log\n├── main.go\n├── README.md\n└── utils\n    ├── common\n    │   └── commonutils.go          // commonutils contain a bunch of method used as utils\n    └── http\n        └── httputils.go            // httputils contain the core method related to the HTTP functionalities\n```\n\n## Example response\n\nTODO\n\n## Contributing\n\n- Feel free to open issue in order to __*require new functionality*__;\n- Feel free to open issue __*if you discover a bug*__;\n- New idea/request/concept are very appreciated!;\n\n## Test\n\nTest are work in progress, is a good first issue for contribute to the project\n\n## Versioning\n\nWe use [SemVer](http://semver.org/) for versioning.\n\n## Authors\n\n- **Alessio Savi** - *Initial work \u0026 Concept* - [Linkedin](https://www.linkedin.com/in/alessio-savi-2136b2188/)\n    - [Github](https://github.com/alessiosavi)\n\n## Contributors\n\n- **Alessio Savi**\n\n## License\n\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details\n\n## Acknowledgments\n\nSecurity, in this phase of the development, is not my first concern. Please, fill an issue if you find something that\ncan be enhanced from a security POV","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Falessiosavi%2Fstreamingserver","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Falessiosavi%2Fstreamingserver","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Falessiosavi%2Fstreamingserver/lists"}