Season 1 of the Stream Framework
Every episode forged by you
StreamSaga is a platform where stream viewers can propose and vote for projects or features to be developed live during upcoming seasons and episodes.
Join the live builds and participate in the decision-making process:
- 🎮 Twitch: twitch.tv/ali_run
- 📺 YouTube: youtube.com/@ali_run
- 🟢 Kick: kick.com/ali-run
- 🌳 Linktree: linktr.ee/ali_run (All social links)
- Framework: Next.js 15 (App Router)
- Backend: Supabase (Auth, Database, Realtime, Vector Search)
- Styling: TailwindCSS v4
- AI: OpenAI SDK (for vector embeddings)
- Deployment: Cloudflare Workers (via OpenNext)
- Public Dashboard: View active topics and vote counts in real-time.
- Vector Search: Semantic search across topics and proposals.
- Proposals: Authenticated users can propose new ideas with automatic duplicate detection.
- Voting: One vote per user per proposal.
- Admin Panel: Create/edit topics and moderate proposals.
- Deterministic Identities: Randomly generated animal-based usernames and avatars for users.
- Node.js (latest LTS)
- Supabase account and project
- OpenAI API key
- Cloudflare account (for deployment)
- Clone the repository
- Install dependencies:
npm install
- Copy
example.envto.env.localand fill in your credentials.
Run the development server:
npm run devOpen http://localhost:3000 to see the result.
To grant admin privileges to a user, run the following SQL command in your Supabase SQL editor:
UPDATE auth.users
SET raw_app_meta_data = raw_app_meta_data || '{"role": "admin"}'
WHERE email = 'user@example.com';Replace user@example.com with the email address of the user you want to make an admin.
- TODO.md - Project roadmap and task list
- PRD.md - Product Requirements Document
- ARCHITECTURE.md - Technical architecture and project structure