A secure and friendly interface for viewing videos and courses stored on Google Drive.
Features • Tech Stack • Installation • Roadmap • About
- 🔐 Secure Authentication - Login integration with Google OAuth.
- 📁 Intelligent Organization - Video listing organized by folders.
- 🎥 Integrated Player - Video playback directly within the interface.
- 📱 Responsive Design - Interface adapted for all devices.
- 🌓 Adaptive Theme - Support for light and dark modes.
- 💾 Local Cache - Fast loading of previously viewed content.
- 👥 Multi-user Support - Support for multiple users with data isolation.
- 💰 Plans & Subscriptions - Subscription system with different access levels.
- 📋 Waitlist System - Queue management for new users.
- 💰 Crypto Payments - USDT payment processing via TANOS.
- 🛡️ Blockchain Security - Atomic swaps using TANOS technology.
- Node.js - Runtime environment.
- Fastify - Web framework.
- MySQL - Database.
- Prisma - Database ORM.
- JWT - Authentication.
- TypeScript - Programming language.
- Zod - Data validation.
- TANOS - Bitcoin/Nostr atomic swaps.
- Next.js - React framework.
- React - UI library.
- Tailwind CSS - CSS framework.
- TypeScript - Programming language.
- NextAuth.js - Authentication for Next.js.
- Axios - HTTP client.
- Zustand - State management.
- Node.js 18+
- MySQL
Note: Ensure you have a running MySQL instance and the necessary environment variables configured before starting.
-
Clone the repository: bash git clone https://github.com/your-username/drivetube.git cd drivetube
-
Install dependencies: bash npm install
-
Environment Setup:
- Create a
.envfile in the root directory. - Copy the contents from
.env.exampleand fill in your specific values (Database URL, Google OAuth credentials, JWT secrets, etc.).
- Create a
-
Database Setup: bash npx prisma migrate dev
-
Development Server: bash npm run dev
- Google Drive integration
- Basic video streaming
- Crypto payment gateway (TANOS)
- Enhanced analytics for content creators
- Mobile app (React Native)
- Multi-language support
plaintext drivetube/ ├── backend/ # Node.js/Fastify API ├── frontend/ # Next.js application ├── docs/ # Documentation └── prisma/ # Database schema
Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/amazing-feature) - Commit your Changes (
git commit -m 'Add some amazing feature') - Push to the Branch (
git push origin feature/amazing-feature) - Open a Pull Request
Distributed under the MIT License. See LICENSE for more information.
Your Name - @yourhandle - email@example.com
Project Link: https://github.com/your-username/drivetube