📚 "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 - 4242424242424242
git clone https://github.com/psykat1116/Acadeva.git
cd Acadeva
npm run dev
NEXT_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_KEY
andCLERK_SECRET_KEY
and 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_URL
to 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 section
And Set The Value OfUPLOADTHING_SECRET
andUPLOADTHING_APP_ID
- Go To The MUX Website & Create An Account
- Get The
MUX_TOKEN_SECRET
FromSettings -> Access Tokens -> Generate New Token
- You Will Also Get
MUX_TOKEN_ID
From There In TheToken ID
Column