-
Notifications
You must be signed in to change notification settings - Fork 0
Description
Users of Marble nodes can currently log in through the Jupyterhub or Magpie components. However, Jupyterhub is not required on all nodes and Magpie's UI design/branding do not match Marble which may be confusing for users. Instead, we need a Marble branded login page that allows users to sign in/manage their account like they would do on Magpie.
This UI should be implemented as an optional component in the birdhouse-deploy stack (https://github.com/bird-house/birdhouse-deploy/) and should interact with the other components as follows:
- Logging in should log in the user through the Magpie API and the Jupyterhub API (if enabled)
- Logging out should log out the user through the Magpie API and the Jupyterhub API (if enabled)
- Users should be able to change their email, password, etc. through the Magpie API
- If network mode Ouranosinc/Magpie#589 ever gets implemented:
- users should be able to view, create, and delete links to other nodes
This UI may also include any other information that would be useful to a user logged in to a Marble node as long as it can acquire that information from the various components deployed for the given node.
Note: this component will be used by the Marble software stack but the code will be part of birdhouse-deploy. This means that the code/UI cannot contain any Marble branded content. Instead all branding information should be configurable. Branding content includes: logos, references to Marble and DACCS, any components, messages, etc. that only make sense in the context of Marble.
One example of how to do this would be to create a configuration file (I recommend TOML syntax) and using the configurations outlined in that file to build the website (using a templating framework like jinja2). This configuration file could contain required/recommended settings for Marble nodes that can be applied separately.
Participants/Roles:
- Shruti Katkar: UX research, wireframe design
- Alex Yu: UI development
- Misha Schwartz: integration with the birdhouse-deploy stack
Deliverables:
- wireframes
- UI implementation of wireframe
- component in birdhouse-deploy
- configuration file that contains all Marble branded settings