Skip to content

rpuls/medusajs-2.0-for-railway-boilerplate

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 

Repository files navigation

Medusa logo Railway logo

Prebaked medusajs 2.0 monorepo (backend + postgres + redis + storefront)
one-click deploy on railway!

Combine Medusa's modules for your commerce backend with the newest Next.js 14 features for a performant storefront.

PRs welcome! Discord Chat Follow @medusajs

About this boilerplate

This boilerplate is a monorepo consisting of the officially released MedusaJS 2.0 backend and storefront application. It is a pre-configured, ready-to-deploy solution, modified for seamless deployment on railway.app.

Updated: to version 2.1.3 🥳

Preconfigured 3rd party integrations

  • MinIO file storage: Replaces local file storage with MinIO cloud storage, automatically creating a 'medusa-media' bucket for your media files. README
  • Resend email integration setup video - special thanks to aleciavogel for Resend notification service, and react-email implementation! README
  • Stripe payment service: setup video
  • Meilisearch integration: Adds powerful product search capabilities to your store. When deployed on Railway using the template, MeiliSearch is automatically configured and products are automatically indexed through subscribers (backend/src/subscribers/product-upsert.ts and product-delete.ts).

/backend

local setup

Video instructions: https://youtu.be/PPxenu7IjGM

  • cd /backend
  • pnpm install or npm i
  • Rename .env.template -> .env
  • To connect to your online database from your local machine, copy the DATABASE_URL value auto-generated on Railway and add it to your .env file.
    • If connecting to a new database, for example a local one, run pnpm ib or npm run ib to seed the database.
  • pnpm dev or npm run dev

requirements

  • postgres database (Automatic setup when using the Railway template)
  • redis (Automatic setup when using the Railway template) - fallback to simulated redis.
  • MinIO storage (Automatic setup when using the Railway template) - fallback to local storage.
  • Meilisearch (Optional) - provides advanced search capabilities.

commands

cd backend/ npm run ib or pnpm ib will initialize the backend by running migrations and seed the database with required system data. npm run dev or pnpm dev will start the backend (and admin dashboard frontend on localhost:9000/app) in development mode. pnpm build && pnpm start will compile the project and run from compiled source. This can be useful for reproducing issues on your cloud instance.

/storefront

local setup

Video instructions: https://youtu.be/PPxenu7IjGM

Install dependencies npm i Rename .env.local.template -> .env.local

requirements

  • A running backend on port 9000 is required to fetch product data and other information needed to build Next.js pages.

commands

cd storefront/ npm run dev will run the storefront on uncompiled code, with hot-reloading as files are saved with changes.

Useful resources

A template by,
FUNKYTON logo