AudioInsight is a full-stack application that processes audio, generates transcriptions, and allows users to ask questions about the related audio.
Its creation was motivated by participation in a dev.to challenge.
- Start by cloning this repository:
git clone [email protected]:gabrielsenadev/audioinsight.git
- Install dependencies:
npm ci
- Configure your environment
- Run application
npm run dev
This application depends on some providers to work with ai and database. It has been developed with minimal provider dependency. So, if you prefer a different provider, you can easily switch.
This application integrates with the Cloudflare AI ecosystem to utilize AI Models.
- CLOUDFLARE_ACCOUNT_ID
- CLOUDFLARE_API_TOKEN
For storing audio data, this application relies on Netlify Blobs. You will need a Netlify Site and Account.
- NETLIFY_SITE_ID
- NETLIFY_TOKEN
MongoDB is used to store chats and chat messages.
- MONGODB_URL
- MONGODB_DATABASE
- Next.js: Frontend React Application and API Application
- Cloudflare AI: Interaction with Cloudflare AI Models
- MongoDB: Database to store chats and messages
- Netlify Blobs: To store audio files
- Zod: User input API validation
- Tabler Icons: Application icons
- Wavesurfer: Audio wave visualization player