{"id":31274122,"url":"https://github.com/ingfranciscastillo/rust-cli-task-manager","last_synced_at":"2025-09-23T22:36:54.942Z","repository":{"id":313456111,"uuid":"1051497439","full_name":"ingfranciscastillo/rust-cli-task-manager","owner":"ingfranciscastillo","description":"Un gestor de tareas simple y elegante desarrollado en Rust para la línea de comandos.","archived":false,"fork":false,"pushed_at":"2025-09-06T06:09:14.000Z","size":10,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"master","last_synced_at":"2025-09-06T07:24:59.746Z","etag":null,"topics":["chrono","clap","clap-rs","colored","rust-","rust-lang","serde","serde-json"],"latest_commit_sha":null,"homepage":"","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ingfranciscastillo.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-09-06T05:42:10.000Z","updated_at":"2025-09-06T06:10:33.000Z","dependencies_parsed_at":"2025-09-06T07:25:01.774Z","dependency_job_id":"618766f9-7059-41bb-9bf3-2d61637a3f08","html_url":"https://github.com/ingfranciscastillo/rust-cli-task-manager","commit_stats":null,"previous_names":["ingfranciscastillo/rust-cli-task-manager"],"tags_count":null,"template":false,"template_full_name":null,"purl":"pkg:github/ingfranciscastillo/rust-cli-task-manager","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ingfranciscastillo%2Frust-cli-task-manager","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ingfranciscastillo%2Frust-cli-task-manager/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ingfranciscastillo%2Frust-cli-task-manager/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ingfranciscastillo%2Frust-cli-task-manager/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ingfranciscastillo","download_url":"https://codeload.github.com/ingfranciscastillo/rust-cli-task-manager/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ingfranciscastillo%2Frust-cli-task-manager/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":276662268,"owners_count":25682027,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-09-23T02:00:09.130Z","response_time":73,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["chrono","clap","clap-rs","colored","rust-","rust-lang","serde","serde-json"],"created_at":"2025-09-23T22:36:51.072Z","updated_at":"2025-09-23T22:36:54.936Z","avatar_url":"https://github.com/ingfranciscastillo.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 📋 ToDo CLI - Gestor de Tareas en Terminal\n\nUn gestor de tareas simple y elegante desarrollado en Rust para la línea de comandos.\n\n## 🚀 Características\n\n- ✅ Añadir tareas nuevas\n- 📝 Listar todas las tareas con colores\n- ✓ Marcar tareas como completadas\n- 🗑️ Eliminar tareas\n- 🧹 Limpiar todas las tareas\n- 💾 Persistencia automática en JSON\n- 🎨 Interfaz colorida y amigable\n- 📅 Timestamps de creación y finalización\n\n## 🛠️ Tecnologías Utilizadas\n\n- **Rust 1.89.0**\n- **clap** - Parser de argumentos CLI\n- **serde \u0026 serde_json** - Serialización JSON\n- **chrono** - Manejo de fechas y timestamps\n- **colored** - Salida colorizada en terminal\n\n## 📂 Estructura del Proyecto\n\n```\ntodo-cli/\n│── Cargo.toml\n│── README.md\n└── src/\n    ├── main.rs         // Punto de entrada\n    ├── cli.rs          // Parser de argumentos con clap\n    ├── task.rs         // Definición de la struct Task\n    ├── storage.rs      // Persistencia en JSON\n    └── commands.rs     // Implementación de comandos\n```\n\n## 📦 Instalación\n\n1. Clona o crea el proyecto:\n\n```bash\ncargo new todo-cli\ncd todo-cli\n```\n\n2. Copia todos los archivos del proyecto\n\n3. Compila el proyecto:\n\n```bash\ncargo build --release\n```\n\n## 🎯 Uso\n\n### Añadir una tarea\n\n```bash\ncargo run -- add \"Aprender Rust\"\ncargo run -- add \"Escribir documentación\"\n```\n\n### Listar todas las tareas\n\n```bash\ncargo run -- list\n```\n\nSalida esperada:\n\n```\n📋 Task List:\n\n[ ] 1 - Aprender Rust\n    Created: 2024-01-15 10:30\n\n[x] 2 - Escribir documentación\n    Created: 2024-01-15 10:31 | Completed: 2024-01-15 11:45\n\n📊 Summary:\nTotal: 2 | Completed: 1 | Pending: 1\n```\n\n### Marcar tarea como completada\n\n```bash\ncargo run -- done 1\n```\n\n### Eliminar una tarea\n\n```bash\ncargo run -- delete 1\n```\n\n### Limpiar todas las tareas\n\n```bash\ncargo run -- clear\n```\n\n### Ver ayuda\n\n```bash\ncargo run -- --help\n```\n\n## 🎨 Características de la Interfaz\n\n- **Colores intuitivos**: Verde para completadas, rojo para pendientes\n- **Iconos visuales**: Checkboxes, emojis y símbolos\n- **Timestamps**: Fechas de creación y finalización\n- **Resumen estadístico**: Total, completadas y pendientes\n- **Texto tachado**: Para tareas completadas\n\n## 📄 Formato del archivo JSON\n\nLas tareas se guardan en `tasks.json`:\n\n```json\n{\n  \"tasks\": [\n    {\n      \"id\": 1,\n      \"description\": \"Aprender Rust\",\n      \"done\": false,\n      \"created_at\": \"2024-01-15T10:30:00.000Z\",\n      \"completed_at\": null\n    },\n    {\n      \"id\": 2,\n      \"description\": \"Escribir README\",\n      \"done\": true,\n      \"created_at\": \"2024-01-15T10:31:00.000Z\",\n      \"completed_at\": \"2024-01-15T11:45:00.000Z\"\n    }\n  ],\n  \"next_id\": 3\n}\n```\n\n## 🧪 Ejemplos de Uso\n\n```bash\n# Flujo típico de uso\ncargo run -- add \"Comprar leche\"\ncargo run -- add \"Estudiar para el examen\"\ncargo run -- add \"Hacer ejercicio\"\n\ncargo run -- list\n\ncargo run -- done 2\ncargo run -- list\n\ncargo run -- delete 1\ncargo run -- list\n\ncargo run -- clear\n```\n\n## 🔧 Compilación y Distribución\n\n### Compilar para producción:\n\n```bash\ncargo build --release\n```\n\nEl binario estará en `target/release/rust-cli-task-manager`\n\n### Instalar globalmente:\n\n```bash\ncargo install --path .\n```\n\nDespués podrás usar directamente:\n\n```bash\ntodo-cli add \"Nueva tarea\"\ntodo-cli list\n```\n\n## 📝 Licencia\n\nEste proyecto está bajo la licencia MIT.\n\n---\n\n**¡Disfruta gestionando tus tareas con estilo! 🎉**\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fingfranciscastillo%2Frust-cli-task-manager","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fingfranciscastillo%2Frust-cli-task-manager","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fingfranciscastillo%2Frust-cli-task-manager/lists"}