WorkNest is an academic full-stack project developed as the final assignment of my BSc in Computer Science and Engineering.
It is a collaboration and project management platform designed to centralize multiple productivity functionalities into a single space — helping reduce digital fatigue caused by constant switching between scattered tools (ex.: Trello, Slack, Google Docs, Notion, etc.)
Designed with a strong focus on functional centralization, usability, and modern development practices.
- Develop a unified platform combining project management + communication tools
- Reduce "digital fatigue" caused by fragmented platforms
- Explore real-time collaboration features
- Apply clean software engineering practices learned across the degree
- Demonstrate full-stack development and architectural design
This was built as an individual academic project, with full responsibility for design, architecture, development, testing, and documentation.
- React.js
- JavaScript (ES6+)
- CSS / Responsive UI
- Component-based architecture
- Node.js
- Express.js
- REST API design
- Authentication & Session Control
- WebSockets (real-time communication)
- MongoDB
- Mongoose ORM
- Schema-based data models
- JWT Authentication
- Git & GitHub
- Postman (API testing)
- Agile-inspired workflow
- Create & manage projects
- Task creation and assignment
- Status control (To-do → Doing → Done)
- Deadlines & priority levels
- Messaging/chat inside each project
- WebSockets for instant updates
- Notifications for new messages or activity
- Upload and associate files with tasks/projects
- Collaborative workspace
- Team member roles
- Project-based permissions
- Centralized dashboard
- Secure login system
- Token-based authentication
- Session management
WorkNest follows a client-server architecture, divided into:
- UI rendering
- State & component management
- API communication layer
- Real-time UI updates via WebSockets
- API endpoints for CRUD operations
- Business logic
- Authentication
- Real-time event management
- Project documents
- User profiles
- Tasks, messages & uploaded files
(Se quiseres, posso criar também um diagrama visual para colocar aqui.)