Inspiration

I was inspired to build Mood Craft because I saw how important emotional well-being is, but also how hard it can be for people to track their moods and understand their feelings. I wanted to create something that makes it easy and enjoyable for anyone to reflect on their emotions, get insights, and even receive personalized content to help them feel better.

What it does

Mood Craft lets users:

  • Track their daily emotions and thoughts.
  • Get AI-powered emotion analysis and mood insights.
  • Generate personalized poems and stories based on their feelings.
  • Upgrade to premium for unlimited analysis, advanced features, and premium themes.
  • Make secure payments using Cashfree.

How I built it

  • Frontend: Built with React, Vite, and Tailwind CSS for a fast and modern user experience.
  • Backend: Used Supabase for authentication, database, and serverless functions. I also set up a Node.js Express server to securely handle payment webhooks.
  • Payments: Integrated Cashfree’s JavaScript SDK for the checkout flow and set up webhook verification for payment notifications.
  • Database: Used PostgreSQL (via Supabase) to store user data, subscription plans, and usage tracking.

Challenges I ran into

  • Integrating Cashfree payments and handling the lack of TypeScript types for their SDK.
  • Making sure the payment flow was secure and smooth, especially with webhooks and signature verification.
  • Coordinating between the frontend, backend, and payment gateway to ensure everything worked together.
  • Handling edge cases and providing clear feedback to users when something went wrong.

Accomplishments that I'm proud of

  • Successfully built a full-stack app that combines emotion analysis, content generation, and secure payments.
  • Created a smooth and modern user experience with a clean UI.
  • Made the upgrade and payment process seamless for users.
  • Ensured security and reliability in handling sensitive user and payment data.

What I learned

  • How to integrate third-party payment gateways and handle webhooks securely.
  • The importance of initializing SDKs only once and managing state efficiently in React.
  • How to use Supabase for authentication, database, and serverless functions.
  • The value of clear error handling and user feedback in building trust.

What's next for Mood Craft

  • Add more personalized content and activities for users.
  • Improve analytics and insights for users to better understand their emotional trends.
  • Expand payment options and make the upgrade process even easier.
  • Launch on mobile and add more integrations to help users on their emotional journey.

Built With

Share this project:

Updates

Submission history