Inspiration
The project was born out of a passion for leveraging AI to solve real-world problems. The idea was to create a one-stop platform where users could experience the transformative power of AI in various forms—be it conversation, image generation, or music composition. Making lives easier for growing artists and local talent.
What We Learned
This project was a tremendous learning curve. Not only did it strengthen our skills in Next.js and full-stack development, but it also gave us valuable insights into managing multiple APIs, integrating robust authentication, and handling real-time events via webhooks.
How We Built It
The project was initialized using Next.js, with TypeScript to maintain code quality. Authentication was set up using Clerk and Auth0, offering a multi-layered security mechanism. For the backend, Express serves the API routes, and the database is managed by PlanetScale using MySQL and PrismaDB.
We integrated various third-party APIs like OpenAI for conversation models, Replicate for music generation, and Stripe for handling subscriptions. Webhooks were employed for real-time event monitoring, particularly for Stripe payment events.
Challenges Faced
One of the main challenges was managing the asynchronous nature of some of the APIs, especially when it came to chat completions and webhooks. Error handling and form validation were other areas that required careful attention to detail. However, libraries like Zod and tools like Axios greatly simplified these tasks. This would serve as a nice rubric for any business to have in their website as a SaaS model, which can be scaled according to demand.
Future Developments
We are planning to integrate Crisp for real-time customer support and error logging, as well as make significant updates to the landing page for a better user experience.
Built With
- auth0
- axios
- bootstrap
- clerk
- crisp
- css3
- express.js
- html5
- javascript
- lucide-react
- mysql
- next.js
- node.js
- openai
- planet-scale
- prismadb
- react
- react-hooks
- replicate
- stripe
- tailwind
- typescript
- vercel
- zod
- zodresolver
Log in or sign up for Devpost to join the conversation.