08a88b5e06ee1d1e2844743435a24e7acbc4c248
- SPEC.md: Complete UI/UX specification with design principles, layout architecture, interaction patterns, data flow, and accessibility requirements - VIEWS.md: Text-based wireframes for Dashboard, Document Viewer, Document Editor, and Library Browser views (desktop and mobile) - COMPONENTS.md: Reusable component library with buttons, inputs, cards, tags, navigation, modals, and feedback components - STYLES.md: Style guide with design tokens (colors, typography, spacing), global styles, animations, responsive breakpoints, and dark mode implementation Design follows dark mode first approach inspired by Mission Control dashboard, with full mobile responsiveness.
SimpleNote Web
REST API para gestión de documentos basada en archivos Markdown con soporte para librerías anidadas y tags.
Características
- API REST completa (Express.js)
- Almacenamiento en archivos Markdown + JSON
- Soporte para librerías anidadas
- Indexación de tags
- Autenticación por tokens Bearer
Requisitos
- Node.js 18+
Instalación
npm install
Configuración
Copia .env.example a .env y ajusta las variables:
PORT=3000
HOST=0.0.0.0
DATA_ROOT=./data
ADMIN_TOKEN=snk_your_initial_token
CORS_ORIGIN=*
API_PREFIX=/api/v1
Inicialización
npm run init
Esto crea la estructura inicial de datos y una librería "Default Library".
Uso
Desarrollo
npm run dev
Producción
npm start
API Endpoints
Auth
POST /api/v1/auth/token- Generar token (admin)GET /api/v1/auth/verify- Verificar token
Documents
GET /api/v1/documents- Listar documentos (filtros: tag, library, type, status)GET /api/v1/documents/:id- Obtener documentoPOST /api/v1/documents- Crear documentoPUT /api/v1/documents/:id- Actualizar documentoDELETE /api/v1/documents/:id- Eliminar documentoGET /api/v1/documents/:id/export- Exportar como MarkdownPOST /api/v1/documents/:id/tags- Agregar tags
Libraries
GET /api/v1/libraries- Listar librerías raízGET /api/v1/libraries/:id- Ver contenido de libreríaPOST /api/v1/libraries- Crear libreríaGET /api/v1/libraries/:id/tree- Árbol completoDELETE /api/v1/libraries/:id- Eliminar librería
Tags
GET /api/v1/tags- Listar todos los tagsGET /api/v1/tags/:tag- Documentos con tag específico
Estructura de Datos
data/
├── .auth-tokens.json # Tokens de API
├── .tag-index.json # Índice global de tags
└── libraries/
└── {id}/
├── .library.json
├── documents/
│ └── {doc-id}/
│ ├── index.md
│ └── .meta.json
└── sub-libraries/
Licencia
MIT
Description
SimpleNote Web - Document management system with nested libraries and markdown support
Languages
JavaScript
80.8%
CSS
18.7%
HTML
0.4%
Dockerfile
0.1%