📚 "Acadeva" a Learning Management System Website Like Udemy Made Using NextJS, Tailwind CSS, Typescript, Prisma As ORM, CockroachDB As PostgreSQL, Clerk For Authentication, Stripe For Payment, Mux For Video Processing, Shadcn UI For User Interface And Much More.
Stripe Is In Test Mode. So, Use the Dummy Card Numbers Given Below. For More Details Or a Dummy Number of Your Country Go To Testing Card Number
INDIA - 4000003560000008
USA - 4242424242424242git clone https://github.com/psykat1116/Acadeva.gitcd Acadeva
npm run devNEXT_PUBLIC_CLERK_PUBLISHABLE_KEY=
CLERK_SECRET_KEY=
NEXT_PUBLIC_CLERK_SIGN_IN_URL= /sign-in
NEXT_PUBLIC_CLERK_SIGN_UP_URL= /sign-up
DATABASE_URL=
UPLOADTHING_SECRET=
UPLOADTHING_APP_ID=
MUX_TOKEN_ID=
MUX_TOKEN_SECRET=
NEXT_PUBLIC_SITE_URL = http://localhost:3000
STRIPE_SECRET_KEY=
STRIPE_WEBHOOK_SECRET=
NEXT_PUBLIC_TEACHER_ID=- Go Through CockroachDB Website Create An Account & Create A Cluster. You can only create Single Cluster For Free.
- After Create Your Free Cluster Save The Password For Use In the DB Connection String.
- Choose Your Database, Language, OS, ORM, and User & Copy The URL string & Paste it Into The .env file.
- I Use Typescript & Prisma ORM
DATABASE_URL = postgresql://<username>:<password>@<host>:<port>/<database>?sslmode=verify-full- Create Your Account And Create a New Application
- Set The Login And Sign Up for Medium Like Google, Github, Email, Phone No, etc
- Get
NEXT_PUBLIC_CLERK_PUBLISHABLE_KEYandCLERK_SECRET_KEYand paste into .env File - Go Through the documentation
- Create Your Stripe Account and create a new project account
- Get The Secret Key & Set This Into
STRIPE_SECRET_KEY - For Testing The Webhook In the Local Environment Go Through the Local Environemnt
- First Download The Stripe CLI
- Run The Following Code Into The Terminal
stripe login stripe listen --forward-to localhost:3000/api/webhook
- After Running This You Will Get A Code & Paste it into
STRIPE_WEBHOOK_SECRET - For Hosted Website Set
NEXT_PUBLIC_SITE_URLto your hosted website URL - Get Webhook Secret From Here
- Endpoint URL will be hosted website URL & Selected Events Will Be
Checkout -> checkout.session.completed - Update The STRIPE_WEBHOOK_SECRET to your hosted website
https://{website}/api/webhook
- Go To Uploadthing Website Create An Account & Create a new app
- Get The API Keys In the
API keys sectionAnd Set The Value OfUPLOADTHING_SECRETandUPLOADTHING_APP_ID
- Go To The MUX Website & Create An Account
- Get The
MUX_TOKEN_SECRETFromSettings -> Access Tokens -> Generate New Token - You Will Also Get
MUX_TOKEN_IDFrom There In TheToken IDColumn