Summary:
Modules are collections of articles. A guest (the browser on the internet or not logged-in user) can see a list of modules while the logged-in user has access to some additional functionality like adding and archiving the modules. Modules can be used to denote multiple categories also. For example, we can create one module for one category of features, like the onboarding module.
- We do not need to build a pagination feature on this screen.
- This screen has to be fully responsive.
- When a module is created, a unique slug is created for it in the background. We need to use that slug in the URL and not the ID. For example, when I see a module, I can get it from kb.quicklabs.in/quick-test/onboarding and not kb.quicklabs.in/1/2
User story 1: A guest user should be able to see a list of modules.
User story 2: The logged-in user should be able to add a new module.
User story 3: The logged-in user should be able to edit an existing module.
User story 4: The logged-in user should be able to archive an existing module.
User story 5: The logged-in user should be able to decide the order in which the modules are shown.
User story 6: Both the logged-in user and guest should be able to search articles from the header.
User story 7: The admin user should be able to see an archived module from account settings → Archived modules and should be able to restore/delete it.
User story 8: A compact mode is enabled; the modules screen should reflect it.