Skip to content

tmsteph/3dvr-web

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

500 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

3dvr-web

html re-write

Welcome to 3dvr.tech

This is the Code Repository for our main 3dvr.tech website known as our home-page.

If you want to view or edit the code for the 3dvr.tech website, you are in the right place.

We recently re-designed to pure html, css, and java-scritpt. We were using React but found it a bit too complex and fragile for our needs.

Check it out for yourself at https://3dvr.tech

Deployment Topology

Keep 3dvr-web and 3dvr-portal on the same branch matrix so subscription links and billing routes stay consistent.

Branch Web domain Portal domain Billing mode
main https://3dvr.tech https://portal.3dvr.tech Live Stripe
staging https://staging.3dvr.tech https://portal-staging.3dvr.tech Live Stripe behind Vercel auth
feature/* Vercel preview URL Vercel preview URL Stripe test mode
  • Use PR previews for test-mode signup, checkout, and plan-switch QA.
  • Use staging to verify real existing subscribers before merging to production.
  • Do not treat a Stripe test preview as evidence about live subscribers. Test mode cannot see live customers.
  • After each new staging deploy, run npm run vercel:alias-staging from 3dvr-portal so https://staging.3dvr.tech and https://portal-staging.3dvr.tech stay attached to the current staging previews.
  • A healthy protected staging domain returns 401 from Vercel auth. 404 DEPLOYMENT_NOT_FOUND means the staging alias is broken.

Portal Billing Link Rules

subscribe/portal-links.js decides where billing links should go. The resolution order is:

  1. ?portalOrigin=https://...
  2. data-portal-origin on <html> or meta[name="3dvr:portal-origin"]
  3. Known host pairings in subscribe/portal-links.js for staging domains and preview-to-preview mappings
  4. Production fallback: https://portal.3dvr.tech

Operational rules:

  • main web pages should point to https://portal.3dvr.tech.
  • staging web pages should point to https://portal-staging.3dvr.tech.
  • feature/* previews should point to the matching portal preview, either through portalOrigin or the preview host map.
  • Never let preview billing links fall back to production when the target plan or billing route only exists in preview.
  • If Stripe is in test mode, make sure the paired portal preview also uses Stripe test price ids instead of live price_... values.

Browser Testing

  • npm run test:e2e runs Playwright in Debian proot so browser automation stays out of native Termux.
  • npm run playwright:install installs the Firefox browser used by the current Playwright setup inside Debian.
  • The current Playwright coverage checks the full-screen 3dvr-world/ route on desktop and mobile viewports.
  • Playwright covers browser behavior only. Real WebXR or headset validation still needs an actual VR-capable browser or headset session.

About

html re-write

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors