• Code Complete Logo
  • ChallengesPro

    logoCode Complete

    Explore

    Challenges
    Pro
    FAQ

    About

    Privacy Policy
    Terms

    Community

    Youtube
    Discord

    Contact us at [email protected]

    Copyright Β© 2025 CODE COMPLETE PTY LTD

    Thumbnail for Task Management App design
    Pro

    3 - Advanced

    Task Management App

    Feature-rich task management app with auth and draggable tasks

    Download DesignSubmit Solution
    πŸ“ Overview
    Build a multi-page application that mimics tools like Jira or Trello. You'll design a feature-rich and user-friendly task management system. Here's what you’ll implement: - Authentication Pages: Login and sign-up pages with appropriate validation. - Dashboard: A responsive layout with a sidebar, navbar, and a main section for task columns. - Task Functionality: Features like draggable tasks, modals for task creation and editing, and customizable task cards. - User Management: Adding members to projects, managing assignees, and inviting users via modals. This project will test your skills in UI development, state management, and interactive user interfaces. πŸš€
    πŸŽ“ Learnings
    • 🧩 Managing complex apps with interconnected data.
    • πŸ” Implementing authentication and user roles.
    • πŸ–±οΈ Adding drag-and-drop interactivity.
    • πŸ“ Building forms with advanced input fields.
    • πŸ–‹οΈ Integrating a WYSIWYG text editor.
    • πŸ“ˆ Handling dynamic state updates across pages.
    • 🎯 Breaking down complex features into smaller tasks.
    βœ… Project Checklist

      Create login and sign-up pages with appropriate styling and validation.

      Ensure login form validates email format and password length.

      Ensure sign-up form includes fields for username, email, and password with client-side validation.

      Design the sidebar to display a list of projects.

      Add a button to create a new project in the sidebar.

      Include the user’s name and email in the sidebar with a logout button.

      Design the navbar to display the current project name.

      Add a dropdown in the navbar for managing project members.

      Include a button in the navbar to add new members to the project.

      Add a dropdown in the navbar for selecting a project assignee and choosing one from the project members.

      Design three columns in the main section labeled To Do, In Progress, and Done.

      Ensure each column contains draggable task cards.

      Design task cards to include title, tags, optional image, due date, and assignee pictures.

      Add a + button in each column to create a new task.

      Implement a modal for task creation with fields for task name, task owner dropdown, due date, priority dropdown, assignee dropdown, labels input, attachments upload, and a WYSIWYG editor for description.

      Ensure clicking on a task opens a task details modal displaying task information.

      Include an Edit button in the task details modal to open the task creation modal with pre-filled fields.

      Save edits to update the task information.

      Add a modal for adding new users to a project with input fields for email addresses and a message.

    πŸŽ“ Learnings
    • 🧩 Managing complex apps with interconnected data.
    • πŸ” Implementing authentication and user roles.
    • πŸ–±οΈ Adding drag-and-drop interactivity.
    • πŸ“ Building forms with advanced input fields.
    • πŸ–‹οΈ Integrating a WYSIWYG text editor.
    • πŸ“ˆ Handling dynamic state updates across pages.
    • 🎯 Breaking down complex features into smaller tasks.
    🌟 Bonus Features

      Add animations when dragging and dropping tasks between columns.

      Show a progress bar in the sidebar to display the number of completed tasks.

      Enable task filtering by tags, priority, or assignee.

      Add pagination or infinite scrolling for projects in the sidebar.

      Implement a dark and light theme toggle.

      Make the app fully responsive for mobile and desktop.

      Add database support to persist tasks and user data.

      Add the ability to delete tasks from columns.

    πŸ› οΈ Instructions
    1. Click on the 'Download Design' button to get the .fig file.
    2. Upload the .fig file to your Figma account using these steps. You can now open the design and see what you have to make.
    3. Export assets from Figma by pressing Ctrl+Shift+E (or Cmd+Shift+E on Mac) while nothing is selected and then clicking the 'Export' button that shows up.
    4. Implement the design using your preferred language or framework (aim for pixel-perfect accuracy).
    5. Deploy your solution for free using GitHub Pages, Netlify, or Vercel.
    6. Submit your solution link here and try to get a perfect score!
    πŸ”Ž Check out the FAQ page for any questions regarding challenges and solutions.
    πŸ‘‹ Sign up to submit your solution!