{"_id":"@abdul_waheed/time-management-system","name":"@abdul_waheed/time-management-system","dist-tags":{"latest":"1.0.0"},"versions":{"1.0.0":{"name":"@abdul_waheed/time-management-system","version":"1.0.0","description":"The Advanced Time Management System is a comprehensive console-based application designed to help users manage their tasks and track the time spent on each task efficiently. Built using TypeScript, the application leverages the `inquirer` library for inte","main":"index.js","type":"module","bin":{"time-management-system":"index.js"},"publishConfig":{"access":"public"},"scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"keywords":[],"author":{"name":"Abdul Waheed"},"license":"ISC","devDependencies":{"@types/fs-extra":"^11.0.4","@types/inquirer":"^9.0.7","@types/node":"^20.13.0"},"dependencies":{"fs-extra":"^11.2.0","inquirer":"^9.2.23","ts-node":"^10.9.2","typescript":"^5.4.5"},"_id":"@abdul_waheed/time-management-system@1.0.0","gitHead":"825be45c6b3873f7bf4677c61c23cea04f51bf2c","_nodeVersion":"20.11.1","_npmVersion":"10.2.4","dist":{"integrity":"sha512-6nj/BvMhRJ9Ic6SrpXioObPdcf0ovTghm1NjiVfsTuD5TvoSRNwq2hXlZTnwA00VwP+zsO1dM91u32AsGW+smw==","shasum":"c47af3fd41d0964cdec894c513a50ddea9185086","tarball":"https://registry.npmjs.org/@abdul_waheed/time-management-system/-/time-management-system-1.0.0.tgz","fileCount":6,"unpackedSize":27529,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEWu+UG/5OOKoVI46L+ouQGEE+GYc1Fp9Si8rYSi+8qjAiEA2qtN18FkFPJyI8Jr/wG45CR3VO1XC36XruFdYwnv+jM="}]},"_npmUser":{"name":"abdul_waheed","email":"waheedjdk@hotmail.com"},"directories":{},"maintainers":[{"name":"abdul_waheed","email":"waheedjdk@hotmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/time-management-system_1.0.0_1717226914678_0.17781615052929323"},"_hasShrinkwrap":false}},"time":{"created":"2024-06-01T07:28:34.554Z","1.0.0":"2024-06-01T07:28:34.831Z","modified":"2024-06-01T07:28:35.153Z"},"maintainers":[{"name":"abdul_waheed","email":"waheedjdk@hotmail.com"}],"description":"The Advanced Time Management System is a comprehensive console-based application designed to help users manage their tasks and track the time spent on each task efficiently. Built using TypeScript, the application leverages the `inquirer` library for inte","keywords":[],"author":{"name":"Abdul Waheed"},"license":"ISC","readme":"### Advanced Time Management System in TypeScript\r\n\r\n#### Project Description\r\n\r\nThe Advanced Time Management System is a comprehensive console-based application designed to help users manage their tasks and track the time spent on each task efficiently. Built using TypeScript, the application leverages the `inquirer` library for interactive command-line prompts and `fs-extra` for file operations, ensuring that all task data is persistently stored and retrievable.\r\n\r\n#### Features\r\n\r\n1. **Add Task**:\r\n   - Allows users to create new tasks by providing a title and description.\r\n   - Each task is assigned a unique ID for easy identification and management.\r\n\r\n2. **Start Task**:\r\n   - Enables users to start a timer for a selected task.\r\n   - Records the start time of the task, allowing for precise time tracking.\r\n\r\n3. **Stop Task**:\r\n   - Allows users to stop the timer for a selected task.\r\n   - Records the end time and calculates the total time spent on the task, adding it to the task's cumulative time.\r\n\r\n4. **View Tasks**:\r\n   - Displays a list of all tasks, including their details such as ID, title, description, total time spent, and individual time logs.\r\n   - Provides a clear and organized view of each task’s time logs, showing start and end times for each logged session.\r\n\r\n#### Project Structure\r\n\r\n- **index.ts**: The main file containing all the logic and functionality of the time management system. It includes functions for adding tasks, starting and stopping timers, and viewing task logs.\r\n- **tasks.json**: A JSON file used to store task data persistently. This file is read and written to by the application to maintain the state of tasks between sessions.\r\n\r\n#### Workflow\r\n\r\n1. **Initialization**:\r\n   - The project is set up by initializing a Node.js project and installing the necessary dependencies, including TypeScript, `ts-node`, `inquirer`, and `fs-extra`.\r\n\r\n2. **Main Menu**:\r\n   - The application starts by displaying a main menu with options to add a task, start a task, stop a task, view tasks, or exit the application.\r\n   - Users interact with the menu using command-line prompts provided by the `inquirer` library.\r\n\r\n3. **Task Management**:\r\n   - **Add Task**: Users are prompted to enter a title and description for a new task. The task is then added to the list and saved to the `tasks.json` file.\r\n   - **Start Task**: Users select a task by ID to start the timer. The start time is recorded, and the task’s details are updated in the `tasks.json` file.\r\n   - **Stop Task**: Users select a task by ID to stop the timer. The end time is recorded, the total time spent on the task is updated, and the task’s details are saved to the `tasks.json` file.\r\n   - **View Tasks**: The application displays all tasks with their details, including the total time spent and individual time logs.\r\n\r\n#### Data Persistence\r\n\r\n- The application uses the `fs-extra` library for file operations, ensuring that all task data is saved to the `tasks.json` file.\r\n- Tasks are loaded from the file when the application starts, and any changes (e.g., adding tasks, starting/stopping timers) are saved back to the file immediately.\r\n\r\n#### Benefits\r\n\r\n- **Efficiency**: Helps users manage their time more effectively by tracking the time spent on various tasks.\r\n- **Organization**: Provides a clear and organized way to view tasks and their associated time logs.\r\n- **Persistence**: Ensures that task data is not lost between sessions by storing it in a JSON file.\r\n\r\nThis project provides a robust solution for time management, allowing users to keep track of their tasks and the time spent on each, thus improving productivity and time management skills.","readmeFilename":"README.md"}