Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merge Refactor #97

Open
wants to merge 96 commits into
base: master
Choose a base branch
from
Open

Merge Refactor #97

wants to merge 96 commits into from

Conversation

iloveicedgreentea
Copy link
Owner

@iloveicedgreentea iloveicedgreentea commented Dec 14, 2024

This is a major rewrite that completely changes how it works internally. It also makes it easier to extend to other plays via home assistant so theoretically any media_player entity can work (apple tv, kodi, etc). The kodi integration already exposes the necessary data. I have a custom_component for Plex coming soon, and Jellyfin support might be simple to add.

I use an Event abstraction so any received payload can be a "webhook". It uses a media player abstraction with common functions to support pretty much any player through "backends" which are either home assistant or plex webhooks. Technically speaking any player can have a native implementation too its just duplicative of home assistant. It just needs to implement the media player interface.

Because each major component uses abstractions it is now very easy to extend functionality if I ever want to. For example, I could reintroduce actions like controlling physical devices but at the moment theres no reason to duplicate what home assistant does.

SQLite is used to persist configs

I also redid the UI to use modern React with shadcn, tailwind, etc

Some things are not yet supported like HDMI sync that will take more time but I do have it working locally.

image

Lots of changes...
image

Im not a frontend dev but this is scalable and easy to work with

image

@iloveicedgreentea iloveicedgreentea self-assigned this Dec 14, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant