Team UX Roadmap (June to December)

ux
ui

#1

Here is our roadmap of items we’re planning on working on over the next six months.

This is obviously subject to change but please provide any feedback that you have. Most of these items are already in progress.

  1. Create a way to extend components in react (slot/fill)

  2. Downstream login page branding (6.7)

  3. Stabilize the build/release process

  4. Bring SCSS into webpack

    • Research how exactly to do this
    • @theforeman/vendor - will provide the base scss 3rd party libs with their variables and mixins.
    • @theforeman/builder - will provide the building tools so core and plugins can build their scss files to css files.
    • Katello/bastion scss
  5. Support react development in plugins

    • Using small packages we can share with core and plugins.
      Redesigning the javascript stack
    • Moving infra related code to shared packages
    • Creating/stabilizing needed infrastructure
      • @theforeman/vendor
      • @theforeman/env
      • @theforeman/builder
      • @theforeman/core
        • Components
        • I18n
        • Router
        • slot-and-fill
        • Tour
        • Forms
        • Networking
        • State
        • Legacy Bridge
        • Modals infra
  6. Simple host wizard

    • Create/provision host based on subset of options (i.e. the happy path)
    • “Expert mode”= old form

#2

Thanks for sharing. I’m really looking forward to seeing 3, 5 and 1 implemented.

For the simple host form, I’d like to share the mockups/specs we did for Lisa if that helps.
http://upload.website4free.de/download/0TRgrKcB/Stage_2_mockups.pdf
http://upload.website4free.de/download/Sn6hTweQ/Stage_2_specs.pdf

We’re also planning on open sourcing lisa, we just need all the required graphql code in core first. I’d be ok with sharing access to the code with a few developers beforehand. Just let me know if you’re interested.


#3

Are there any mockups how this is planned to look?


#4

We would also be interested in this. As coincidence would have it, we are in the early planning stage of working on a plugin to do something similar. If this is coming to foreman itself or if TimoGoebel is planning to open source a solution that already does this, we would obviously rather help with those efforts, rather than reinventing the wheel.

For our use case it would ultimately be important, that such a simple host wizard can be configured, so as to allow administrators to choose which subset of options users still needs to set for various predefined deployments.


#5

I believe @Roxanne_Hoover or @terezanovotna did some preliminary mockups around this - I’m sure they’d be happy to share their work around this for more feedback.


#6

As @quba42 already said, we(I)'d be happy to participate in 6).

That feature will definitely increase the accessibility of foreman.


#7

Yes, I have mockups! They are a little dated at this point and need to be updated. Specifically after meeting with Timo, he had an excellent suggestion of adding a “quantity” of hosts mechanism. Give me a little bit to grab those mockups and have them in a place I can share here. Thanks!


#8

After discussions with the larger team a few items have shifted in priority. Namely the SCSS work is now the lowest priority item on our list. Here’s an updated roadmap:

  1. Create a way to extend components in react (slot/fill)
  2. Downstream login page branding (6.7)
  3. Stabilize the build/release process
  4. Support react development in plugins
    • Using small packages we can share with core and plugins.
      Redesigning the javascript stack
    • Moving infra related code to shared packages
    • Creating/stabilizing needed infrastructure
    • @theforeman/vendor
    • @theforeman/env
    • @theforeman/builder
    • @theforeman/core
      • Components
      • I18n
      • Router
      • slot-and-fill
      • Tour
      • Forms
      • Networking
      • State
      • Legacy Bridge
      • Modals infra
  5. Simple host wizard
    • Create/provision host based on subset of options (i.e. the happy path)
    • “Expert mode”= old form
  6. Bring SCSS into webpack
    • Research how exactly to do this
    • @theforeman/vendor - will provide the base scss 3rd party libs with their variables and mixins.
    • @theforeman/builder - will provide the building tools so core and plugins can build their scss files to css files.
    • Katello/bastion scss

#9

Thanks @Walden, is there a timeline or date when we can expect these things to be done? I’m specifically interested in point 1. and 3. which are blockers for some plugin work (ansible variables overrides in host form, new UI in templates plugin from top of my head).


#10

what would be the best way to keep folks aware of progress? I’m very interested to know where do we stand regarding #3 - can you at least tell us where do we track things? ATM it feels like a big black box?


#11

Our scrums are open to anyone who wants to come to them and we are currently trying out asana as a project management tool. If anyone is interested in being added to our project please let me know and I’ll be happy to add you.

I don’t see how our processes and tracking are any more of a “black box” than any of the other teams who work on foreman. In fact, we have had community members say that we’re the most transparent of the teams.


#12

Those two items are the top items on our list (as the login page branding is basically done pending reviews).

Here’s a link to our gantt chart that shows the state of our roadmap.

Obviously this is software development and these dates are subject to change but these are the dates we’re working with as our goal for these items.


#13

can you describe where item #3 is being tracked? (e.g. which pull requests I should follow?) is there a tracker redmine issues for pending items etc?


#14

Thanks @walden, that answers my question. Seems we’re very close, which is great.

The reason the @ui_ux team is getting these questions is, this became a critical path for many other efforts. As stated here 2 weeks ago, item #3 is blocking 1.23 release. Yesterday, a heads up 1 month before branching was published. Originally this was expected by 1.22 timeframe. There are features that are blocked on this, e.g. templates ui since February. Tasks, REX, Ansible and Katello plugins rely on current solution, which stability was desribed as experimental by @ui_ux team here. The last thread I’m aware of for this effort is not updated since end of March and there are questions without answers. The linked PR was pushed to 8 days ago, without any comment, last update is there are some test issues which is information more than 2 weeks old.

It’s great you’re sharing the roadmap, please continue and bear with us. I’m sorry if that feels as overcommunication, but I hope the whole team now understands the importance and what information we’re searching for.


#15

Everything is being tracked in asana, I sent you an invite.


#16

@sharvit do you mind providing an update to the thread mentioned above?

It doesn’t feel like overcommunication, I think this is the right amount of communication abd I think that all of the information on what we are working on is there if people want to get it.


#17

Sure!

This is a list of things that should be done (just the asana list exported as pdf):
https://drive.google.com/file/d/1j0tEInQLAOuzvYYRUvx08P_L8agw_WYY/view?usp=sharing

This is actually still the status, there are some tests need to be fixed.
I could fix the js related issues in jest and I will probably update the PR today.
Then I will jump to the ruby integration-testing to check what went wrong.


#18

+1
a suggestion - we can generate a weekly report from asana and publish it here
I played a little bit with weekdone, and it looks nice !


#19

I don’t think it’s my place to comment on roadmaps from another organisation, but I believe if items #1 and #3 are done, there is no immediate need for any further tracking. From my (community) perspective, you’re trying to be more transparent and communicate a lot, but don’t get the items done. Don’t get me wrong, this is not supposed to mean the UI team is playing minesweeper all day. I just want to say, that the roadmaps of the UI team are pretty clear to me. (I can’t say that about other teams fwiw.) I’m just saying that we need all hands on deck to fix items #1 and #3 and not have more tracking.


#20

From a Foreman release perspective I do miss the Redmine issues. I don’t need exact tracking of the progress, but I would like to easily find all related PRs. Given we declared the packaging situation as blocking for 1.23, it is odd that there’s no Redmine issue.

Note that I’m not saying that you need to use Redmine for all tracking (plenty of teams use their own internal scrum/kanban boards which refer to other issues)