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:
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