You are browsing as a guest. Sign up (or log in) to start making projects!

TaskForge

  • 9 Devlogs
  • 16 Total hours

TaskForge is a simple study planner that I made while learning web development. I wanted to make something useful for studying intead of making only small practice projects. With TaskForge, I can add my study tasks, use a timer, check my progress, and keep my subjects organized.

Ship #1 Pending review

What did you make?


I made TaskForge, a simple study planner for students. It has a task manager where I can add, complete, delete, and filter study tasks. I also made a study timer with 25-minute, 5-minute, and 15-minute modes. The dashboard shows my total, completed, pending tasks, and progress. I also added localStorage so my tasks stay saved after refreshing the page.


What was challenging?


The most challenging part was connecting all the JavaScript files together. I had to understand how tasks, the dashboard, timer, and localStorage work with each other. Making the tasks stay saved after refreshing was also something I had to test and fix several times.


What are you proud of?


I am proud that I was able to build the whole project step by step instead of making everything at once. I am especially happy with the task system and localStorage because the tasks actually stay saved. I also like that the project is simple but useful for studying.


What should people know so they can test your project?


To test TaskForge, open the website and use the navigation buttons to visit Tasks, Timer, and Subjects. In Tasks, add a few study tasks, try completing and deleting them, and refresh the page to check that they are saved. You can also try the different timer modes and check how the dashboard changes when tasks are completed.

  • 9 devlogs
  • 16h
Try project → See source code →
Open comments for this post

52m 24s logged

Devlog 9 – Writing the README 📖

Today I finished the README.md file for my TaskForge project.

I added information about what TaskForge is, the main features, the project folder structure, the technologies I used, and how the project works. I also wrote about what I learned while making it and some problems I faced during development.

I wanted the README to be simple and easy to understand instead of making it look too professional.

What I worked on

  • Added the project introduction
  • Added the main features
  • Explained the folder and file structure
  • Added the technologies used
  • Added how I made the project
  • Added what I learned
  • Added testing information
  • Added problems I faced
  • Added some future improvement ideas
  • Added my final thoughts

What I learned

While writing the README, I learned that documentation is useful because it helps other people understand a project without looking through every file.

I also learned how Markdown headings, lists, code formatting, and sections can be used to organize a project README.

Testing

I checked the README on GitHub to make sure the headings, lists, and code formatting looked correct.

Project progress

This completes the final planned file of TaskForge.

TaskForge: 9/9 files completed 🎉

I now have a complete study planner with task management, a study timer, dashboard statistics, saved tasks using localStorage, and a subjects data file.

Made while learning web development 💻

0
0
29
Open comments for this post

28m 14s logged

Devlog 8 — Organizing My Subjects

Today I worked on the ‘data/subjects.json’ file of my TaskForge study planner.

I wanted to keep my subject information separate from my HTML and JavaScript code, so I created a JSON file for storing the subject data.

What I added

  • Created the ‘data’ folder for project data.
  • Added the ‘subjects.json’ file.
  • Added Mathematics, Physics, Chemistry, English, and Computer.
  • Added an icon for each subject.
  • Added a short description for every subject.
  • Added a simple color value for each subject.
  • Organized all the subjects inside a JSON array.

What I learned

This was my first time making a separate JSON data file for this project.

I learned how JSON can be used to store information in a clean way.

I also practiced using:

  • ‘JSON’ objects
  • ‘JSON arrays’
  • Key-value pairs
  • ‘Strings’
  • Emojis inside JSON

Testing

I checked the file carefully to make sure the JSON syntax was correct.

I checked the quotation marks, commas, brackets, and all the subject information.

The “subjects.json” file is now completed. ✅

Now my project has a separate place for storing subject information.

0
0
62
Open comments for this post

1h 8m 27s logged

Devlog 7 — Saving My Tasks

Today I worked on the js/storage.js file of my TaskForge study planner.

Before this, my tasks were stored only while the webpage was open. If I refreshed the page, my tasks disappeared. I wanted to fix this.

What I added

  • Added browser localStorage for TaskForge.
  • Added a function to save my tasks.
  • Added a function to load saved tasks.
  • Made new tasks save automatically.
  • Made completed/unfinished task changes save.
  • Made deleted tasks stay deleted after refreshing.
  • Added some checks for invalid or missing saved data.
  • Added a function for checking how many tasks are saved.

What I learned

This was my first time using localStorage in this project.

I learned how to use:

  • localStorage.setItem()
  • localStorage.getItem()
  • localStorage.removeItem()
  • JSON.stringify()
  • JSON.parse()

I also learned how two JavaScript files can work together. The storage file handles saving and loading, while tasks.js manages the actual tasks.

Testing

I added a few study tasks and refreshed the page to check if they were still there.

I also tested completing a task and refreshing the page. I checked deleting a task too.

While connecting storage.js with tasks.js, I had to make a few changes so the saved task data was loaded correctly.

Now my TaskForge tasks can stay saved even after refreshing the website.

0
0
67
Open comments for this post

1h 43m 8s logged

Devlog 6 — Building the Dashboard

Today I worked on the js/dashboard.js file of my TaskForge study planner.

I wanted the Home page to show useful information about my study tasks instead of just being a normal landing page.

What I added

  • Added a total task counter.
  • Added a completed task counter.
  • Added a pending task counter.
  • Added automatic progress percentage calculation.
  • Added a progress bar that changes according to completed tasks.
  • Added a Today’s Tasks section.
  • Added different messages when there are no tasks for today.
  • Added completed and pending status for today’s tasks.
  • Connected the dashboard with the task data from tasks.js.

What I learned

While making this file, I learned how to calculate information from an array of objects.

I practiced using:

  • filter()
  • length
  • Math.round()
  • setInterval()
  • Functions
  • Template literals
  • Updating HTML elements with JavaScript

I also learned how different JavaScript files can work together in one project.

Testing

I added some tasks and checked whether the dashboard numbers changed correctly.

I tested completed and pending tasks and checked whether the progress percentage and progress bar updated.

I also tested tasks with today’s date to make sure they appeared in the Today’s Tasks section.

I had to check a few things while testing, especially the connection between tasks.js and dashboard.js.

Now the Home page gives me a quick view of my study progress.

0
0
90
Open comments for this post

1h 33m 23s logged

Devlog 5 — Building the Study Timer

Today I worked on the js/timer.js file of my TaskForge study planner.

I wanted to add a simple timer that I could actually use while studying.

What I added

  • Added a 25-minute study timer.
  • Added a 5-minute short break.
  • Added a 15-minute long break.
  • Added Start, Pause, and Reset buttons.
  • Added a countdown that updates every second.
  • Added different messages depending on the timer state.
  • Added a message when the timer reaches zero.
  • Added buttons for switching between timer modes.
  • Made sure another timer does not start while one is already running.

What I learned

While making this file, I learned how JavaScript timers work.

I practiced using:

  • setInterval()
  • clearInterval()
  • Functions
  • Variables
  • if statements
  • Event listeners
  • Updating HTML using JavaScript
  • Converting minutes into seconds

I also learned how to stop and restart a JavaScript timer without refreshing the webpage.

Testing

I tested the Start, Pause, and Reset buttons.

I also tested all three timer modes. To make testing faster, I temporarily used a shorter countdown instead of waiting for the full 25 minutes.

I checked the browser console and fixed small problems while testing.

Now TaskForge has a working study timer that can be used for focused study sessions and breaks.

0
0
91
Open comments for this post

3h 4m 6s logged

Devlog 4 — Building the TaskForge

Today I worked on the js/tasks.js file of my TaskForge study planner.

This was a bigger part of the project because I wanted TaskForge to actually manage my study tasks instead of just displaying the website.

What I added

  • Added a system for creating new study tasks.
  • Added task name, subject, and due date.
  • Added input checking so empty tasks cannot be added.
  • Added a task list that updates when I add a task.
  • Added Complete and Undo buttons.
  • Added a Delete button with a confirmation message.
  • Added All, Pending, and Completed filters.
  • Added a task counter.
  • Added better formatting for due dates.
  • Added an automatic current date for new tasks.
  • Added an empty-state message when there are no tasks.
  • Added basic HTML escaping for task names.

What I learned

While making this file, I learned more about JavaScript arrays and objects.

I also learned how to use:

  • addEventListener()
  • filter()
  • find()
  • createElement()
  • classList
  • dataset
  • Date
  • Template literals

I also practiced connecting JavaScript with the HTML elements I created earlier.

Testing

I tested adding different tasks, completing and undoing tasks, deleting tasks, and switching between the three filters.

I also checked what happens when there are no tasks and tested empty form fields.

There were some small things I had to check and fix while testing, but now the task manager is working with the current TaskForge layout.

This was one of the most useful parts of the project so far because TaskForge is starting to feel like a real study planner.

Next, I will work on js/timer.js and build the study focus timer.

0
0
57
Open comments for this post

1h 34m 20s logged

Devlog 3 — Building the Main JavaScript

Today I worked on the js/script.js file of my TaskForge study planner.

I added the main JavaScript functionality that connects the different parts of my website.

What I added

  • Navigation between Home, Tasks, Timer, and Subjects.
  • Active navigation button styling.
  • Automatic display of the current date.
  • Automatic setting of today’s date in the task form.
  • Basic console messages to check that the JavaScript is loading correctly.

What I learned

While working on this file, I learned how to use JavaScript event listeners, query elements from HTML, change CSS classes, work with data attributes, and use the JavaScript Date object.

Testing

I tested the navigation buttons and checked that the current date appears correctly. I also checked the browser console to make sure the script loads without errors.file 3 - script.js completed!

0
0
82
Open comments for this post

3h 17m 56s logged

Devlog 2 — Designing the TaskForge Interface

Today I worked on style.css and started designing the interface of TaskForge. I added a simple color theme, cards, buttons, navigation styling and a dashboard layout.
I also added responsive CSS so the project can adjust to smaller screens. I wanted the website to look attractive but still keep it simple and realistic for a student project.
I tested the page in the browser and checked the main sections, task area, timer and subject cards. The JavaScript functionality will be added in the next steps.
File completed: style.css ✅

0
0
28
Open comments for this post

2h 0m logged

Devlog 1 — Building the HTML Structure

Today I started working on my TaskForge project. I created the index.html file and made the basic structure of my study planner. I added a header, navigation buttons, a home section, task section, study timer section, and subjects section.
I also added places for showing total tasks, completed tasks, pending tasks, and progress. For the task section, I added a form where a user can enter a task name, choose a subject, and select a date. I also added the basic timer buttons and subject cards.
The page is not fully functional yet because I still need to add CSS and JavaScript. My main goal in this step was to create a good HTML structure that I can build on in the next files.
File completed: index.html ✅

0
0
111

Delete project?

Are you sure you want to permanently delete this project? This action cannot be undone.

All devlogs, followers, and associated data will be removed.

Followers

Loading…