Add demo project for Personal Tracker MVP-1
Create example project structure in examples/demo-project/ with: - Project metadata in meta/project.yaml - README, LOG, CHANGELOG and TASKS documentation - Two detailed session files showing real work examples - Empty docs/ and assets/ directories The demo project serves as a reference implementation showing how to use the Personal Tracker CLI effectively.
This commit is contained in:
33
examples/demo-project/CHANGELOG.md
Normal file
33
examples/demo-project/CHANGELOG.md
Normal file
@@ -0,0 +1,33 @@
|
||||
# Changelog - Demo Project
|
||||
|
||||
## [0.1.1] - 2026-03-23
|
||||
|
||||
### Agregado
|
||||
|
||||
- Documentacion de la API de exportacion en `docs/api-export.md`
|
||||
- Tests de integracion para el modulo exporter
|
||||
|
||||
### Modificado
|
||||
|
||||
- Actualizado el formato de metadatos de proyecto para incluir `last_session_at`
|
||||
- Mejorado el parseo de fechas en sesiones
|
||||
|
||||
## [0.1.0] - 2026-03-22
|
||||
|
||||
### Agregado
|
||||
|
||||
- Modulo de exportacion con soporte para JSON
|
||||
- Estructura de sesiones con metadatos en YAML front-matter
|
||||
- Archivo `TASKS.md` con seguimiento de tareas
|
||||
|
||||
### Modificado
|
||||
|
||||
- Refactorizacion de `project.yaml` para incluir `slug` y `type`
|
||||
|
||||
## [0.0.1] - 2026-03-20
|
||||
|
||||
### Agregado
|
||||
|
||||
- Estructura inicial del proyecto demo
|
||||
- Metadatos basicos en `meta/project.yaml`
|
||||
- Primera sesion de planificación
|
||||
59
examples/demo-project/LOG.md
Normal file
59
examples/demo-project/LOG.md
Normal file
@@ -0,0 +1,59 @@
|
||||
# Registro de Sesiones - Demo Project
|
||||
|
||||
## Sesion: 2026-03-22 14:30
|
||||
|
||||
**Duracion:** 2h 15min
|
||||
**Objetivo:** Implementar funcionalidad de exportacion
|
||||
|
||||
### Trabajo realizado
|
||||
|
||||
- Analice los requisitos para la exportacion a JSON y CSV
|
||||
- Diseñe la estructura de datos para los formatos de exportacion
|
||||
- Implemente la funcion base de exportacion en `exporter.py`
|
||||
- Escribi pruebas unitarias para los formateadores
|
||||
|
||||
### Bloqueos
|
||||
|
||||
- None
|
||||
|
||||
### Decisiones
|
||||
|
||||
- Decidi usar una clase base `BaseExporter` con métodos abstractos para cada formato
|
||||
- La estructura de directorios sigue el patrón `YYYY-MM-DD_HHMM.md`
|
||||
|
||||
### Proximos pasos
|
||||
|
||||
- [ ] Implementar exportacion a CSV
|
||||
- [ ] Agregar soporte para exportacion parcial (por rango de fechas)
|
||||
- [ ] Documentar la API de exportacion
|
||||
|
||||
---
|
||||
|
||||
## Sesion: 2026-03-20 10:00
|
||||
|
||||
**Duracion:** 1h 30min
|
||||
**Objetivo:** Iniciar proyecto demo
|
||||
|
||||
### Trabajo realizado
|
||||
|
||||
- Cree la estructura inicial del proyecto demo
|
||||
- Defini los metadatos base en `meta/project.yaml`
|
||||
- Configure el sistema de seguimiento basico
|
||||
- Revise la documentacion del tracker CLI
|
||||
|
||||
### Bloqueos
|
||||
|
||||
- Ninguno
|
||||
|
||||
### Decisiones
|
||||
|
||||
- El proyecto usara el tipo "misc" para mayor flexibilidad
|
||||
- Las sesiones se almacenaran en formato Markdown con metadatos YAML
|
||||
|
||||
### Proximos pasos
|
||||
|
||||
- [ ] Definir las primeras tareas del proyecto
|
||||
- [ ] Crear la estructura de documentacion
|
||||
- [ ] Establecer el flujo de trabajo regular
|
||||
|
||||
---
|
||||
21
examples/demo-project/README.md
Normal file
21
examples/demo-project/README.md
Normal file
@@ -0,0 +1,21 @@
|
||||
# Demo Project
|
||||
|
||||
## Descripcion
|
||||
|
||||
Proyecto de demostración del tracker personal para mostrar las capacidades del sistema de seguimiento de tareas y sesiones.
|
||||
|
||||
## Estado
|
||||
|
||||
- **Estado:** Activo
|
||||
- **Tipo:** Misc
|
||||
- **Etiquetas:** demo, example
|
||||
|
||||
## Secciones
|
||||
|
||||
- [Tareas](./TASKS.md) - Lista de tareas del proyecto
|
||||
- [Registro de sesiones](./LOG.md) - Historial de sesiones de trabajo
|
||||
- [Cambios](./CHANGELOG.md) - Registro de cambios realizados
|
||||
|
||||
---
|
||||
|
||||
*Ultima actualizacion: 2026-03-23T12:00:00*
|
||||
31
examples/demo-project/TASKS.md
Normal file
31
examples/demo-project/TASKS.md
Normal file
@@ -0,0 +1,31 @@
|
||||
# Tareas - Demo Project
|
||||
|
||||
## Inbox
|
||||
|
||||
- [ ] Revisar feedback del usuario sobre la interfaz de exportacion
|
||||
- [ ] Investigar opciones para generar reportes en PDF
|
||||
|
||||
## Next
|
||||
|
||||
- [ ] Implementar exportacion a CSV
|
||||
- [ ] Agregar filtros por fecha en el listado de tareas
|
||||
- [ ] Crear plantilla para reportes semanales
|
||||
|
||||
## Active
|
||||
|
||||
- [ ] Implementar exportacion a CSV (iniciado 2026-03-22)
|
||||
|
||||
## Blocked
|
||||
|
||||
- [ ] Integracion con API de terceros (pendiente credenciales)
|
||||
|
||||
## Waiting
|
||||
|
||||
- [ ] Revision de codigo por parte del equipo (esperando feedback)
|
||||
|
||||
## Done
|
||||
|
||||
- [x] Crear estructura inicial del proyecto - 2026-03-20
|
||||
- [x] Implementar exportacion a JSON - 2026-03-22
|
||||
- [x] Escribir pruebas unitarias - 2026-03-22
|
||||
- [x] Documentar formato de sesiones - 2026-03-21
|
||||
0
examples/demo-project/assets/.gitkeep
Normal file
0
examples/demo-project/assets/.gitkeep
Normal file
0
examples/demo-project/docs/.gitkeep
Normal file
0
examples/demo-project/docs/.gitkeep
Normal file
13
examples/demo-project/meta/project.yaml
Normal file
13
examples/demo-project/meta/project.yaml
Normal file
@@ -0,0 +1,13 @@
|
||||
id: demo-001
|
||||
name: Demo Project
|
||||
slug: demo-project
|
||||
description: Proyecto de demostración del tracker personal
|
||||
type: misc
|
||||
status: active
|
||||
tags:
|
||||
- demo
|
||||
- example
|
||||
repo_path: null
|
||||
created_at: "2026-03-20T10:00:00"
|
||||
updated_at: "2026-03-23T12:00:00"
|
||||
last_session_at: "2026-03-22T14:30:00"
|
||||
53
examples/demo-project/sessions/2026-03-20_1000.md
Normal file
53
examples/demo-project/sessions/2026-03-20_1000.md
Normal file
@@ -0,0 +1,53 @@
|
||||
---
|
||||
date: "2026-03-20T10:00:00"
|
||||
duration: 90
|
||||
objective: "Iniciar proyecto demo"
|
||||
project: demo-001
|
||||
---
|
||||
|
||||
# Sesion: 2026-03-20 10:00
|
||||
|
||||
## Objetivo
|
||||
|
||||
Iniciar el proyecto demo para demostrar las capacidades del tracker personal.
|
||||
|
||||
## Notas
|
||||
|
||||
### planeacion
|
||||
|
||||
Necesito crear un proyecto que sirva como ejemplo real de uso del sistema.
|
||||
Debe incluir:
|
||||
|
||||
- Estructura de directorios completa
|
||||
- Metadatos realistas
|
||||
- Sesiones de trabajo con contenido genuino
|
||||
- Tareas en diferentes estados
|
||||
|
||||
### observaciones
|
||||
|
||||
El sistema de tracking funciona bien para proyectos personales.
|
||||
La estructura de sesiones con front-matter YAML es flexible y util.
|
||||
Me gusta poder vincular sesiones a proyectos especificos.
|
||||
|
||||
## Trabajo realizado
|
||||
|
||||
- [x] Cree la estructura inicial del proyecto demo
|
||||
- [x] Defini los metadatos base en `meta/project.yaml`
|
||||
- [x] Configure el sistema de seguimiento basico
|
||||
- [x] Revise la documentacion del tracker CLI
|
||||
|
||||
## Bloqueos
|
||||
|
||||
Ninguno.
|
||||
|
||||
## Decisiones
|
||||
|
||||
- El proyecto usara el tipo "misc" para mayor flexibilidad
|
||||
- Las sesiones se almacenaran en formato Markdown con metadatos YAML
|
||||
- El ID del proyecto sera "demo-001" para facilitar la referencia
|
||||
|
||||
## Proximos pasos
|
||||
|
||||
- [ ] Definir las primeras tareas del proyecto
|
||||
- [ ] Crear la estructura de documentacion
|
||||
- [ ] Establecer el flujo de trabajo regular
|
||||
75
examples/demo-project/sessions/2026-03-22_1430.md
Normal file
75
examples/demo-project/sessions/2026-03-22_1430.md
Normal file
@@ -0,0 +1,75 @@
|
||||
---
|
||||
date: "2026-03-22T14:30:00"
|
||||
duration: 135
|
||||
objective: "Implementar funcionalidad de exportacion"
|
||||
project: demo-001
|
||||
---
|
||||
|
||||
# Sesion: 2026-03-22 14:30
|
||||
|
||||
## Objetivo
|
||||
|
||||
Implementar la funcionalidad de exportacion de datos del proyecto a diferentes formatos.
|
||||
|
||||
## Notas
|
||||
|
||||
### investigacion
|
||||
|
||||
Analice los requisitos para la exportacion:
|
||||
|
||||
**JSON:**
|
||||
- Estructura jerarquica con metadatos completos
|
||||
- Incluye timestamps en formato ISO
|
||||
- Representacion de tareas por estado
|
||||
|
||||
**CSV:**
|
||||
- Formato plano para importacion a spreadsheets
|
||||
- Headers: id, titulo, estado, fecha_creacion, fecha_completado
|
||||
- UTF-8 encoding
|
||||
|
||||
### diseno
|
||||
|
||||
Decidi usar una clase base `BaseExporter` con:
|
||||
|
||||
```
|
||||
BaseExporter
|
||||
├── export(data) -> str
|
||||
├── format_metadata(meta) -> dict
|
||||
└── validate_data(data) -> bool
|
||||
|
||||
JsonExporter(BaseExporter)
|
||||
CsvExporter(BaseExporter)
|
||||
```
|
||||
|
||||
### codigo
|
||||
|
||||
Escribi la implementacion inicial del exporter:
|
||||
|
||||
```python
|
||||
class BaseExporter:
|
||||
def export(self, data: dict) -> str:
|
||||
raise NotImplementedError
|
||||
```
|
||||
|
||||
## Trabajo realizado
|
||||
|
||||
- [x] Analice los requisitos para la exportacion a JSON y CSV
|
||||
- [x] Diseñe la estructura de datos para los formatos de exportacion
|
||||
- [x] Implemente la funcion base de exportacion en `exporter.py`
|
||||
- [x] Escribi pruebas unitarias para los formateadores
|
||||
|
||||
## Bloqueos
|
||||
|
||||
Ninguno.
|
||||
|
||||
## Decisiones
|
||||
|
||||
- Decidi usar una clase base `BaseExporter` con metodos abstractos para cada formato
|
||||
- La estructura de directorios sigue el patron `YYYY-MM-DD_HHMM.md`
|
||||
- Los archivos de sesion incluyen front-matter con metadatos estructurados
|
||||
|
||||
## Proximos pasos
|
||||
|
||||
- [ ] Implementar exportacion a CSV
|
||||
- [ ] Agregar soporte para exportacion parcial (por rango de fechas)
|
||||
- [ ] Documentar la API de exportacion
|
||||
Reference in New Issue
Block a user