For Demo, use Stripe Testing Cards
Live Demo: Store
Live Demo: Dashboard
Visit Store Repo: Store
- Admin dashboard is serving as CMS, Admin and API.
- Create and multiple stores them within single Dashboard.
- Authentication with Clerk.
- Integration with Stripe payments and webhooks.
- Image uploads with Cloudinary.
- Styles with Shadcn UI.
- Utilize latest Nextjs 13 App Router.
Node v14.x
git clone [email protected]:tarek-elmasri/ecommerce-admin.git
cd ecommerce-admin
npm install
DATABASE_URL=
# Clerk Authentication Keys
NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY=
CLERK_SECRET_KEY=
# Clerk Authentication callback urls
NEXT_PUBLIC_CLERK_SIGN_IN_URL=/sign-in
NEXT_PUBLIC_CLERK_SIGN_UP_URL=/sign-up
NEXT_PUBLIC_CLERK_AFTER_SIGN_IN_URL=/
NEXT_PUBLIC_CLERK_AFTER_SIGN_UP_URL=/
# Cloudinary cloud preset
NEXT_PUBLIC_CLOUDINARY_CLOUD_NAME=
# Stripe Secret Key
STRIPE_SECRET_KEY=
# Stripe Webhook Secret
STRIPE_WEBHOOK_SECRET=
# FrontEnd Store For Stripe Callbacks
FRONTEND_URL=
npx prisma generate
npx prisma push
- In Stripe console, create new endpoint webhook.
- Endpoint URL = <ADMIN_DASHBOARD_URL>/api/webhook.
- Add "checkout.sessions.completed" Event.
npm run dev
# or
yarn dev
# or
pnpm dev