FireStudio LogoFireStudio
ProductsAuroraMC

Deployment

Build and deploy your AuroraMC store to production.

Deployment

AuroraMC compiles to a fully static website — plain HTML, CSS, and JavaScript files. No server-side runtime is required. You can host it on any platform that serves static files.

Building for Production

Run the build command from the project root:

npm run build

This generates a dist/ folder with your optimized production files. You can preview the build locally before deploying:

npm run preview

Deploying to Vercel

Vercel is the easiest option with automatic deployments from Git.

  1. Push your project to a GitHub, GitLab, or Bitbucket repository
  2. Go to vercel.com/new and import your repository
  3. Vercel will auto-detect the Vite framework. Verify the settings:
    • Build Command: npm run build
    • Output Directory: dist
  4. Add your environment variable:
    • Name: VITE_TEBEX_PUBLIC_TOKEN
    • Value: Your Tebex public token
  5. Click Deploy

Every push to your main branch will trigger an automatic rebuild and deploy.

[!IMPORTANT] Environment variables prefixed with VITE_ are embedded into the build at compile time. You must add them in Vercel's dashboard before deploying, not after.

Deploying to Netlify

Netlify works similarly to Vercel.

  1. Push your project to a Git repository
  2. Go to app.netlify.com and click New site from Git
  3. Connect your repository and configure:
    • Build Command: npm run build
    • Publish Directory: dist
  4. Go to Site Configuration → Environment Variables and add VITE_TEBEX_PUBLIC_TOKEN
  5. Trigger a new deploy

SPA Redirect Rule

Since AuroraMC uses client-side routing, you need to add a redirect rule so that direct URL visits (like /terms or /success) don't return 404 errors.

Create a public/_redirects file:

public/_redirects
/*    /index.html   200

This tells Netlify to serve index.html for all routes, letting React Router handle the navigation.

Deploying to Cloudflare Pages

  1. Go to dash.cloudflare.comWorkers & PagesCreate applicationPages
  2. Connect your Git repository
  3. Configure:
    • Build Command: npm run build
    • Build Output Directory: dist
  4. Add VITE_TEBEX_PUBLIC_TOKEN as an environment variable
  5. Deploy

Cloudflare Pages automatically handles SPA routing, so no extra redirect configuration is needed.

Deploying to Traditional Web Hosting

If you use shared hosting (cPanel, Plesk) or a plain web server (Apache, Nginx):

  1. Run npm run build locally
  2. Upload the contents of the dist/ folder to your web root (usually public_html/)
  3. Configure your web server to serve index.html for all routes

Apache (.htaccess)

Create a .htaccess file in your web root:

.htaccess
RewriteEngine On
RewriteBase /
RewriteRule ^index\.html$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.html [L]

Nginx

Add this to your server block:

nginx.conf
location / {
    try_files $uri $uri/ /index.html;
}

Deploying to GitHub Pages

  1. Install the GitHub Pages deploy package:
npm install -D gh-pages
  1. Add a deploy script to package.json:
package.json
"scripts": {
    "deploy": "gh-pages -d dist"
}
  1. If your repository name is not username.github.io, set the base path in vite.config.ts:
vite.config.ts
export default defineConfig({
    base: '/your-repo-name/',
    // ...
});
  1. Build and deploy:
npm run build
npm run deploy

[!WARNING] GitHub Pages does not natively support SPA routing. Direct links to routes like /terms will return 404. To work around this, you can add a public/404.html file that redirects to index.html, or use a hash-based router instead.

Environment Variables Checklist

Before deploying, make sure your environment is configured:

VariableRequiredWhere to Set
VITE_TEBEX_PUBLIC_TOKENYes.env locally, hosting dashboard for production

Since AuroraMC is a static site, environment variables are baked into the JavaScript bundle at build time. There is no runtime .env file — the values are read during npm run build and embedded into the output.

If you change your Tebex token, you must rebuild and redeploy.

On this page