{"id":27195830,"url":"https://github.com/moisestech/ai24-news","last_synced_at":"2025-04-09T19:47:57.790Z","repository":{"id":281389763,"uuid":"945056752","full_name":"moisestech/ai24-news","owner":"moisestech","description":"Realtime News w/ FLUX Turbo","archived":false,"fork":false,"pushed_at":"2025-03-21T14:47:12.000Z","size":218,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-21T15:40:00.533Z","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":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/moisestech.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2025-03-08T15:01:33.000Z","updated_at":"2025-03-21T14:47:17.000Z","dependencies_parsed_at":"2025-03-08T19:23:51.334Z","dependency_job_id":"5608dbde-8ea7-4216-89a3-110d2ed5bcb4","html_url":"https://github.com/moisestech/ai24-news","commit_stats":null,"previous_names":["moisestech/ai24-news"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/moisestech%2Fai24-news","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/moisestech%2Fai24-news/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/moisestech%2Fai24-news/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/moisestech%2Fai24-news/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/moisestech","download_url":"https://codeload.github.com/moisestech/ai24-news/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248103012,"owners_count":21048231,"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":"2025-04-09T19:47:56.371Z","updated_at":"2025-04-09T19:47:57.775Z","avatar_url":"https://github.com/moisestech.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# AI24 News Generator\n\nA modern web application that generates AI-powered visualizations for news headlines using advanced AI models and real-time media generation.\n\n## 🚀 Features\n\n- Real-time news fetching from trusted sources\n- AI-powered image generation with artistic styles\n- Text-to-speech audio generation with word-level alignment\n- Rate limiting and subscription management\n- Responsive, modern UI with dark mode support\n- Real-time progress tracking for media generation\n\n## 🏗️ Architecture\n\n```mermaid\ngraph TD\n    A[Client] --\u003e B[Next.js App Router]\n    B --\u003e C[API Routes]\n    C --\u003e D[External Services]\n    D --\u003e E[ElevenLabs API]\n    D --\u003e F[TogetherAI API]\n    D --\u003e G[Supabase]\n    G --\u003e H[Database]\n    G --\u003e I[Storage]\n```\n\nSee [Architecture Documentation](./docs/architecture.md) for detailed diagrams and explanations.\n\n## 🛠️ Tech Stack\n\n- **Framework**: Next.js 14 with App Router\n- **Styling**: Tailwind CSS with custom UI components\n- **State Management**: Jotai for global state\n- **Database**: Supabase (PostgreSQL)\n- **Storage**: Supabase Storage\n- **AI Services**: \n  - TogetherAI for image generation\n  - ElevenLabs for text-to-speech\n- **Type Safety**: TypeScript with strict mode\n- **Testing**: Jest and React Testing Library\n\n## 📚 Documentation\n\n- [Architecture Overview](./docs/architecture.md)\n- [State Management](./docs/state-management.md)\n- [Media Generation Flow](./docs/media-generation.md)\n- [API Integration](./docs/api-integration.md)\n- [Database Schema](./docs/database.md)\n- [UI Components](./docs/ui-components.md)\n- [Development Guide](./docs/development.md)\n\n## 🚀 Getting Started\n\n1. Clone the repository\n2. Install dependencies:\n   ```bash\n   npm install\n   ```\n3. Set up environment variables:\n   ```bash\n   cp .env.example .env.local\n   ```\n4. Start the development server:\n   ```bash\n   npm run dev\n   ```\n\n## 🔑 Environment Variables\n\nRequired environment variables:\n- `NEXT_PUBLIC_SUPABASE_URL`\n- `NEXT_PUBLIC_SUPABASE_ANON_KEY`\n- `SUPABASE_SERVICE_ROLE_KEY`\n- `ELEVEN_LABS_API_KEY`\n- `TOGETHER_API_KEY`\n\n## 📝 License\n\nMIT\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmoisestech%2Fai24-news","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmoisestech%2Fai24-news","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmoisestech%2Fai24-news/lists"}