{"id":21843211,"url":"https://github.com/jackccrawford/msona","last_synced_at":"2026-02-10T16:16:34.483Z","repository":{"id":262396418,"uuid":"887098812","full_name":"jackccrawford/msona","owner":"jackccrawford","description":"mSona is the first in a series of apps by mVara","archived":false,"fork":false,"pushed_at":"2024-11-12T07:26:54.000Z","size":893,"stargazers_count":3,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-11-27T22:14:30.490Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/jackccrawford.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"docs/SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-11-12T06:54:53.000Z","updated_at":"2024-11-16T03:20:19.000Z","dependencies_parsed_at":"2024-11-12T08:30:13.672Z","dependency_job_id":null,"html_url":"https://github.com/jackccrawford/msona","commit_stats":null,"previous_names":["jackccrawford/msona"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jackccrawford%2Fmsona","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jackccrawford%2Fmsona/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jackccrawford%2Fmsona/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jackccrawford%2Fmsona/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jackccrawford","download_url":"https://codeload.github.com/jackccrawford/msona/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":235698026,"owners_count":19031463,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-27T22:14:32.436Z","updated_at":"2025-10-08T08:31:36.444Z","avatar_url":"https://github.com/jackccrawford.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 🌟 mVara Suite (Beta)\n\nA beautiful suite of applications that includes Luminary (quote discovery) and mSona (music discovery). Built with modern web technologies and designed for an exceptional user experience.\n\n![Beta Version](https://img.shields.io/badge/version-0.1.0--beta-blue)\n![License](https://img.shields.io/badge/license-MIT-green)\n![React Version](https://img.shields.io/badge/react-18.3.1-61dafb)\n![TypeScript](https://img.shields.io/badge/typescript-5.5.3-blue)\n![Test Coverage](https://img.shields.io/badge/coverage-85%25-green)\n\nLive Demo: https://msona.netlify.app\n\n![mSona Dark Mode](public/images/mSona%20with%20details.png)\n\n## 🚀 Features\n\n### 🎵 mSona: Music Discovery\n- **Smart Search**: Find artists, songs, and albums with intelligent results\n- **Audio Preview**: Listen to track previews with visualization\n- **Track Analysis**: View detailed audio features and characteristics\n- **Direct Spotify Integration**: Quick access to tracks on Spotify\n- **Visual Analytics**: Track mood and energy visualization\n- **Audio Controls**: Volume control and playback management\n- **Favorites System**: Save and manage your favorite tracks\n\n### 🌟 Luminary: Quote Discovery\n- **AI Transformations**: Transform quotes using Grok\n- **Text-to-Speech**: Listen to quotes with ElevenLabs voices\n- **Smart Categories**: Intelligently organized quotes\n- **Favorites System**: Save and manage your favorite quotes\n- **PDF Export**: Generate beautiful quote collections\n- **Mobile Optimized**: Vertical action buttons and responsive layout\n\n## 🛠️ Tech Stack\n\n- **Frontend**: React 18, TypeScript\n- **Styling**: Tailwind CSS\n- **Build**: Vite\n- **Testing**: Vitest, Testing Library\n- **APIs**: \n  - Spotify Web API\n  - X.AI (Grok)\n  - ElevenLabs\n  - Quotable API\n\n## 📦 Installation\n\n1. Clone the repository:\n   ```bash\n   git clone https://github.com/yourusername/mvara-suite.git\n   ```\n\n2. Install dependencies:\n   ```bash\n   cd mvara-suite\n   npm install\n   ```\n\n3. Set up environment variables:\n   ```bash\n   cp .env.example .env\n   ```\n\n4. Configure API keys:\n\n   a) **Spotify API**\n   - Go to [Spotify Developer Dashboard](https://developer.spotify.com/dashboard)\n   - Create a new application\n   - Get Client ID and Secret\n   - Add redirect URI (e.g., http://localhost:8888/callback)\n   - Select Web API scope\n\n   b) **ElevenLabs**\n   - Sign up at [ElevenLabs](https://elevenlabs.io)\n   - Get API key from your profile\n\n   c) **Grok (X.AI)**\n   - Get API key from [X.AI](https://x.ai)\n   - Ensure you have access to Grok beta\n\n5. Start development server:\n   ```bash\n   npm run dev\n   ```\n\n## 🚀 Deployment\n\n### Netlify (Recommended)\n\n1. Push to GitHub:\n   ```bash\n   git init\n   git add .\n   git commit -m \"Initial commit\"\n   git push\n   ```\n\n2. Connect to Netlify:\n   - Sign up/login to [Netlify](https://netlify.com)\n   - Click \"New site from Git\"\n   - Select your repository\n   - Configure build settings:\n     - Build command: `npm run build`\n     - Publish directory: `dist`\n     - Node version: 18.x\n\n3. Set environment variables:\n   - Go to Site settings \u003e Environment variables\n   - Add all variables from `.env`\n   - Deploy triggers automatically\n\n### Security Notes\n\n- API keys are stored securely in Netlify\n- Keys never exposed in client-side code\n- All API calls routed through serverless functions\n- Rate limiting and error handling included\n\n## 📝 License\n\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.\n\n## 🙏 Acknowledgments\n\n- Music data from [Spotify Web API](https://developer.spotify.com/documentation/web-api)\n- Quote data from [Quotable API](https://github.com/lukePeavey/quotable)\n- Text-to-speech by [ElevenLabs](https://elevenlabs.io)\n- Icons by [Lucide](https://lucide.dev)\n- Development environment by [bolt.new](https://bolt.new)\n\n---\n\n\u003cp align=\"center\"\u003eMade with ❤️ by the mVara team\u003c/p\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjackccrawford%2Fmsona","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjackccrawford%2Fmsona","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjackccrawford%2Fmsona/lists"}