Time Logger: Simplifying Journaling with AI-Powered Reflection
Effortlessly record your daily moments, big and small, in one place.

I have only been working on personal projects for my own convenience. I'm looking to get my first job in the industry, and I'll share what I can from the projects I built that I'm currently using or collecting dust.
Traditional journaling methods can be time-consuming and often feel like a chore. We need a more efficient and enjoyable way to reflect on our daily lives. That's where Time Logger comes in – a console and GUI application that uses AI to simplify journaling and make it a sustainable habit.
Background
Need
While I wanted to journal, my primary motivation was wanting to establish an online presence.
I've been coding for several years now but I didn't touch social media. I seriously just go there for memes.
It was just last month that I became serious about being present online, not having posted anything but memes, I looked around to know how other people did it, but it didn't feel right, I didn't know what to post and what to keep to myself, that's when I remembered the logger I built to keep track of small changes I don't commit to git and how I made them.
Inspiration
You know how YouTubers in their dev log video can speak like they remember the whole process, I didn't know how they did it but a logger came to mind, so before I started a new project I quickly wrote a script to store entries on a txt file.
You probably know how the rest of this goes, Time Logger is a desktop application to keep and use entries in a meaningful way.
If anyone shares these problems please consider using and contributing to Time Logger.
Features:
A simple console application to write new entries with no distractions.
Tag entries for easy filtering and searching
Attach files to entries for added context
Generate social media posts from your loaded entries
Continuous Logging: set reminders to log your experiences at regular intervals
Post on X and LinkedIn with just a few clicks
Chat about your day(s) with a chatbot that has access to your loaded entries
Design
The most important aspect of this application is being frictionless it is easy to use and pick up.
Console Application:
When it starts it will load all the entries you added that day, and prompt you with the time for tags to attach.
2024-07-08:
08:10 am: example_tag
Example entry text
09:09 am: tag another_tag
An entry with more tags %%new_tag and attachments **path/to/related/file.pdf **clp
Please refer to the README.md file in the GitHub repository for more details on how to use it.
GUI Application
The UI is quite straightforward.
Logs
Other than adding posts and entries, you can filter the loaded entries using tags by including and excluding some, and choosing a time window, you can also search with text.
Remember to use "I" to refer to yourself, and "you" to refer to the application, it helps when conversing with the chatbot.

Posts
Here you can view the posts you made using Time Logger and post them to your X and LinkedIn, and soon to Facebook as well.

Generate Posts
Say goodbye to having to think up content, an LLM will use your loaded entries to generate posts for you.

Let the AI Get to Know You
Ask it about anything, something you forgot, to summarize your entries, to write a hackathon blog post, or about that time you committed your database to the repository by mistake.
This chatbot is made to think it is Time Logger itself, it's designed like this to soon enable it to directly interface with all the aforementioned features.

And... the Setting Screen.
from here you can log in to your accounts, and customize how often you'd like to log a quick one-line entry.

The Process
This part is completely generated by Time Logger (I removed some stuff).
Here is the detailed step-by-step process of building Time Logger, grouped by day, based on your entries:
July 1, 2024
Started working on the database API
Got the database API running
Implemented quick console logging
July 2, 2024
Worked on the UI, focusing on tags
Designed the UI for tags
Implemented adding tags from the text field
Thought about supporting screenshots and attachments
July 3, 2024
Wrapped up work for the day, having finished the UI and a good part of the logic
Reflected on the importance of putting in effort, regardless of the outcome
July 4, 2024
Tested attaching images
Implemented filtering tags
Showed attachments on the entry card
Added the ability to add an entry from the UI
Tested attaching multiple images
July 5, 2024
Planned out the next steps:
Learn how to use the X API and log it
Work on Time Logger
Set goals for the day:
Enable deleting and editing old entries
Enable deleting and editing tags
Design the posts tab UI
July 6, 2024
- Tried to use the Tweepy library to post on Twitter/X, but had trouble with access levels
July 7, 2024
Accidentally deleted two entries while working
Found out how to post using Tweepy, but had trouble with access levels
Needed to get the todo list from the day before yesterday done
July 8, 2024
Posted two posts with Tweepy
Started learning about FaceBook and LinkedIn APIs
July 9, 2024
Updated the README file
Learned how to use LLaMA
Found an API called Groq, which is easy to use
July 10, 2024
Worked on the posts UI
Watched the Neuralink update
July 11, 2024
Edited the database
Started building the AI Tool UI
Worked on the prompt for the post-generator
July 12, 2024
- Reached the 90-90 stage (90% of the work is done, but the remaining 10% takes 90% of the time)
July 13, 2024
Committed the changes made yesterday
The user can now generate, write, edit, and delete posts, but posting is not supported yet
Started working on the preferences tab
July 14, 2024
Polished up a presentation for a friend
Planned out the next steps:
Prompt the chatbot on a different thread
Enable the copy feature on the AI tool chat boxes
Start the hackathon blog post about Time Logger
Get the app to post on Facebook
July 15, 2024
Put the prompt function on a separate thread
Fixed some issues with the UI
Enabled the copy feature on the AI tool chat boxes
Started designing the settings screen
July 16, 2024
- Worked on the preferences (settings) screen
July 17, 2024
Figured out how to let the user log in with their Twitter/X account
Struggled to get things done, but made a plan to break it down into smaller steps
July 18, 2024
Struggled to stop procrastinating and start learning what was needed
Asked for help online to learn how to store API keys and user credentials
July 19, 2024
- Set up the LinkedIn API
July 20, 2024
Helped around the house
Got back to work and felt motivated
July 21, 2024
Electricity went out for 12 hours
Confirmed that logging in with LinkedIn is working
Looked for ways to make posts with the LinkedIn API
July 22, 2024
Got back to work and felt motivated
Struggled with the LinkedIn API, finding it unnecessarily complicated
Watched anime episodes
July 23, 2024
Had trouble getting the LinkedIn and Facebook APIs to work
Considered submitting the application as is
Had depressing thoughts due to the lack of progress
July 24, 2024
Wrapped up the application for the hackathon
Read through articles made for the hackathon to get an idea of how the blog post should be like
Evaluated the project based on the criteria:
Real-world usefulness
Feature completeness
The story behind it
July 25, 2024
Improved the preferences screen
Figured out how to implement Continuous Logging
Got the LinkedIn API to work, posting on LinkedIn via the API
Packed the Continuous Logging into an executable
July 26, 2024
- Packed the Console Application into an executable
July 27, 2024
Finished adding or fixing features
Packaging the application to an executable
Planned out the hackathon blog post, including:
Explaining design choices concerning UX and UI
Listing features with brief explanations and reasons behind them
Speaking about the inspiration behind Time Logger
Relating the application to Hashnode and the possibility of generating blog posts for users
Making it personal for the readers
Mentioning the challenges faced during development
Future Plans
I'm quite proud of Time Logger, but it improved much further.
Smoothing the UX by adding keyboard shortcuts.
Enabling the chatbot to control everything.
Adding an AI-assisted Dirary tab.
Building a backend.
Porting to Android, IOS, Linux, and Mac.
Conclusion
I started building Time Logger because I needed it, it's the only time tracker that I can use without overthinking, I know a lot of people have similar problems and I would be overjoyed if you started using Time Logger, or contribute to it, feedback is also much appreciated.
The Windows executable is out, give it a try you won't regret it.
GitHub: https://github.com/ezooon/TimeLogger/
An attempted where Time Logger wrote the whole blog post: https://hashnode.com/post/clz4d1s3f000l09l90dfyhovr



