PRODUCTO SAAS v1.0

TaskMaster Pro

Fullstack task manager with professional architecture and a focus on real teams.

Timeline

2 Weeks

Role

Full Stack Developer

Slide 1
1 / 10

The Problem

Many product teams manage work with tools that don't fit their real flow, causing operational friction, lost visibility, and scalability issues as the team grows.

  • Inflexible roles and permissions that don't reflect the real team structure.
  • Information overload that hinders adoption by non-technical profiles.
  • Lack of clear visibility into the real status of work and bottlenecks.
  • Difficulty scaling projects and teams without losing control or traceability.
  • Dependency on multiple tools to cover basic needs (tasks, communication, tracking).

The Solution

I designed and developed a SaaS fullstack platform that centralizes task, team, and project management, prioritizing clean architecture and a fluid user experience.

Kanban Board

Intuitive task visualization with drag-and-drop functionality.

Internationalization (i18n)

Full support for Spanish and English, with automatic language detection.

Project Management

Organize your tasks into different projects for better tracking.

Team Management

Collaborate with other users within specific projects.

Notification System

Stay up to date with updates on your tasks and mentions.

Secure Authentication

JWT-based login and registration with route protection.

Search and Filtering

Quickly locate tasks by title, status, or priority.

Automatic Task Priority Classification

Auto-management of task priority (low, medium, high) can be enabled in settings based on the configured time margin.

Premium Design

Modern, responsive interface with fluid animations (Framer Motion).

Tech Stack

React 18

Frontend

Vite

Frontend

TypeScript

Frontend

Zustand

State

TanStack Query

Data

TailwindCSS

Styling

Radix UI

UI

Framer Motion

Animations

i18next

i18n

Node.js

Backend

Express

Backend

PostgreSQL

Database

Prisma

ORM

Zod

Validation

Technical Challenges

Kanban State Management

Maintaining task order consistency after multiple drag-and-drop moves and syncing with the DB.

board-store.ts
interface TaskMove {
  taskId: string;
  sourceCol: string;
  destCol: string;
  newIndex: number;
}

// Optimistic update logic
const moveTaskOptimistic = (move: TaskMove) => {
  set((state) => {
    const sourceCol = state.columns[move.sourceCol];
    const destCol = state.columns[move.destCol];
    // ... logic to splice task from source and insert to dest
    return { columns: { ...state.columns, [move.destCol]: newDest }};
  });
  // Sync with backend in background
  api.updateTaskPosition(move).catch(revertState);
};

Board Performance

Efficient rendering of hundreds of tasks using virtualization and selective memoization.