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

Custom Cards: Link to boilerplate is outdated and there is no alternative #1627

Closed
elmar-hinz opened this issue Jan 14, 2023 · 10 comments · Fixed by #1689
Closed

Custom Cards: Link to boilerplate is outdated and there is no alternative #1627

elmar-hinz opened this issue Jan 14, 2023 · 10 comments · Fixed by #1689

Comments

@elmar-hinz
Copy link
Contributor

Custom Cards links to this Github Repo to get new users started (or to stop them from getting stared). This is not helpful at all.

I spend many hours only to figure out finally, they use a fully outdated container. I waited more weeks to see the whole project ist dead and does not respond.

This way Home Assistant does limit itself by preventing the community to provide improved cards.

@thecode
Copy link
Member

thecode commented Jan 14, 2023

While I agree there is a link to an outdated example, note that it is marked under Community Maintained which means this is not part of Home Assistant.

In custom-cards/boilerplate-card#65 (comment) you wrote:
"I don't get it. Cards are such an important part of Home Assistant!
But it looks like Home Assistant is not interested in helping users to build cards. To official documentation is not very verbose in this topic. Instead it points to user to this boilerplate card. If you follow the README, it doesn't even work, because it is outdated and not well maintained."

Note again that this is a community repository, with the owner responsibility to what he wants to maintain but in any way I would not expect this kind of tone. I have no idea why you got to the conclusion that Home Assistant is not interested in helping users building cards.

If you are in need of support I highly recommend to try our Community Forum or join our Discord chat server.

On discord you can talk to developers and get help with building custom cards, there are many developers and they are very helpful.

I am leaving this issue open for now in case someone wants to update a link to another example or remove the current example, Please use my advice to join our Discord chat server server and keep this issue clean to prevent deleting your comments.

@elmar-hinz
Copy link
Contributor Author

@thecode

I noticed that the link points to a community maintained repository. That's part of the issue. There is no official path at all. So this issue is part of Home Assistant itself and not an issue of some outside community repo.

So, yes please leave this request open. Maybe somebody can link a better source of information or even to an official path to learn card creation.

@frenck
Copy link
Member

frenck commented Jan 15, 2023

So this issue is part of Home Assistant itself and not an issue o

So, it is not actually. While Home Assistant provides the means to build custom integration or card, Home Assistant does not support, recommend or endorse using them.

The solution to this issue is, IMHO, pretty simple. If an external link isn't relevant or outdated, it needs to be replaced or removed. As you stated, there is no real replacement, and it means removing is the only option left.

../Frenck

@elmar-hinz
Copy link
Contributor Author

elmar-hinz commented Jan 16, 2023

Definitely! Removing is better than having a pointer into a frustrating experience.

Even if the repository wasn't dead and the tools working, I would consider this boilerplate card a bad advice. The learning curve is too step. The stack is too large for creating some simple HTML tags.

It may be reasonable to use such a stack in the very end, once got a deep experience. Seeing nobody maintaining this stuff, I still have some doubts, though.

@iantrich
Copy link
Member

I remember @thomasloven having a nice barebones JS file to get a card working real quick without the full stack. Thomas, you have that gist laying around to link in the docs?

@thomasloven
Copy link
Contributor

https://gist.github.com/thomasloven/1de8c62d691e754f95b023105fe4b74b

Feel free to link it or copy it into the documentation, partly or entirely.

@elmar-hinz
Copy link
Contributor Author

elmar-hinz commented Jan 20, 2023

As a side note. I am currently working out a tutorial to get started with card development. It's just the steps, that I was missing.

I decided to recommend to use the container for core development for now. It is most likely up-to-date. While it is nice to have a tailored environment for every concern, you also need the tailors to maintain the clothes. Less could be more.

@dlavey
Copy link

dlavey commented Feb 11, 2023

As a side note. I am currently working out a tutorial to get started with card development. It's just the steps, that I was missing.

I decided to recommend to use the container for core development for now. It is most likely up-to-date. While it is nice to have a tailored environment for every concern, you also need the tailors to maintain the clothes. Less could be more.

I'd love to take a look at your tutorial if it's in a decent state.

@daniloc
Copy link

daniloc commented Feb 18, 2023

@elmar-hinz I too would love a peek at that tutorial!

@elmar-hinz
Copy link
Contributor Author

elmar-hinz commented Feb 20, 2023

@dlavey @daniloc Thanks for asking. You find it here: https://github.com/home-assistant-tutorials

The next step would be to write about the Lit element. If I don't want to include it from remote, I have to set up the project to generate it locally. That seems to be the point, where all this bloated stuff gets in. Why?

Many libraries are based on node.js and node.js was developed for the backend. To use them in frontend, all this tools have to be run for adoption and module management. Finally a large single javascript file gets thrown out. That's at least how I understand it so far.

So for the next step I have to understand and document the full development stack of temporary frontend development at least to the extend to point out a reasonable path to learn it.

Once it was as easy as writing a few lines of code to get some javascript up and running. Today there is a lot of administrative overhead as javascript originally was not designed for multi-file-libraries. Even if there are tools to automate it, you have to learn this tools first. Not a friendly field for hobbyists at the moment until they established easy to use standards.

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 a pull request may close this issue.

7 participants