This is a short summary of the brainstorm for this new App called 'Thoughts'.
6 min read
You've probably have seen this word few time already in my website, and it's definitely a no coincidence the word is there. You'll be able to see on my nav bar menu, one on my posts that I've written few months ago, and you will be surprised that the recent projects that I've been working on closely relates to this very subject matter. For some odd reason, I think I happen to be really captivated by the action of logging, which also translates into documenting yourself. This act of documentation and be able to see the data, is something I found unconsciously fascinating. I realized this yesterday.
Even more funny thing is, I've just (unconsciously) build this project called Habit Tracker, which is, again, a sort of app that documents your habits.
Now comes the real reason why I decided to write this post. Honestly speaking, the purpose of writing this post is mainly for me just organize my thoughts on building this even bigger app with an idea that came to me after building the Habit Tracker project. I have this project idea that I want to build, but I needed a space where I can write them all down.
Purpose: To track and be able to have the knowledge of what are the things that you did throughout the year.
Structure: I thought it would be nice if the App is split into two main functions:
- Main part of the app which allows the user to document the things they did through out the day. Once that data is entered, then the app should automatically generate and save the when, and how many times that specific thing was done in the year.
- Implementation of Habit Tracker. I almost thought of this being a completely separate App, but at the same time it seemed very weird to not have this functionality alongside the main app. The purpose of this app is, again, document when the users successfully participate the habit and document it. After that the users will be able to see how many times they successfully took actions of the habit and when they did.
Disclaimer: I am still unsure whether I should keep these two things as each separate apps. For some reason, it's really hard for me to see them together as it may be very confusing for the users to have two wildly similar yet different app together. But at the same time, the main functionality of the app is the same: documenting the daily life. I think I need to think this through with more time.
Why: The reason why I am making this app, is mainly due to the desire for me to control and have the knowledge of what I did in throughout the year. Mainly, self-satisfaction.
Visuals: I really get motivated using a commit tracker in GitHub. Just to fill up the square, I sometimes discover myself to forcefully take action and do coding. Though it may sound forceful, I think it is still considered as one of the motivating drive that pushes someone to do something. I thought it would be great implementation to use GitHub commit chart and use that as a graph so see the entire years' progress of the habits or things that I did in life. The commit chart is planned to be implemented in both area of the project.
Tech Stack: React with Google Sheet as backend. The reason why I am using a Google sheet, is because I think it's really convenient way to actually store data. Also another main reason is if I were to scale this project bigger, then I can see the issue of security significantly reduced as I am thinking of allowing each users to store their data in their own Google Drive. But I'll have to see how this works (if it's feasible).
- As of now, use Google Sheet, but I also thought of using Notion API (if they release them anytime soon).
- List different types of project (and group the dates accordingly)
- Have current project that I am working on right now, and archived project that I finished (or not).
- Thoughts part of the app is for something structural - something that can be considered as a milestone (Eg - Started a Project, Finished a Project etc)
- Be able to display the projects in timeline?
- Need to have minimal options for posting (if the users have too much freedom, the documentation starts to become very chaotic). Good option to start may be: Start project, Update, End project.
- Need to transfer the database from Firestore to Google Sheet. It seems more fun in doing that.
- Make it React.
- Need to figure out Auth.
- Concentrates on what projects or achievements that you did in a specific months or year - and perhaps shows summary of it.
- For tracking habits, not for milestones. The emphasis on this part of the app is when did you do all the habits.
- Google Sheet is a great choice, since I already have an MVP of this part of the app.
- Books are great examples which can be overlapped in both ways. (Ex - If you start reading this book, it can be considered as a milestone, but you may also want to have a habit that tracks how many times you read a book in general).
While writing the ideas down, I had a good idea of how the project should fit into my life. After all, I am going to use it for myself.
I already have a blog, use Notion for all the notes and memos. Since this project falls under the productivity category, how should this project fit into the workflow? I think the short answer would be that this Thoughts project is a good showcase of what I did in life to the public. If the visitor of my blog are curious about me and wish to know what I do, I think this project can help me share the things that I did to the public (of course, I can choose not to and make few projects private). But this timeline of my life is something I think is what this project should be.
I think I shouldn't be caught up making this perfect. This is, at the end, just my personal project.