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:
2026-03-23 09:05:10 -03:00
parent b36b60353d
commit 4e67062c99
9 changed files with 285 additions and 0 deletions

View 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

View 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