Skip to content

Explicit Demo Mode #18946

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

Open
naltatis opened this issue Feb 18, 2025 · 10 comments · May be fixed by #21514
Open

Explicit Demo Mode #18946

naltatis opened this issue Feb 18, 2025 · 10 comments · May be fixed by #21514
Assignees
Labels
backlog Things to do later ux User experience/ interface

Comments

@naltatis
Copy link
Member

naltatis commented Feb 18, 2025

evcc enters Demo Mode when no evcc.config was found. Currently it's possible to add devices via Config UI in Demo Mode, which leads to a wired mixed setup.

Wanted behavior:

  • demo mode only with a specific flag (e.g. --demo)
  • disable auth, config ui, restart, ... in demo mode
  • allow UI configuration without an (empty) evcc.yaml

Note: Update documentations and demo instance accordingly

@naltatis naltatis added the ux User experience/ interface label Feb 18, 2025
@naltatis naltatis self-assigned this Feb 18, 2025
@github-actions github-actions bot added the stale Outdated and ready to close label Feb 25, 2025
@github-actions github-actions bot closed this as not planned Won't fix, can't repro, duplicate, stale Mar 2, 2025
@naltatis naltatis reopened this Mar 2, 2025
@naltatis naltatis removed the stale Outdated and ready to close label Mar 2, 2025
@github-actions github-actions bot added the stale Outdated and ready to close label Mar 9, 2025
@naltatis naltatis removed the stale Outdated and ready to close label Mar 12, 2025
@github-actions github-actions bot added the stale Outdated and ready to close label Mar 19, 2025
@github-actions github-actions bot closed this as not planned Won't fix, can't repro, duplicate, stale Mar 24, 2025
@naltatis naltatis added backlog Things to do later and removed stale Outdated and ready to close labels Mar 24, 2025
@naltatis naltatis reopened this Mar 24, 2025
@chrispi68

This comment has been minimized.

@naltatis

This comment has been minimized.

@chrispi68

This comment has been minimized.

@Maschga

This comment has been minimized.

@chrispi68

This comment has been minimized.

@Maschga

This comment has been minimized.

@naltatis
Copy link
Member Author

@chrispi68 GitHub bot closes issues after a certain amount of inactivity to keep our issues clean. That's why it was closed. We're planning to do this. That's why I've reopened and added the backlog tag. backlog issues are things we definitely want to address habe event found the time yet.

And yes, like @Maschga says. What you're describing should definitely work today. Please open a discussion with more details.

@guido4096
Copy link
Contributor

guido4096 commented May 26, 2025

@naltatis I've started exploring this. If nobody else is working on this, you can assign it to me.

Question on the "disable config ui" -> I intend to do this by disabling the "editing" buttons client side. Basically the client will know that it is running in demo mode. This way, you can still see the configuration page. Is that what you intended? Do you think it is important to also disable the api on the server side?

For "disable restart", I think both server and client side should disable that functionality to avoid accidents, does that make sense?

@guido4096
Copy link
Contributor

If you want to have a peek at size of the code changes, review here: https://github.com/guido4096/evcc/tree/explicit-demo-mode

@naltatis naltatis assigned guido4096 and unassigned naltatis May 26, 2025
@naltatis
Copy link
Member Author

Hi @guido4096, thanks for working on this. I've looked through your PoC commit and it looks good so far. I have some remarks like how to publish if we are in demo or not, but I'll post that once you've opened a PR here.

This way, you can still see the configuration page. Is that what you intended?

We should definitely disable the features server-side. For use-cases like the demo.evcc.io we dont want people modify the configuration. I'd remove the config ui page in demo mode completely. At least in the first iteration. I see that having a read-only mode would be nice for new users to explore all the toggles and switches, but this is not trivial and would require quite a bite of change.

Generally I'd say everything that is auth-protected right now should be disabled in demo mode. We could introduce a dedicated status code or message similar to 401 unauthorized (triggers login modal) that triggers a "not available in demo mode" message.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
backlog Things to do later ux User experience/ interface
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants