- pass NEXT_PUBLIC_CARPLACE_URL into the production Docker build
- run the production deploy script after building the image
- support raw or base64 production env secrets during deploy
- copy the production env file into the remote build context
- include homepage in production deploy, pull, and health checks
- use a stable Traefik Compose project name
- reuse an existing Traefik container instead of starting a duplicate proxy
- update Traefik router rules to use HeaderRegexp with traefik:latest
Replace the legacy /explore marketplace route with /storefront across the
storefront app and production routing.
- move the marketplace index page to the storefront root route
- move company and vehicle detail pages from /explore/* to /* internally
- update marketplace links, renter dashboard links, saved company links, and
header navigation to target /storefront
- remove remaining explore route references and wording from storefront code
- configure production Traefik to route /storefront and strip the prefix before
forwarding to the storefront service
- set the storefront production asset prefix to /storefront so Next chunks load
from /storefront/_next instead of the shared root /_next path
- redirect locale entry paths such as /storefront/fr back to /storefront while
persisting the selected language cookie
- update middleware tests for the locale redirect and adjusted redirect mock
Verification:
- npm run test --workspace @rentaldrivego/storefront
- npm run build --workspace @rentaldrivego/storefront
Normalize dashboard API base URLs so bare API origins still call /api/v1 endpoints. Reuse the shared dashboard API base on email verification.
Update production storefront URL examples to use the root domain and route footer, policy, and workspace storefront paths through Traefik.
- Add typescript.ignoreBuildErrors to public-site next.config.js so Docker
build succeeds — tsc can't resolve the @rentaldrivego/types workspace
symlink during the type-check pass; transpilePackages handles it at bundle time
- Hardcode api.rentaldrivego.ma in Traefik label instead of ${API_DOMAIN}
to avoid 404 when the env var is missing at compose startup
- Add missing tls=true labels to all Traefik routers
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>