Development Workflow
Development Process
Section titled “Development Process”- Create a Dev Project to track your changes
- Develop in
magic_development(master tenant) - Test via
admin-development.magiceverse.online - Distribute code to other tenants
- Rebuild affected tenant containers
- Verify on production tenants
Backend Development
Section titled “Backend Development”File Locations
Section titled “File Locations”/mnt/data/magic_omniverse/magic_commerce/magic_development/backend/src/├── api/admin/aplt/ # Admin API routes├── api/store/ # Store API routes├── admin/routes/ # Admin UI pages (React)├── modules/ # Custom Medusa modules├── jobs/ # Scheduled jobs└── workflows/ # Medusa workflowsAdding a New API Route
Section titled “Adding a New API Route”Create a new route file:
src/api/admin/aplt/my-feature/route.tsimport type { MedusaRequest, MedusaResponse } from "@medusajs/framework"
export async function GET(req: MedusaRequest, res: MedusaResponse) { // Your logic here res.json({ data: "result" })}Adding an Admin UI Page
Section titled “Adding an Admin UI Page”Create a page component:
src/admin/routes/XX-my-feature/page.tsximport { defineRouteConfig } from "@medusajs/admin-sdk"
const MyFeaturePage = () => { return <div>My Feature</div>}
export const config = defineRouteConfig({ label: "My Feature",})
export default MyFeaturePageStorefront Development
Section titled “Storefront Development”File Locations
Section titled “File Locations”/mnt/data/magic_omniverse/magic_commerce/magic_development/storefront/src/├── app/[countryCode]/ # Next.js pages├── modules/ # Feature modules├── lib/data/ # Server data fetching├── lib/brands/ # Brand configuration└── themes/ # CSS themesDevelopment Server
Section titled “Development Server”cd /mnt/data/magic_omniverse/magic_commerce/magic_development/storefrontyarn dev # Starts on port 10010 with TurbopackRebuilding Containers
Section titled “Rebuilding Containers”# Backend onlycd /mnt/data/magic_omniverse/magic_commerce/magic_{tenant}docker compose build backenddocker compose up -d backend
# Storefront onlydocker compose build storefrontdocker compose up -d storefront
# Both (with no cache)docker compose build --no-cachedocker compose up -dChecking Logs
Section titled “Checking Logs”# Backend logsdocker logs magic_brinxx_backend_dev --tail=100 -f
# Storefront logsdocker logs magic_brinxx_storefront_dev --tail=100 -f
# All container statusdocker ps --format "table {{.Names}}\t{{.Status}}" | grep magic_