Mohamed Jbilou
Menu
Project-Hub
Project-Hub
Featured Project

About this project

Project-Hub is a comprehensive, production-ready desktop application designed to facilitate secure team collaboration and efficient project management. Initiated as an academic project, the application underwent a complete, professional-grade refactoring to enhance its architecture, security, persistence, and user experience, resulting in a robust system built with Java and JavaFX. 🚀 Project Evolution and Technical Foundation This project highlights my commitment to evolving academic concepts into industry-standard solutions. The major development efforts focused on creating a robust, modular, and performant system: Reinforced Architecture: Transitioned from basic scripting to a professional, modular structure with clear Separation of Concerns, ensuring high maintainability and extensibility of all components. Persistent Database: Migrated to an integrated H2 Database for reliable, transaction-safe data persistence, eliminating the need for an external server setup. Modern UI/UX: Developed a sleek, modern, and responsive JavaFX interface with styled components and fluid navigation, significantly improving the user experience on desktop. Quality Assurance: Implemented a comprehensive suite of JUnit 5 unit tests to guarantee the reliability and correctness of the business logic. ✨ Key Enterprise-Grade Features Project Manager offers a complete set of tools essential for any professional team environment: 🔐 Secure Authentication & RBAC: Features secure login/registration with password hashing and Role-Based Access Control (RBAC) to enforce distinct permissions for Project Managers (full control) and Team Members (task execution/reporting). 📁 Project & Budget Tracking: Provides a centralized project dashboard, full lifecycle management (CRUD), and dedicated tools for setting, managing, and tracking project budgets. 📋 Task Management System: Enables detailed task creation, clear prioritization (High, Medium, Low), and streamlined status tracking ("Non commencé," "En cours," "Terminé"). Tasks are easily assigned to team members. 💬 Real-time Collaboration: Includes a dedicated private messaging system and a real-time notification hub to instantly alert users of new task assignments, status changes, and critical messages, ensuring team synchronization. 🛠️ Stack Technologique The application is engineered on a powerful, reliable Java-centric stack: Core Language: Java 17+ provides the robust, object-oriented foundation for all business logic. User Interface: JavaFX powers the modern, cross-platform graphical user interface (Desktop IHM). Persistence: H2 Database is used as the integrated relational database for secure data storage. Build & Management: Apache Maven handles all project dependencies, compilation, and build automation. 💡 Demonstrated Skills This project is a comprehensive demonstration of my capabilities in: Full-Stack Java Development: Building a complete application from the database layer (H2/SQL) to the UI (JavaFX). Software Architecture: Designing and implementing a robust, modular, and extensible Object-Oriented system. Security Implementation: Integrating secure user authentication and role-based authorization principles. UX/UI Development: Creating a clean, modern, and responsive desktop application that prioritizes user experience. Quality Assurance & Testing: Utilizing JUnit 5 for rigorous validation of core functionalities.

Technologies Used

Java - JavaFX