5c54f30b57c94400978ac95424b872f8176e1804
Some checks failed
Proyectos/simplenote-web/pipeline/head There was a failure building this commit
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%