Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/md-abid-hussain/task-tracker-cli
https://github.com/md-abid-hussain/task-tracker-cli
Last synced: 18 days ago
JSON representation
- Host: GitHub
- URL: https://github.com/md-abid-hussain/task-tracker-cli
- Owner: md-abid-hussain
- Created: 2024-08-19T11:09:19.000Z (4 months ago)
- Default Branch: main
- Last Pushed: 2024-08-19T11:39:18.000Z (4 months ago)
- Last Synced: 2024-08-22T09:07:16.309Z (4 months ago)
- Language: TypeScript
- Size: 40 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Task Tracker : CLI Application
Task Tracker is a command-line interface (CLI) application for managing tasks. It allows you to add, update, delete, mark, and list tasks efficiently.
Project URL: [https://roadmap.sh/projects/task-tracker](https://roadmap.sh/projects/task-tracker)
## Table of Contents
- [Installation](#installation)
- [Usage](#usage)
- [Commands](#commands)
- [Development](#development)
- [Testing](#testing)## Installation
1. Clone the repository:
```sh
git clone https://github.com/yourusername/task-tracker-cli.git
cd task-tracker-cli
```2. Install dependencies:
```sh
npm install
```3. Build the project:
```sh
npm run build
```4. Link the application:
```sh
npm link .
```## Usage
To use the Task Tracker CLI, run the following command:
```sh
task-cli [parameters]
```## Commands
### Add a Task
```sh
task-cli add
```- ``: The description of the task to be added.
### Update a Task
```sh
task-cli update
```- ``: The ID of the task to be updated.
- ``: The new description of the task.### Delete a Task
```sh
task-cli delete
```- ``: The ID of the task to be deleted.
### Mark a Task as In-Progress
```sh
task-cli mark-in-progress
```- ``: The ID of the task to be mark in progress.
### Mark a Task as Done
```sh
task-cli mark-done
```- ``: The ID of the task to be marked as done.
### List Tasks
```sh
task-cli list [status]
```- `[status]`: Optional. The status of tasks to list (`todo`, `in-progress`, `done`). If not provided, all tasks will be listed.
## Development
### Project Structure
```
.gitignore
jest.config.js
package.json
README.md
src/
commands/
AddTaskCommand.ts
Command.ts
DeleteTaskCommand.ts
ListTaskCommand.ts
MarkTaskCommand.ts
UpdateTaskCommand.ts
index.ts
Invoker.ts
TaskManager.ts
utils/
...
tasks.json
tests/
TaskManager.test.ts
tsconfig.json
```### Testing
To run tests, use the following command:
```sh
npm test
```