FocusForge banner

FocusForge

6 devlogs
37h 59m

FocusForge is a smart study planning tool built in C++ that helps students optimize their daily study schedule based on upcoming exams, subject difficulty, and available time.
Instead of manually deciding what to study each day, FocusForge automa…

FocusForge is a smart study planning tool built in C++ that helps students optimize their daily study schedule based on upcoming exams, subject difficulty, and available time.
Instead of manually deciding what to study each day, FocusForge automatically calculates the ideal workload, tracks progress, and dynamically adjusts plans when the user falls behind.
The goal is simple: reduce stress, improve consistency, and help students stay on track with minimal effort.

This project uses AI

ChatGPT for debugging, language translations,README and help with css

Demo Repository

Loading README...

panayiotis.savva8

Today i added a proper landing page so anyone landing on the repo immediately understands what the app does.On the UI side, I introduced dashboard stats, including total exams, next exam countdown, and completion rate. This turns the dashboard from a static list into something that actually communicates progress and status at a glance.I added a 404 page to handle broken routes cleanly, which is a small detail but makes the app feel more complete and intentional.
I also reworded the email reminder sent with a custom template instead of plain text. Finally, I implemented an AI study plan system with a local fallback algorithm, so the app can still generate structured study schedules even when external AI services are unavailable. It keeps the core feature functional no matter what.

Attachment
0
panayiotis.savva8

DEVLOG #5
Today I pushed FocusForge forward in a meaningful way. I expanded accessibility by adding full translations in Greek, Spanish, French, and Italian. This opens the product to a much wider audience and improves usability for non English users.
I also implemented Google Sign In and Sign Up. This reduces friction in the onboarding flow and makes account creation faster and more reliable. Alongside that, I fixed multiple UI and logic bugs that were affecting consistency and user experience. The interface is now cleaner, more predictable, and easier to navigate.Overall, this update focused on usability, accessibility, and stability.
Next step is to integrate AI powered study plan creation. The goal is to generate personalized plans based on user data.

0
panayiotis.savva8

DEVLOG #4
Today I made solid progress on Focus Forge. I implemented a full dark mode to improve usability in low-light environments and optimized the mobile experience for better responsiveness and layout consistency. I fixed bugs related to updating exams to ensure data integrity and a smoother user flow. I also integrated email reminders using SendGrid so users can receive timely notifications before exams. On the security side, I added input validation for username, password, and email fields to reduce risks like SQL injection, and introduced a temporary 10-minute suspension after 5 failed login attempts to protect against brute-force attacks. Next step I will add Spanish and French translations and add AI to create personalized study plans

Attachment
0
panayiotis.savva8

DEVLOG #3
Today I pushed a major update to FocusForge. I built out the full frontend and aligned the UI with a consistent design system, improving layout, spacing, and overall usability. I also fixed several bugs across authentication flows, including login and registration logic, form validation, and state handling.
Next step is to fix some bugs when trying to update an exam and then add more features like email reminders.

Attachment
Attachment
0
panayiotis.savva8

DEVLOG #2
Today i connected my SQLite database to the API properly and started handling real user data
I implemented login and register routes using Crow, added password hashing with SHA-256, and built a simple session system with tokens so users can stay logged in. It’s not perfect, but it works.
After that, I added the core feature: subjects. Users can now add subjects with difficulty, deadlines, and grades, and then fetch them through the dashboard API. Seeing actual data come back as JSON felt like a big step forward.
I also fixed a bunch of annoying bugs, mostly typos and missing includes that wasted way too much time. Setting up OpenSSL and Asio on macOS was also not fun, but it’s finally compiling and running.
Right now, the backend is stable enough to connect to the frontend. Next step is improving validation, cleaning the code, and making the UI.

Attachment
Attachment
0
panayiotis.savva8

DEVLOG #1
Today I focused on building the core backend for FocusForge, mainly the authentication system and database layer. I set up SQLite with two main tables, users and subjects, and wrote an initialization function so the database creates itself automatically on startup. This removed the need for any manual setup and made the project easier to run and deploy.
I designed structured data models for users, subjects, and sessions to keep the code organized and avoid mixing database logic with application logic. I also implemented password hashing using SHA-256, ensuring that passwords are stored securely instead of in plain text.
On the backend side, I created reusable database functions for inserting and loading users and subjects. These functions use prepared statements to prevent SQL injection and keep the code clean and scalable. I also added basic session management using an unordered map, generating a token on login to track authenticated users.
Finally, I set up a simple web server using Crow and implemented the first API endpoint for login. The flow takes a username and password, hashes the input, compares it with the stored value, and returns a session token if successful.
This stage establishes a solid backend foundation with authentication, database integration, and API handling. Next, I plan to complete registration, improve validation, and connect the frontend to the backend.

Attachment
0