New Navigation Menu and UI/UX Improvements: PROJECT REPORT

Aim of the project

The main menu design

New design of the menu
Old design of the menu

Show active menu item/group

The new filter design

Old filter design
New filter design

Accessibility support

How to add items to the menu?

from openwisp_utils.admin_theme.menu import register_menu_group# To add group of links
register_menu_group(
position=1,
config={
'label': 'My Group',
'items': {
1: {
'label': 'Users List',
'model': 'auth.User',
'name': 'changelist',
'icon': 'list-icon',
},
2: {
'label': 'Add User',
'model': 'auth.User',
'name': 'add',
'icon': 'add-icon',
},
},
'icon': 'user-group-icon',
},
)
# To add link of a model
register_menu_group(
position=2,
config={
'model': 'test_project.Shelf',
'name': 'changelist',
'label': 'View Shelf',
'icon': 'shelf-icon',
},
)
# To add custom link
register_menu_group(
position=3, config={
'label': 'My Link',
'url': 'https://link.com'
'icon':'my-link-icon',
},)
from openwisp_utils.admin_theme.menu import register_menu_group# To add a model link
register_menu_subitem(
group_position=10,
item_position=2,
config={
'label': 'Users List',
'model': 'auth.User',
'name': 'changelist',
'icon': 'list-icon',
},
)

# To add a custom link
register_menu_subitem(
group_position=10,
item_position=2,
config={'label': 'My Link', 'url': 'https://link.com'},
)

Other notable changes

The Experience

  1. Teamwork: When I was working alone on my projects before starting open source contributions, my resources and thinking were limited. During GSoC, I connected with all my mentors and we were working as a team and everyone was giving their suggestions. Then the final result achieved by this teamwork is 10 times better than working on the same project alone.
  2. New Connections: I met with different people and most of them were not from my country. This was the most exciting thing for me to connect with people around the world. They shared their knowledge that I appreciate a lot. Thank you to all of them. Before all this, I used to talk less in group chats and by working with them I feel I have overcome this weakness.
  3. Time Management: I think this was the toughest part. I was involved in some other projects too because of some personal reasons and responsibilities but somehow I was able to manage them together. I never compromised with the time that I was given to GSoC and I have always tried to save others time by making this project as my first priority.

What’s next?

Important Links

I hope it is sufficient to explain my project and the complete development process. Thank you.

--

--

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
Nitesh Sinha

Nitesh Sinha

GSOC 2021 Student Developer @ OpenWISP | React and Django Developer | Freelancer