Published on
Multi-role recipe management platform
Culinary recipe management platform with users roles, recipe creation and modification, and comprehensive permissions management developed with Express and Directus

- Role
- Full-stack developer
- Stack
- ExpressDirectusPostgreSQL
Context
This was created following the completion of a web training programme, with the aime of experimenting with a full-stack project in its entirety and managing an advanced permissions system inspired by Discord.
Problem
The primary challenge was to manage multiple roles with granular permissions, allowing each user type to access only authorized actions on the site and on the panel (reading, creating, updating, deleting recipes, managing roles)?
Solution
The solution I developed was to create a unique permissions system. This system involved encoding each permission digitally, combining them into a long string representing the role, and dynamically decoding them for display and editing in the admin panel.
Technical choices
- Express.js - A backend framework that is distinguished by its simplicity and efficiency. This software is also used for the front-end in this project.
- Directus + PostgreSQL - A headless CMS solution combined with a relational database optimises content and permission management.
- JSON & digital mapping - Conversion of textual permissions into numerical codes for a flexible system inspired by Discord.
Accessibility and UX
In order to enhance the web's accessibility and improve the user experience, I oversaw the design of the interfaces to ensure they were accessible. This includes the use of keyboard navigation, clear labels and user feedback for all critical actions, to ensure a smooth and intuitive experience for all users.
Learnings
Design of a multi-level, multi-role authorisation management system.
Proven experience in full-stack management of web projects, covering both front-end and back-end components.
Expertise in implementing a headless CMS, ensuring seamless integration and optimal functionality.
Proficiency in demonstrating rigorous and innovative planning and implementation methodologies for complex logic models inspired by real-world systems.