Loading repository data…
Loading repository data…
spunkysyed / repository
HabitTracker is a user-friendly web app for tracking daily and weekly habits, facilitating easy habit management and progress monitoring in real-time.
HabitTracker is a sophisticated web application meticulously crafted to assist users in effectively tracking their habits both on a daily and weekly basis. Whether you're aiming to establish new routines or maintain existing ones, HabitTracker offers seamless functionality. Users can effortlessly add and manage habits, categorize them as Done, Not Done, or Not Started by default, and review their progress through an intuitive Weekly View. Changes made in the status of habits are instantly reflected on the Daily View, ensuring up-to-date monitoring and accountability. For further customization and detailed insights into your habits, HabitTracker provides a user-friendly interface accessible at all times through any web browser.
To run this application on your local machine, please follow these steps:
git clone https://github.com/spunkysyed/Habit-Tracker.git
npm install
MONGODB_URL=<MongoDB atlas connection string>
npm start
http://localhost:4000
Selecting and Adding Habits:
Tracking Habit Status:
Deleting Habits:
Weekly View:
Changing Status Icons:
Status Icons:
Automatic Updates:
HabitTracker/
│
├── assets/ # Frontend assets
│ ├── css/ # CSS files
│ │ ├── header.css # Styles for the navbar
│ │ ├── home.css # Styles for the home page
│ │ ├── layout.css # Styles for the layout page
│ │ └── weeklyview.css # Styles for the weekly view page
│ └── js/ # JavaScript files
│ ├── home.js # Client-side scripts for the home page
│ └── newDayUpdate.js # Logic for adding a new day and displaying the previous 6 days
│
├── config/ # Configuration files
│ └── mongoose.js # Database connection configuration using Mongoose
│
├── controllers/ # Controller logic
│ ├── home.js # Controller handling home-related logic
│ └── weekView.js # Controller handling weekView-related logic
│
├── models/ # Database models
│ ├── habit.js # Schema for Habit model
│ └── status.js # Schema for Status model
│
├── routes/ # Route definitions
│ └── habits.js # Main routes for the application
│
├── views/ # Views rendered by the server
│ ├── header.ejs # EJS template for the navbar
│ ├── home.ejs # EJS template for the home page
│ ├── layout.ejs # EJS template for the layout page
│ └── weeklyView.ejs # EJS template for the weekly view page
│
├── index.js # Entry point of the application
│
├── package-lock.json # Lock file for npm package versions
├── package.json # npm package configuration
│
└── README.md # Project documentation