Skip to content

sjaquer/TaskZenith

Repository files navigation

TaskZenith Logo

TaskZenith - Corporate Task Management 🚀

"Collaborative management and cloud synchronization for productive teams." "Gestión colaborativa y sincronización en la nube para equipos productivos."



🌎 Overview / Descripción General

TaskZenith is an advanced corporate task management platform designed for teams that require real-time collaboration, cross-platform synchronization, and complete workspace customization.

TaskZenith es una plataforma avanzada de gestión de tareas corporativas diseñada para equipos que necesitan colaboración en tiempo real, sincronización multiplataforma y personalización completa de su espacio de trabajo.

✨ Key Features / Características Principales

  • 🎯 Adaptive Dashboard: Free-form grid system (48 columns) with resizable and reorganizable widgets. / Dashboard Adaptativo: Sistema de grid libre (48 columnas) con widgets redimensionables y reorganizables.
  • 🔐 Robust Authentication: Access codes with differentiated roles (Admin/Operator). / Autenticación Robusta: Códigos de acceso con roles diferenciados (Admin/Operador).
  • ☁️ Cloud Synchronization: Personal configuration saved in Firestore for access from any device. / Sincronización en la Nube: Configuración personal guardada en Firestore para acceso desde cualquier dispositivo.
  • 🎨 Custom Themes: 8 predefined color palettes with automatic saving. / Temas Personalizables: 8 paletas de colores predefinidas con guardado automático.
  • 📊 Multiple Views: Todo List, Kanban, Calendar, History, and Statistics. / Múltiples Vistas: Todo List, Kanban, Calendario, Historial y Estadísticas.
  • ⏱️ Pomodoro Timer: Integrated timer for time management. / Pomodoro Timer: Temporizador integrado para gestión de tiempo.
  • 📱 Responsive Design: Optimized for desktop, tablet, and mobile. / Responsive Design: Optimizado para escritorio, tablet y móvil.

🛠️ Tech Stack / Stack Tecnológico

  • Frontend: Next.js 15.5 (App Router) + React 19 + TypeScript 5
  • UI Framework: TailwindCSS + shadcn/ui components
  • Database/Auth: Firebase Firestore & Firebase Authentication
  • State Management: React Context API with Firestore persistence
  • Interactivity: Custom drag-and-drop system with collision detection

🚀 Getting Started / Guía de Inicio

1. Clone the Repository / Clonar el Repositorio

git clone https://github.com/sjaquer/TaskZenith.git
cd TaskZenith

2. Install Dependencies / Instalar Dependencias

npm install

3. Environment Variables / Variables de Entorno

Create a .env.local file in the root directory and add your Firebase credentials (see .env.example): Crea un archivo .env.local en la raíz y añade tus credenciales de Firebase (ver .env.example):

NEXT_PUBLIC_FIREBASE_API_KEY=your_key
NEXT_PUBLIC_FIREBASE_AUTH_DOMAIN=your_project.firebaseapp.com
NEXT_PUBLIC_FIREBASE_PROJECT_ID=your_project_id
NEXT_PUBLIC_FIREBASE_STORAGE_BUCKET=your_project.appspot.com
NEXT_PUBLIC_FIREBASE_MESSAGING_SENDER_ID=your_id
NEXT_PUBLIC_FIREBASE_APP_ID=your_app_id

4. Firestore Rules / Reglas de Firestore

Ensure your Firestore rules allow access based on authentication: Asegúrate de que tus reglas de Firestore permitan el acceso basado en autenticación:

rules_version = '2';
service cloud.firestore {
  match /databases/{database}/documents {
    match /users/{userId} {
      allow read, write: if request.auth != null && request.auth.uid == userId;
    }
    match /tasks/{taskId} {
      allow read, write: if request.auth != null;
    }
    match /userPreferences/{userId} {
      allow read, write: if request.auth != null && request.auth.uid == userId;
    }
  }
}

5. Run Development Server / Ejecutar en Desarrollo

npm run dev

🎨 Personalization / Personalización

Adaptive Grid System

The dashboard uses a virtual 48-column adaptive grid:

  • Fluid Positioning: Based on percentages for full responsiveness.
  • Magnetic Snap: Automatic alignment every 10px.
  • Persistence: Automatic saving in Firestore per user.

Access Codes / Códigos de Acceso

The application uses access codes to differentiate roles:

  • TASKZENITH-ADMIN: Administrator access (full features).
  • TASKZENITH-CORP: Operator access (standard features).

📝 License / Licencia

Distributed under the MIT License. See LICENSE for more information. Distribuido bajo la Licencia MIT. Consulta LICENSE para más información.


👨‍💻 Author / Autor

Developed by Sebastián Jaque


Made with ❤️ using Next.js, React and Firebase

About

TaskZenith es una aplicación web de gestión de tareas que combina un diseño minimalista con la potencia de la inteligencia artificial.

Topics

Resources

License

Stars

Watchers

Forks

Contributors

Languages