Curated resources, interactive tools, and step-by-step roadmaps for learners, students, and developers.
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ ๐ฏ Learn โ ๐ ๏ธ Build โ ๐ Deploy โ ๐ค Contribute โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
- ๐ Features
- ๐ ๏ธ Tech Stack
- System Architecture
- ๐ Getting Started
- ๐ค Contributing
- ๐ฏ Open Source Programs
- ๐ฅ Contributors
- ๐จโ๐ป Project Maintainer
- ๐ License
- โญ Show Your Support
|
Carefully curated content for Web Development, DSA, AI/ML, and cutting-edge technologies |
Boost productivity with hands-on coding practice tools and utilities |
|
Crystal-clear paths for developers at every stage of their journey |
Built by developers, for developers with open source spirit |
graph LR
A[๐ฑ Beginner] --> B[๐ช Intermediate]
B --> C[๐ Advanced]
C --> D[โญ Expert]
style A fill:#84cc16
style B fill:#3b82f6
style C fill:#8b5cf6
style D fill:#f59e0b
To help contributors understand how The Dev Pocket handles data and authentication, here is a visual representation of our tech stack integration:
graph LR
User((User)) -- Interacts --> NextJS[Next.js Frontend]
subgraph "Application Logic"
NextJS -- Auth Request --> Clerk[Clerk Auth]
NextJS -- Query --> Prisma[Prisma Client]
end
subgraph "Data Layer"
Prisma -- Session Pooling --> Supabase[(Supabase DB)]
Prisma -- Direct Connect --> Migrations[DB Migrations]
end
Clerk -- Session Tokens --> NextJS
Supabase -- Data Results --> Prisma
Prisma -- Typed Response --> NextJS
style NextJS fill:#000,color:#fff,stroke:#333
style Clerk fill:#6C47FF,color:#fff
style Supabase fill:#3ECF8E,color:#fff
style Prisma fill:#2D3748,color:#fff
๐ฆ Quick Setup Guide
# Clone the repository
git clone https://github.com/Darshan3690/The-Dev-Pocket.git
# Navigate to project directory
cd The-Dev-Pocketnpm install
# or
yarn install
# or
pnpm install
โ ๏ธ Important: Prisma CLI does not load.env.local.
Please use a.envfile for database configuration.
- ๐ Visit Supabase
- โ Create a new project
- โ๏ธ Go to Settings โ Database โ Connection string
You will need two connection URLs from Supabase:
- Session pooler URL (used by Prisma Client)
- Direct connection URL (used by Prisma migrations)
- ๐ Create a
.envfile in the project root (same level aspackage.json) and add:
DATABASE_URL="postgresql://postgres:<PASSWORD>@db.xxxxx.supabase.co:6543/postgres?pgbouncer=true"
DIRECT_URL="postgresql://postgres:<PASSWORD>@db.xxxxx.supabase.co:5432/postgres"
RATE_LIMIT_MODE="INMEM"If you want to use the Redis-backed rate limiter instead of the local in-memory fallback, also add:
RATE_LIMIT_MODE="UPSTASH"
UPSTASH_REDIS_REST_URL="https://<your-upstash-endpoint>"
UPSTASH_REDIS_REST_TOKEN="<your-upstash-token>"# Generate Prisma Client
npx prisma generate
# Push schema to database
npx prisma db push
# Seed the starter quiz/category data
npx prisma db seed
# (Optional) Open Prisma Studio for DB management
npx prisma studio- ๐ Go to Clerk Dashboard
- โ Create a new application.
- ๐ Copy your API keys.
- ๐ Add to
.env.local:
CLERK_PUBLISHABLE_KEY=your_publishable_key
CLERK_SECRET_KEY=your_secret_keynpm run dev๐ Success! Visit http://localhost:3000
|
Show some love to the project |
Create your own copy. |
Make your mark |
# 1. Star this repository โญ
# 2. Fork the repo ๐ด
# 3. Create a feature branch
git checkout -b feature-amazing-feature
# 4. Commit your changes
git commit -m "feat: add amazing feature"
# 5. Push to your fork
git push origin feature-amazing-feature
# 6. Open a Pull Request ๐๐ Please read our CONTRIBUTING.md and CODE_OF_CONDUCT.md before contributing
Check labels: gssoc, hacktoberfest, ecwoc, good first issue, help wanted
Darshan Rajput Creator & Lead Maintainer ๐ |
This project is licensed under the MIT License
See the LICENSE file for details
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ Free to use โข Modify โข Distribute โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
|
Star the repository |
Fork and customize |
Spread the word |
Made with โค๏ธ by Darshan3690 & Contributors
โญ Star us on GitHub โ it motivates us a lot!