[WIP] Self-hosted media streaming server designed as an alternative to Plex, allowing you to monitor and manage your movie and TV show files on a headless server.
Due to community concerns and dislike stemming from early Iris drama, it is necessary to migrate the project from Iris, a web framework, to Go Fiber. This migration will address the community's feedback and ensure a more positive development environment.
This issue is created to track the process of migrating the web framework from Iris to Go Fiber. The migration will involve updating the dependencies, modifying the existing codebase, and ensuring that all the functionality remains intact.
Goals of the migration:
Address community concerns and dissatisfaction related to Iris.
Enhance maintainability and community support.
Leverage the features and benefits of Go Fiber.
Tasks involved in the migration:
Update the project dependencies to use Go Fiber.
Refactor the existing codebase to work with Go Fiber's API.
Update the routing logic and middleware to align with Go Fiber.
Test the application thoroughly to ensure all functionalities are working as expected.
use authentication to and use username and password combination for login and signup. on login return x-api-key which will be used to access and modify data.
Is your feature request related to a problem? Please describe.
I have an old Windows PC running as my main server and I want to run this amazing project without MongoDB. Currently lunarr-go seems to be only supporting MongoDB as database.
Describe the solution you'd like
It would be nice if this project can integrate other self-contained database that do not require external database connections, like SQLite or KeyValue stores like BoltDB. If this is too much work for the project maintainer, a middleware for the database access will be great as well (so other contributors can add in their preferred database for this project). This can be done via designing an interface for the required database functions and use that middleware as abstraction to build other system functions.
Additional context
It can also be implemented as a fallback so when mongodb is not detected, the system won't panic but fallback to the build in self-contained db.