Hi everyone,
In my previous post, I introduced myself and shared the major projects I am working on across AI/ML research, Flutter apps, Rust systems, and local-first software.
In this post, I want to go deeper into one of my personal software projects:
CogniPlan — A Local-First Cognitive Task Planning System
CogniPlan is a productivity and planning system I built to help users convert goals into structured execution plans.
Project repository:
For me, this was an important step because a project becomes much stronger when someone can not only read the code, but also install and test the application.
Design Thinking Behind CogniPlan
While building CogniPlan, I tried to think less like I was building just an app screen and more like I was building a workflow system.
Some questions I asked myself were:
- What happens when the user misses a task?
- How should a goal connect to daily work?
- How can routines be useful without becoming annoying?
- How can the app reduce planning friction?
- How can progress be shown clearly?
- How can the app remain useful without internet?
- How can the user move from planning to execution quickly?
These questions shaped the direction of the project.
A productivity app should not only look good. It should reduce mental load and make execution easier.
Challenges I Faced
Building CogniPlan taught me that productivity apps are more complex than they look.
Some challenges I faced were:
- designing a clean data model
- handling goals, tasks, routines, and progress together
- avoiding messy state management
- managing local database updates safely
- keeping the UI simple
- thinking through missed-task recovery
- making the app useful instead of overloaded
- planning for cross-platform support
- packaging the app for Android and Windows
One important lesson was that adding more features does not automatically make a productivity app better.
The hard part is deciding what should be included, what should be simplified, and what should not be added yet.
What I Learned
This project helped me improve in several areas:
- Flutter app development
- local-first architecture
- state management
- database modeling
- product thinking
- workflow design
- cross-platform planning
- user experience design
- debugging and project structure
- release packaging
It also helped me understand that real software projects require both technical and product-level thinking.
Writing code is only one part of the work.
The bigger challenge is designing something that remains useful, understandable, and reliable.
Why CogniPlan Matters to Me
CogniPlan is personal to me because I built it around problems I actually face.
As a student working on research, software projects, interview preparation, and personal learning, I needed a system that could help me manage execution better.
So this project is not just a portfolio project.
It is also something I want to use and improve for myself.
That makes it more meaningful.
What I Want to Improve Next
Some areas I want to improve in future versions are:
- better adaptive scheduling
- cleaner analytics
- stronger routine handling
- sync support
- backup and restore
- improved desktop experience
- better onboarding
- smarter planning suggestions
- more polished UI/UX
I also want to keep the app practical instead of making it unnecessarily complex.
The main goal is still the same:
Help users plan better and execute consistently.
Final Thoughts
CogniPlan started as a task planning app, but it became much more than that.
It helped me think about how goals, tasks, routines, focus sessions, and schedules can work together as one execution system.
This project also made me stronger as a Flutter developer and helped me understand the value of local-first software.
You can check out the project here:
SOCIAL SHARE CARD GENERATOR