Artículosproyecto

Grandes novedades en Planify

En marzo escribí sobre por qué construí Planify aunque ya existan apps mejores. Lo terminé con: "El refactor está en camino."

Llegó. Y se volvió mucho más grande que un refactor.

El objetivo no ha cambiado

Planify existe por una sola razón: recuperar el hábito de planificar que tenía con bolígrafo y libreta. Cada noche, planificar el día siguiente. Cada sábado, repasar la semana. En papel funcionaba. Cuando todo pasó al portátil, se vino abajo.

Lo que quiero es un único lugar donde encaje ese hábito:

  • las tareas que tengo que hacer,
  • el calendario donde realmente ocurren,
  • las notas que las explican,
  • y el tiempo que de verdad les dediqué.

Hoy, para la mayoría de la gente, eso son cuatro apps: Linear o Todoist, Google Calendar, Notion y un temporizador. Cada cambio entre ellas es fricción, y la fricción fue justo lo que mató mi sistema de libreta.

Planify no intenta ganar a ninguna de esas apps. Intenta eliminar los huecos entre ellas, para una sola persona: yo.

Lo nuevo desde la v2

Proyectos

Las tareas ahora viven en proyectos con una fecha de inicio y una fecha objetivo. Cada proyecto tiene su propio tablero y un panel lateral con su progreso, el tiempo registrado y los días que quedan.

El tablero de un proyecto en Planify, con su panel de progreso

Un tablero que se lee de un vistazo

"My tasks" es un kanban que abarca todos los proyectos. La prioridad, las etiquetas y la fecha límite son chips que puedes editar directamente en la tarjeta. Las tareas vencidas aparecen en rojo, para que dejen de esconderse.

El tablero My tasks en modo oscuro

El modo oscuro también recibió atención de verdad. El mismo tablero, los mismos chips, nada deslavado.

El mismo tablero de proyecto en modo oscuro

Notas, sesiones y enlaces

  • Notas: páginas al estilo Notion, anidadas tan profundo como quiera (Semestre > Asignatura > Capítulo), con LaTeX, tablas, código, desplegables y portadas. El editor es Plate.
  • Registro de tiempo: pulsa ▶ en cualquier tarea y un temporizador corre en la barra de título (puedes ver "Draft the launch…" en las capturas). La página /time muestra la semana por proyecto.
  • Enlaces: una página pertenece a un proyecto, una tarea apunta a la página de la que salió y un evento puede reservar tiempo para una tarea. Todo está conectado, nada se copia.
  • Google Calendar y Google Tasks: sincronización en ambos sentidos, con un webhook en producción.

Por dentro

Me pasé de Cloudflare Workers a Vercel + Supabase. El plan gratuito de Workers limita la CPU a 10 ms por petición, y una app Next.js lo supera fácilmente. Postgres pasa por Prisma, los archivos por Supabase Storage, y un cron diario envía los recordatorios.

Las tres funciones que más quería

Son las que convierten Planify de "un tablero y un calendario" en un planificador.

1. Arrastra una tarea a tu día

El panel lateral del calendario ahora tiene una lista To plan: todas las tareas abiertas que todavía no tienen tiempo reservado. Arrastra una al calendario y se convierte en un bloque de tiempo vinculado a esa tarea. Suéltala sobre un día y la tarea pasa a vencer ese día.

Arrastrando "Reply to Ana" desde To plan al jueves a las 14:00

Esto es time blocking, como lo hacen Sunsama o Akiflow. El vínculo entre una tarea y su bloque ya existía; lo que faltaba era el gesto.

2. Escríbelo como lo dirías

Ctrl K ahora entiende inglés y francés natural:

text
réunion mardi 17h #website !urgent
Dentist tomorrow 2:30pm for 45 min
Standup every weekday 9h30-9h45

Lee la fecha, la hora, la duración, el proyecto, las etiquetas, la prioridad y la repetición, y te muestra lo que ha entendido antes de que pulses Enter.

La captura rápida leyendo "réunion mardi 17h #website !urgent"

Una hora sola crea un evento. Añade un #proyecto o una !prioridad y se convierte en una tarea, con su bloque de tiempo ya en el calendario.

Fue la parte más divertida de escribir: sin librerías, unas 300 líneas y un archivo de tests. El francés tiene muchísimas formas de decir "mañana a las 5".

3. Repeticiones

Una agenda de verdad necesita eventos recurrentes. Cada día, cada día laborable, cada semana, cada dos semanas, cada mes, cada año, con una fecha de fin opcional.

El menú Repeat en la ventana de nuevo evento

Puedes editar una sola repetición o toda la serie. Puedes borrar una, las siguientes o todas. Arrastrar una repetición mueve solo esa.

Las tareas también se repiten: completa "Pagar el alquiler" y el "Pagar el alquiler" del mes siguiente aparece solo.

Lo que es honesto decir

  • Estas tres funciones están en una rama. Saldrán en cuanto mi entorno de producción esté listo.
  • La sincronización con Google está cubierta por tests, pero todavía no he probado el flujo completo con una cuenta real. Es lo siguiente.
  • Por ahora, arrastrar y soltar necesita un ratón.

Lo que viene

  1. Validar la sincronización con Google con una cuenta real.
  2. Planificar mi día: elegir tareas por la mañana, recibir un aviso cuando el día está sobrecargado y comparar por la noche el tiempo planificado con el real. Planify ya tiene las dos cifras.
  3. Notificaciones push a través de una PWA: el primer paso hacia el móvil.

La misma regla que la última vez: lánzalo, úsalo, rómpelo, arréglalo. Y vuelta a empezar.

Comentarios

Inicia sesión con GitHub para unirte a la conversación.

Leave comment