Medusa is an open-source headless commerce engine that enables developers to create amazing digital commerce experiences.
Medusa: Commerce engine
Next.js: React framework
Stripe: Payment provider
Medusa React: Hooks and components for Medusa
Prerequisites: To use Medusa Express, you need a Medusa server. Check out medusa-starter-default for a quick setup.
npx create-medusa-app@latest
git clone --depth=1 https://github.com/medusajs/medusa-express-nextjs medusa-express
cd <your-express-folder>
yarn
# or
npm install
In your project, you should have a .env.template
file with the following content:
NEXT_PUBLIC_MEDUSA_BACKEND_URL=http://localhost:9000
Copy the template into a file used for local development:
mv .env.template .env.local
Add Stripe API key as environment variable to complete orders:
# Stripe key is required for completing orders
NEXT_PUBLIC_STRIPE_API_KEY=pk_test_...
Your Medusa server runs locally on port 9000 by default. Make sure to update the above environment variable, if you've changed the port.
Start up both your Medusa server and Medusa Express and try it out!
Medusa Express is running at http://localhost:8000
!
Important: Medusa Express requires existing product. Either seed your Medusa server with some dummy products, or create your own through Medusa Admin.