Skip to content

krystejj/klark-server

Repository files navigation

Klark banner

Klark Server

A modern and feature-rich media server and collection manager. Part of The Klark Project.

License Latest Release Issues Pull Requests Discussions

Caution

This software is in VERY, and I really mean VERY early stage of development! It still doesn't have the most basic features and could even not work at all. It is basically unusable for now, because there isn't even what to use at this stage.

Warning

Be prepared for a firestorm! I (krystejj) am still learning to code in Rust. That means there can be major and really basic bugs in my code. While I am expanding my experience with Rust and learning new things, be aware that you may find even most basic mistakes here. You can always create a pull request or issue in this repo when you find or encounter any error, all help is always appreciated.

Klark is a free, modern and open-source media server and collection manager, as a part of The Klark Project. It hosts an API which frontends can use, it also can host a web frontend if you like. Klark allows you to easily watch your collected movies, tv series or photos, listen to your music and read your ebooks, manage them, search and download new using BitTorrent, and all of this from any device you want through the client. Klark also aims to be very fast, performant and easy to use.

💻 Clients / Frontends

Currently only one main client is in development, that is the Klark Svelte Frontend. However, other clients like Android or Apple TV apps are also planned, but web frontend is one with highest priority for now because of very early stage of development. You can create a new client on your own if you like.

There are also plans for Jellyfin protocol support. That means you could use any Jellyfin client like Jellyfin Android or Swiftfin with your Klark server. Other protocols might be supported too.

In development:

📖 Project Management

All notable changes to this project will be documented in the changelog file. The format of that file is based on Keep a Changelog 1.1.0.

This project adheres to Semantic Versioning 2.0.0.

You can find this project backlog in projects tab in this repo.

If you would find any bug, some type of issue or you have an idea for improving a project, you can file a report using issues page in this repo or create a pull request. Discussions are also available.

Information about security lies in security policy file.

🔗 Version Compatibility

Klark server data (databases and configs) schema is still in development. That means, change in data schema can occur at any time. It will be necessary to delete those files so Klark can recreate them using new schema (note that you will lose your data when doing so). This will not be needed when data schema will become stable. When schema becomes stable, new Klark server versions will automatically convert old data files to new schema if such a convertion would be needed.

🙏 Used Projects and Credits

This is a list of projects used in development of this project:

  • Rust - an incredibly fast and reliable programming language that guarantees memory and thread safety.
  • Actix - a powerful and extremely fast web framework for Rust.

💗 Big thanks to the creators and all contributors of these projects.

📜 License

This project is provided under the terms of the GNU General Public License v3.0, a free and open-source license. For more information, see the license file.

About

A modern and powerful media server and collection manager. Part of the Klark project.

Topics

Resources

License

Security policy

Stars

Watchers

Forks

Releases

No releases published

Languages