# Quixotic Project Overview ## Purpose Quixotic is a Telegram miniapp for YouTube music search and MP3 conversion. It allows users to search for videos on YouTube and convert them to MP3 format through a Telegram Web App interface. ## Key Features - 🔍 YouTube video search - 🎵 MP3 conversion using FFmpeg - 📱 Telegram Web App interface - 💾 SQLite database for storage - 📊 Search history tracking - 🤖 Telegram Bot integration ## Tech Stack - **Backend**: Node.js with Express.js server - **Database**: SQLite with sqlite3 package - **YouTube API**: play-dl package for YouTube video handling - **Audio Processing**: fluent-ffmpeg for MP3 conversion - **Telegram**: node-telegram-bot-api for bot functionality - **HTTP Client**: axios for API requests - **Frontend**: Vanilla HTML/CSS/JavaScript (no framework) ## Main Dependencies - express: ^4.18.2 - sqlite3: ^5.1.6 - fluent-ffmpeg: ^2.1.2 - play-dl: ^1.9.7 - node-telegram-bot-api: ^0.64.0 - axios: ^1.6.2 ## Development Dependencies - nodemon: ^3.0.2 (for development server) ## Node.js Requirements - Node.js >= 16.0.0 - Package manager: Yarn 1.22.19