Welcome to Sieve, an IMDB-like platform for discovering and rating the best YouTube playlists or videos on software development, web development, programming languages, frameworks, design, open source, and more. This platform aims to help newcomers and enthusiasts find high-quality and most-rated tutorials.
Sieve is designed to be a comprehensive and user-friendly platform where users can:
- Discover curated YouTube playlists on various technical topics.
- Rate and review playlists to provide feedback and help others find valuable content.
- Contribute by adding new playlists and enhancing the platform’s content library.
- User Registration and Authentication: Secure user sign-up and login functionalities.
- Playlist Discovery: Browse and search for the best playlists on different technical subjects.
- Rating System: Rate and review playlists to help others gauge the quality of the content.
- User Contributions: Submit new playlists to the platform, enriching the content repository.
- Frontend: Next.js, TypeScript
- Backend: Supabase, Next.js Server Actions
- Database: Postgres
- Validation: Zod
To get a local copy up and running, follow these simple steps:
-
Clone the repository:
git clone https://github.com/anaskhan28/sieve-repo.git cd sieve-repo
-
Install dependencies:
npm install
-
Set up environment variables: Create a
.env
file in the root directory and add the necessary environment variables.NEXT_PUBLIC_SUPABASE_URL=your_supabase_uri NEXT_PUBLIC_SUPABASE_ANON_KEY=your_supabase_anon_key YOUTUBE_API_KEY=your_youtube_api_key
-
Run the development server:
npm run dev
Once the development server is running, you can:
- Access the platform: Open sieveit.me in your browser.
- Register/Login: Create a new account or log in to access all features.
- Browse Playlists: Explore playlists based on your interests.
- Rate & Review: Provide ratings and reviews to share your feedback.
- Contribute: Add new playlists to help the community grow.
Distributed under the MIT License. See LICENSE
for more information.
Made with contrib.rocks.