The Fastest Way to Build an App: My 4-Day Adventure with Flutter and ProcrastiBuddy

JOSEF YADUVANSHI
6 min readJan 17, 2023
Procrasti Buddy

Procrastination is a familiar nemesis that we have all encountered at some point in our lives. The feeling of being overwhelmed by unlimited options and paralyzed by the fear of failure, whether staring at a blank page, blinking cursor, or empty calendar, can be overwhelming. But what if I told you that you could turn that fear into joy and accomplishment? That is precisely what ProcrastiBuddy, an all-in-one productivity tool, strives to do.

Click Here To See Caraousel -> ❤️☺️

intro

App Overview

ProcrastiBuddy is a productivity companion that helps users manage their everyday chores more effectively and boost their productivity. A Pomodoro timer, appointment scheduling, bill and payment reminders, and task management are all included in the app. But that’s not all; it also features an NLP AI bot with whom users can communicate to request productivity tips and advice on a number of business and personal life themes. The software is intended to be visually beautiful, simple to use, and responsive to the user’s needs.

Development Process

As the creator of ProcrastiBuddy, I wanted to create something truly unique, rather than just another productivity app. That’s why I decided to build the app using the Flutter framework and the Dart programming language. This allowed me to create an app that could run on both Android and iOS devices in just four days of development. The development process was challenging, but it allowed me to learn several important things. Firstly, I started by creating a mind map of all the features I wanted to include in my app.

Mind Map.

As you can see from the above, I plotted everything in my mind and then started working as per the mind map. First, I had to choose the packages and technology I was going to use. As the mind map shows, I chose Provider to handle state management and Hive to store data locally.

Similarly, for extra features in the AI bot, I used the speech_to_text and flutter_tts packages, as well as a few others, which you can see in the code snap below.

I first started creating the UI design of the dashboard section while implementing Dark Mode and the Material Design 3 pattern. For persistence, I used Hive. After the UI section was completed, the UI took me almost one and a half days to complete, with some overflow issues that I eventually fixed. The next part in my mind was a database, so I started creating Hive data models, adapters, and Notifiers that were kept for the logic part in the future.

The Folder Structure of the application looks like this:

Folder Structure

The database part didn’t take much time thanks to the ease of use of Hive and code generators for adapters in Hive. The next was state management, which gave me a hard time because I had to synchronize each and every page with each other. But, thanks to my provider, I was able to compensate. But still, I think I might have followed some bad practices while managing the state management, which I will improve in the coming days. The next thing I focused on was creating the chatbot using the OpenAI GPT Text Davinci — 03 Model which actually didn’t take much to implement the main thing that took time in implementing was The UI part and some Speeh-to-text parts. Rest was a smooth experience. The entire code is open-source in my GitHub repository. So, if anyone wants to contribute or point out any problems with bad practices, please do so. Open an issue and send a pull request. I will be more than happy to learn from you guys. I guess there is so much to explain about the development process that this blog will be overloaded with all the information, I will leave it to you guys to explore the source code, and feel free to ask any questions if you have any queries.

Learnings and Insights

In an app like ProcrastiBuddy, I discovered the value of conversational AI. The app’s NLP AI bot is not just any ordinary bot; it is designed to comprehend the user’s situation and provide the best solution available. This made me realize how AI may be utilized to increase user engagement and provide personalized solutions. In addition to these specific technical skills, I also learned the importance of having a clear vision, a well-defined plan, and the willingness to work hard to make that vision a reality. I learned that with a clear goal in mind and a good amount of hard work and determination, I can achieve anything I set my mind to. My advice to any developers or entrepreneurs wanting to create comparable apps is to constantly be open to learning new technologies and to never be scared to experiment with new ideas.

Conclusion

The next phase for the Procrasti Buddy app is to add more functionality. I intend to add a grocery list function, a calendar feature, and a goal-setting and progress-tracking feature. My adventure begins with Procrasti Buddy. I hope to continue upgrading and enhancing the application by adding new features and addressing identified bugs. I am continuously searching for ways to enhance the app so that it better meets the needs of its users, and I welcome user input and recommendations. I’m happy that I was able to transform my own issue with procrastination into something constructive and useful for others. With Procrasti Buddy by your side, you can say goodbye to procrastination and hello to productivity, a better, more successful life, and productivity. The best part is that there are no advertisements at all! If you’re looking for a one-stop solution for all your productivity needs, give ProcrastiBuddy a try.

See you in the next Blog. Clap if you liked the blog. Thank You. My GitHub.

GitHub Repository. 👇🏻👇🏻

--

--

JOSEF YADUVANSHI

TECH ENTHUSIAST || APP DEVELOPMENT ❤️ || eatSleepCode — repeat👨🏻‍💻 || Okay BYEE!