Inspiration

During the first lecture of my data structures and algorithms class in college, the first advice that our professor told us was to practice coding for 1-2 hours daily if we wanted to get better at it. This originally inspired me to build an app that keeps track of my coding activity on daily basis.

What it does

This app allows the user to keep track of their coding activity and gamify learning to code and allows them to maintain consistency by keeping a daily streak tracker.

How I built it

Using the react native/expo framework for the front-end, I created a cross platform application that is able to keep track of the user. Node.js powers the backend of this application using Azure CosmosDB, a NoSQL database.

Challenges I ran into

The main challenges in building this app was the interaction between the frontend and the backend and how the database is managed.

Accomplishments that I'm proud of

I am proud to be able to create a product that utilizes an industry-standard application like Azure to power my application and that I was able to learn how to do so throughout this journey. Overall, I'm proud of creating an end-to-end application that is able to create an amazing user experience and allow users to remain consistent with coding.

What I learned

Throughout this experience, I learned how I can best manage a project, especially when working to produce a product for an hackathon. I learned the challenges of creating a cross platform application and the services that it has to utilize such as Azure, in order to be a successful application. For my project, I wanted to get more experience learning a new framework which is why I chose to use React Native. While I have a bit of experience with React and Javascript, this allowed me to adapt my knowledge to Expo and TypeScript.

What's next for track.dev

I believe there is still a long way to go for this application and in the coming week I would like full adapt this application, create unit tests to further test for errors, and hopefully, release the application to the real-world and get developer feedback. I would like to implement a rubber ducking feature, essentially a page where the user could talk to an AI application to debug or walkthrough errors. I would also like to implement an AI features that maintains and updates a coding journal.

Share this project:

Updates