Skip to content

Latest commit

 

History

26 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Daily Task Logger

A Bash-based CLI utility for recording daily tasks with timestamps and categories through a simple, interactive terminal interface.

About the Project

Daily Task Logger is a beginner-friendly Bash project that demonstrates how shell scripting can be used to build a practical command-line utility.

The application allows users to record tasks throughout the day, organize them by category, and review their daily activity directly from the terminal.

The project is designed as a hands-on learning exercise while also demonstrating fundamental Bash, Linux, and GitHub skills.


Features

  • Timestamped task logging
  • Task categories: Work, Personal, Study, and Other
  • Interactive, menu-driven terminal interface
  • Color-coded terminal output
  • View today's task log
  • Automatic date-based log files
  • Demonstrates core Bash scripting concepts

Demo

Daily Task Logger Demo


Usage

Prerequisites

The project can be run on:

  • macOS
  • Linux
  • Windows using WSL

Required:

  • Bash
  • Git

Installation

Clone the repository:

git clone https://github.com/TechWithHer/Daily-Task-Logger.git
cd Daily-Task-Logger

Make the script executable:

chmod +x task_logger.sh

Run the Application

./task_logger.sh

The script opens an interactive menu where you can log tasks, view today's log, or exit the application.


Log Files

Daily logs are stored in:

~/log_directory/YYYY-MM-DD.log

Example:

[10:02:12][Work] Updated README.md
[11:45:30][Personal] Called mom
[13:20:47][Study] Learned about Bash functions

Each entry contains:

  • Timestamp — when the task was recorded
  • Category — the type of task
  • Task — the description entered by the user

Technologies Used

  • Bash — Shell scripting and application logic
  • ANSI Escape Sequences — Terminal colors and formatting
  • Unix/Linux Core Utilitiesread, date, echo, mkdir, and other standard utilities
  • Git & GitHub — Version control and project management

Learning Outcomes

This project provides hands-on experience with:

  • Bash variables
  • User input and output
  • Conditional statements
  • Loops
  • Functions
  • File and directory handling
  • File I/O
  • String formatting
  • Command-line utilities
  • Terminal formatting and colors
  • Git and GitHub project management

Project Structure

Daily-Task-Logger/
├── task_logger.sh       # Main Bash script
├── README.md            # Project documentation
├── .gitignore           # Files and directories excluded from Git
├── LICENSE              # MIT License


License

This project is licensed under the MIT License.


Contributing

Contributions, suggestions, and improvements are welcome.

If you have an idea for improving the project, feel free to open an issue or submit a pull request.


Related Projects

This project is part of the DevOps Learning Journey by TechWithHer.

Explore the complete course and project series:

DevOps Learning Journey — TechWithHer

About

Learning Project | A CLI utility for logging daily tasks with timestamps and categorin this project, I've implemented CI and Continuous Delivery by building, testing, validating, and publishing release artifacts, but I do not deploy to any environment, so Continuous Deployment is intentionally not part of it.

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Contributors

Languages