-
Notifications
You must be signed in to change notification settings - Fork 6
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
Activist Portal revamp (proposal) #277
Comments
@jensborje has started sketching out some wireframes for the "home page" and organization pages (UI in Swedish): |
Some thoughts about development/technology strategy. Roughly 1% av our users (past 6 months) use legacy web browsers like Internet Explorer. Maybe this is the time to stop catering the UX to that user base? Basic functionality should probably still work without JS though, so I'm not actually sure what this would mean in practice. Another aspect which we should implement is code splitting. The JS bundle is really big (although not as bad as in Organize) and it would probably be a big optimization to split it into several bundles. One way of doing this is to think of the activist portal as multiple smaller apps with individual entry points, instead of one big app. Registering, managing your user preferences, exploring events and navigating organization pages are probably three very different flows which do not need to have perfect SPA-like transitions between them. At the same time, we should take this opportunity to fully adopt PWA practices like local storage, installability and service worker offline availability. |
Here is a list of component/UI libraries that we should investigate. Feel free to add more! Adopting a robust and sustainable UI framework is even more important for a future Organize revamp, but lets start exploring it already (and replace the need for most of zetkin-common). |
Consolidate Call, Organize and Activist Portal?As suggested recently on Slack, I am proposing that we build the new Zetkin Activist Portal in such a way that Call and Organize can be integrated into the same app. MotivationsLess architectural complexityRunning all three user-facing front-ends in a single app will make the architecture less complex. Here are some ways in which this is relevant:
Easier maintenanceWith a single front-end, there is only one codebase to keep up to date with dependencies, front-end issues and pull requests only need to exist in a single GitHub repository et c. The zetkin/zetkin-common library exists to share some components between the three front-end apps, especially www and call. The need for this would go away entirely if we run everything within a single app. New features possibleThis would make it much easier to implement features like in-context editing. For example, a user which is authenticated at level 2 (2FA) could be allowed to edit organization information on the public organization page itself, instead of in a dedicated administration area. ConsistencyIt would be much easier to reach and maintain consistency, both in user-facing aspects of the app (UI/UX) and across the codebase. Challenge: Avoid bloatThe main set of risks come from a combined app being a much bigger code base. Measures would need to be taken to avoid bloat. Code splitting will be made even more important. Perhaps a framework like NEXT.js could help us here. |
This is happening in the app.zetkin.org repo. |
The activist portal is now a few years old and we have started discussing a re-design based on learnings from the past few years, as well as all the new considerations that will be making it's way into Zetkin as part of the sub-organizations feature that we are currently working on.
This issue is a place for discussing the high-level direction of these changes, and to collect inspiration. There are several smaller issues concerning different aspects of the re-design, and more will likely be created.
Examples of more specific re-design issues:
Other ideas and aspects to consider have included:
The text was updated successfully, but these errors were encountered: