Dance Registration

For stakeholders

Demo hosting & full production path

This page explains how the system runs today for demos, and what a real live competition setup needs.

Current status: demo only

Right now the website is running on the developer’s personal PC and shared through a temporary internet link (ngrok). It is ideal for walkthroughs and feedback — not for permanent public registration or long-term storage.

1. How the demo works today

Temporary public access while the PC is online and the demo launcher is running.

1

Start demo

Developer runs start_online.bat on their PC.

2

App on PC

Flask web app + Excel data file stay on the local machine.

3

Temporary URL

ngrok creates a short-lived HTTPS link (changes each session).

4

Client / tester

Anyone with the link can open public registration and admin.

Good for

  • Feature walkthrough with stakeholders
  • Trying registration & payment-slip flow
  • Admin review (approve, adjust totals)
  • Fast feedback before investing in hosting

Not suitable for

  • Real open registration over many days
  • Guaranteed uptime (PC sleep / offline = site down)
  • Stable URL for posters / social media
  • Multi-user production reliability (Excel file store)

2. Participant process (same in demo & production)

Business flow does not change — only where the system is hosted.

A

Open event

Choose an open competition project.

B

Enter details

Contestant & contact info.

C

Pick slots

Select categories / songs / ages.

D

Serial + total

Get reference number and fee total.

E

Bank-in slip

Upload proof of payment (now or later).

F

Admin check

Organizer reviews payment & list.

3. Full live setup (recommended for real events)

Always-on server, fixed website address, proper database file on the server.

1

VPS / cloud server

Small always-on Linux host runs the web app 24/7.

2

Domain URL

e.g. register.yourstudio.com — stable for sharing.

3

HTTPS (SSL)

Free certificate (Let’s Encrypt) — secure browser lock icon.

4

SQLite (or Postgres)

Replace Excel with a real database for safer multi-user use.

5

Backups + go-live

Automated backups, open registration to the public.

4. What you need for full setup

Item Why Rough cost (MYR / USD guide)
VPS (small cloud server) Hosts the website 24/7; not tied to one PC ~RM 20–50 / mo (~USD 5–12)
Domain name Stable public URL for marketing & WhatsApp ~RM 40–70 / year (~USD 10–15)
SSL certificate HTTPS security Free (Let’s Encrypt)
SQLite (default production DB) Reliable storage on the server; simple backups Free (included on VPS)
Server backups / snapshots Recover if data or host fails ~RM 0–20 / mo (often included or cheap add-on)
Email sending (optional but useful) Serial number / payment confirmation emails Free tier often enough; paid ~USD 0–20 / mo if volume grows
One-time setup / migration Deploy app, domain DNS, SQLite migration, smoke test Project fee / hours (agreed separately)
Ongoing maintenance (optional retainer) Updates, bugfixes, new season setup help As agreed (or ad-hoc hours)

Typical ongoing cash cost for a small event site: about RM 25–70 / month (VPS + buffer) plus domain once a year. Email and advanced monitoring are optional extras. Estimates vary by provider and country; confirm current prices at go-live time.

5. Demo vs full setup (side by side)

Demo (now) Full setup
Where it runs Developer’s PC VPS / cloud server
Public address Temporary ngrok URL Your own domain
Data storage Excel workbook on PC SQLite (or PostgreSQL later)
Uptime Only while demo is started 24/7 (server stays on)
Who can register People with the shared link Anyone with the public domain
Monthly cost ≈ RM 0 (uses existing PC + free ngrok) VPS + optional services (see table above)

6. Suggested path from demo → live

  1. Finish demo feedback — confirm registration fields, pricing rules, admin reports.
  2. Agree hosting & domain — pick VPS size, buy/point domain name.
  3. Migrate storage — Excel → SQLite; keep the same screens and flows.
  4. Deploy + HTTPS — app live on the domain with SSL.
  5. Backups & admin training — snapshot schedule; organizer walkthrough.
  6. Soft open then open registration — small test group, then public.

7. Other things to decide later (optional)

8. Environments (100 / 200 / 300)

The app already separates data like SAP “clients”. Paths stay the same when you move to a real domain.

Client Name URL path Use for
100 Sandbox /100/ Demos & experiments (sample data lives here)
200 Test /200/ UAT before go-live
300 Live /300/ Real registration (default for production)

Start at the environment landing page. Data, serial numbers, and payment slips never mix across clients.

Bottom line for stakeholders

You are viewing a working product demo hosted temporarily on a PC. Moving to a real competition means a small always-on server, a proper URL, SQLite (or better) storage, backups, and light monthly hosting cost — not rebuilding the registration process from scratch. Use client 300 (Live) on that server for real events; keep 100 for demos.