This is a simple static site for AuraSync, matching the dark neon style of the extension.
The site includes:
- index.html – Landing page with hero, features and calls to action.
- pricing.html – Pricing cards and placeholder for a Stripe Pricing Table. Edit
config.jswith your Stripe publishable key and Pricing Table ID to embed your table. - success.html – After checkout, this page reads a
session_idquery parameter, calls your backend exchange endpoint, and displays the one‑time activation code for your extension. It also offers a copy button. - faq.html – Answers to common questions.
- support.html – Contact information and instructions for restoring Premium.
- 404.html – Basic not found page.
- config.js – Central place to set your backend base URL, checkout exchange path, Stripe keys and support email.
- styles.css – Dark theme with neon gradients, matching your extension UI.
- logo/ – Contains your logo and banner images.
-
Edit
config.jsFill in your backend URL, exchange path, Stripe publishable key, Stripe Pricing Table ID and support email.- To enable the Manage Billing button on
pricing.html, either setPORTAL_URLto your Stripe Customer Portal shareable link, or provideBACKEND_BASEandPORTAL_SESSION_PATHfor a server endpoint that creates a portal session and returns{ url }.
- To enable the Manage Billing button on
-
Deploy to GitHub Pages
- Create a new repository and upload these files.
- In GitHub settings → Pages, select the
mainbranch and/folder as the source. - Optionally add a custom domain and create a CNAME record with your DNS provider.
-
Configure Stripe Checkout
- In Stripe, create a Pricing Table and copy its ID and your publishable key into
config.js. - Set your checkout success URL to
https://YOUR-DOMAIN/success.html?session_id={{CHECKOUT_SESSION_ID}}.
- In Stripe, create a Pricing Table and copy its ID and your publishable key into
-
Activate Premium
- After checkout, the user will land on
success.html, copy the activation code, open the AuraChat extension, and paste the code.
- After checkout, the user will land on
Enjoy!
There is an optional Node/Express backend in backend/ that handles code issuance and Stripe webhooks.
Endpoints:
- POST /create-checkout-session
- POST /activate
- POST /redeem
- GET /status
- POST /lost-code
- GET /debug/stripe
- POST /stripe/webhook (signature-verified, idempotent)
- GET /healthz (ok/version/uptime/now)
- POST /billing-portal (Stripe customer portal)
In production, required envs are enforced: STRIPE_SECRET_KEY and STRIPE_WEBHOOK_SECRET.
To run the local admin UI on Windows without a console window:
- Double-click
run-admin-py.bat. - It launches a small Python GUI (
run-admin.pyw) that starts the backend, waits for health, and opens the Admin page with the admin secret prefilled.
Requirements:
- Python 3.x installed and available on PATH (it will try
pythonw.exe, thenpython.exe, thenpy.exe). - Node.js and npm installed (the first run will install backend dependencies automatically).
If you want a simple double‑click tool to issue a usable license code for a customer email, use:
generate-license.bat→ launches a small Python GUI (generate-license.pyw).
Steps:
- Make sure you know the Admin Secret. If you run locally, set
ADMIN_SECRETin a.envfile next to this README (or enter it in the GUI). - Double‑click
generate-license.bat. - In the GUI, set:
- API Base URL: defaults to production
https://api.aurasync.info. Switch tohttp://127.0.0.1:3000only if you’re running locally. - Admin Secret: paste your admin secret.
- Customer Email: the user’s email.
- Plan: leave as
premiumunless you use custom plans.
- API Base URL: defaults to production
- Click “Generate Code”. The code will be shown and copied to your clipboard. The backend also emails the code to the customer if email send is configured.
Tip: To run locally, first change API Base to your localhost URL, then click “Start Local Server”. It installs dependencies and launches the backend, then the health check will pass.
Static files robots.txt and sitemap.xml are included at the web root.