Daily Schema: Track Actions & Form Habits
Hello and welcome to the inaugural post of Idea2Product! Ever wondered about the stories behind some cool or innovative products? Join us as we delve into the fascinating journeys from initial idea to fully-fledged product. To kick things off, I’ll share the behind-the-scenes of my own creation, Daily Schema which is an online platform designed to help individuals build new habits. Discover the insights that shaped the development of Daily Schema as a tool for personal growth.
Can you tell us about yourself in 3 sentences?
I’m Arinze, a product-focused software engineer with over 6 years of industry experience. Throughout my career, I’ve contributed to diverse industries, crafting impactful products and services aimed at simplifying our daily lives. My passion lies in leveraging technology to create meaningful solutions and enhance user experiences.
Can you tell us a bit more about Daily Schema and what it does?
Daily Schema is a habit-building platform designed to empower users in tracking and developing new habits effectively. Users can set monthly targets for specific actions and monitor their daily progress through insightful charts and illustrations. Whether it’s fitness goals, daily reading, or any other habit, Daily Schema accommodates multiple targets, providing a comprehensive tool for personal development and goal achievement.
What was the driving factor that made you build Daily Schema?
The driving factor behind building Daily Schema was the necessity for a more efficient habit-tracking system for myself during the lockdown. Faced with the challenge of maintaining a consistent routine and tracking numerous habits using unsustainable methods like multiple spreadsheets, I recognised the need for a more streamlined solution. I originally started it as a project to deepen my understanding of web app development but Daily Schema quickly evolved into a fully-fledged product, addressing the inherent limitations of my existing habit-tracking approaches.
Can you tell us a bit more about how you built it?
I pretty much started off by making a requirements document which outlined the core features to include. I then started to work out what the technical implications of the system could be by writing up a technical design document which provided clarity on how different features could be built. The high level design for the application can be visualised with the diagram below.
Here’s a breakdown of key components in the design
- React: Powers the user-facing client-side application.
- Google Firebase: Manages user authentication and segments of application data.
- Node.js with Express: Forms the server-side runtime environment and a flexible web application framework for robust APIs and backend business logic.
- MongoDB: Serves as the document database for storing user application data.
A typical user flow on Daily Schema involves accessing www.dailyschema.com, where users can seamlessly sign up or log in using the React application, configured with the Firebase SDK for efficient authentication. Leveraging Firebase simplifies email/password login, password resets, and social logins (e.g., Google, Facebook, Microsoft) in one centralized area, streamlining development.
Once logged in, users can create new targets, activities, and track progress. The user-facing application securely communicates with the backend, which manages routing, request handling, and validation. The backend, in turn, interacts with the MongoDB database through a secure channel which can be visualised in the diagram below.
Additional tools utilized in building Daily Schema include:
- Recharts: A responsive charting library for React, facilitating the creation of graphs and charts in the app.
- Undraw: An excellent resource for free-to-use illustrations, allowing customisation with preferred colour schemes.
- Netlify: Employed for hosting the frontend React application, offering user-friendly deployment and domain mapping.
- Google Cloud Run: Used for hosting the backend application, providing a scalable and efficient hosting solution.
- Google Analytics: Integrated into Firebase, it tracks web app activity, offering insights into user engagement and behaviour.
Finally, how did you roll this out to end users? Were there any specific platforms or techniques you used for this?
The platform used for the rollout of this product was productHunt, a platform which curates the best new products submitted daily. With product Hunt, you simply sign up, add your product description including screenshots or videos and submit it. Users on productHunt see your product and upvote it if they like it and the more upvotes for your product, the more visibility within productHunt.
Do you have any future plans for the product?
Some new features have been suggested which could be lined up for future development but at the moment there is nothing in flight.
Where can people find Daily Schema and keep up with you?
Daily Schema is live and free at www.dailyschema.com. You can also find me on linkedin at www.linkedin.com/in/arinzeibekwe and keep up with things I get up to at https://www.arinze10.com.