👋 Set up your arcade
Your database is empty, so the site is showing the built-in starter version. Install it into the database so you can manage everything from here: 12 games, all website texts, and a welcome update.
🛟 Safety: backups and uptime
Checking…
🔐 Admin sessions end after 12 hours without use. An email goes to your contact address every time someone signs in here. Keep this page's address private and bookmark it.
data. 2. Rename arcade.sqlite to arcade-old.sqlite (keep it until you're sure). Delete arcade.sqlite-wal and arcade.sqlite-shm if you see them. 3. Upload your backup file and rename it to arcade.sqlite. 4. Open the site: everything is back as it was on the backup date.The backup holds accounts, topics, settings, analytics and payments. Pictures you uploaded are in
data/img: copy that folder too (cPanel → Compress → Download) once a month. · Keyword: "ok":true · check every 5 minutes. 4. Add your email (and the phone app). You'll get a message if the site or its database stops answering.🎁 New games are ready
Quick actions
How your data is kept safe
Everything here edits content only: games, game files, updates and website settings. Your users' accounts, favourites and what they've read live separately, and this panel can only read them. Every game upload keeps the previous version, so you can roll back in one click.
Order on the website
Pick a game on the left, or press “+ New game”.
Send an update
Shows in the 🔔 bell for all users. “Pin” also puts it in the bar at the top of the site. “Pop-up” shows it big in the middle of the screen: great for promotions.
All updates
Members
Notifications
Sections
Colours
📖 Teacher guide
⭐ Premium
🏦 Bank transfer (VietQR)
Fill these and the Premium box shows your bank details and a VietQR code teachers scan with any banking app. Each teacher gets a personal QR code with the amount and a unique note (like MCG7K2P9Q). Connect SePay (Affiliates & Premium page) and Premium switches on by itself about a minute after they pay. When the money arrives, go to Affiliates & Premium → Record a payment.
💳 Pricing page
Prices are set in Affiliates & Premium → Plans (VND and USD).
🎁 Free account box (home page)
🧑🏫 About the founder (home page)
💬 What teachers say (home page)
Only real quotes, with the teacher's permission to show their words, name and photo.
Analytics
Categories (comma separated)
Grades (comma separated)
Preview of your draft. Users see nothing until you press Publish.
Loading…
SEO health
Fix the red items to rank higher on Google.
Your website
Other pages on Google
Leave empty to use the automatic text.
Very short topics look "thin" to Google and can pull the whole site down. They still work for teachers.
Google result preview
Facebook / Zalo share preview
Get on Google and Bing (one time, 10 minutes)
Recommendations to rank well
Tools
1. Add your site in Google Search Console and paste the code above. 2. Submit your sitemap. 3. Check speed and rich results. Every game has its own page (/game/…) with a tutorial, so Google can rank each one.
Game pages
| Game | Description | Tutorial | Custom SEO |
|---|
What teachers search on your site
Loading…
Keyword ideas for the ESL niche
🏦 Automatic VietQR payments (SePay)
- Bank details: Website page → Bank transfer (VietQR): choose your bank, account number and holder name, then Save.
- SePay account: sign up free at my.sepay.vn and connect the same bank account (Ngân hàng → Kết nối tài khoản).
- Webhook: in SePay open Tích hợp WebHooks → Thêm webhooks:
Event: Có tiền vào (money in) · URL:
Authentication: API Key → make up a long key (or press ), paste it in SePay and below. Content type: application/json. Skip the "only if payment code" option. - Save the same key here:
- Test: sign in on the site with a test account, open Premium, choose 1 month and pay with your phone. This list shows the payment within a minute.
Orders
| Date | Teacher | Plan | Amount | Note | Status |
|---|
Money received (from SePay)
| Date | Amount | Bank note | Result |
|---|
"unmatched" = money arrived without a valid note (MCG…). Find the teacher and press Record a payment below.
💳 Card payments (Stripe)
Plans teachers can buy
Prices are charged in the plan's currency. Keep it the same as your invite program currency so commissions add up. VND has no decimals; USD uses cents (e.g. 4.99).
💰 Record a payment
Card payments are recorded automatically. When a teacher pays you another way (bank transfer, MoMo…), record it here. They get Premium, and whoever invited them gets their reward automatically.
⭐ Give or remove Premium
⚙️ Invite program rules
Payout requests
Top affiliates
| Teacher | Reward | Visits | Joined | Active | Paid | Earned |
|---|
Premium members
| Teacher | Premium until |
|---|
Payments
| Date | Teacher | Amount | Via | Invited by | Note |
|---|
How topics work
Topics are word lists (word, clue, example sentence) that teachers play in the topic games: Last One Standing, Sweaty Buttons, Word Race, Word Fish and Word Hunt. Every public topic gets its own page at /topic/… and goes into the sitemap, so each one is a new way for Google to find you. Approve the good ones, hide spam.
📥 Add many topics at once
Paste your topics below, or open a .txt, .csv or .json file. Each topic starts with a line beginning with #: # Title | Subject | Ages | Type. Under it, one row per line: word | clue | example sentence | picture link (only the first part is needed). Ages can be grade numbers (3,4 or 6-9) or Pre-K, Primary, Secondary, High school, Adults. Subject is one of the topic categories, e.g. Maths, Science, Geography, Animals. Type is words, questions, sentences or quiz (quiz rows: question | right answer | wrong / wrong / wrong). Leave an empty line between topics.
| Topic | Words | By | Status | Plays | Updated |
|---|
✨ AI topics (Google Gemini)
Teachers press ✨ Make it with AI in "Make a topic", type what they need (any subject, any age) and get a ready topic with pictures. Your key stays on the server; teachers never see it.
How to get a free Gemini key (2 minutes)
- Open aistudio.google.com/apikey and sign in with a Google account.
- Press Create API key and copy it (it starts with
AIza). - Paste it below and press Save. Free use has daily limits from Google; for a busy site, turn on billing in Google AI Studio (a topic costs a tiny fraction of a cent).
0 = Premium only
📧 Password-reset emails
When a teacher presses Forgot password?, the site emails them a link to choose a new password. Many hostings (Namecheap too) block or spam-folder emails sent the simple way, so it's best to send through a real mailbox (SMTP).
How to set this up on Namecheap (5 minutes)
- cPanel → Email Accounts → Create a mailbox, e.g.
no-reply@myclass.gameswith a strong password. - Next to it press Connect Devices. Copy the Outgoing Server (e.g.
mail.myclass.gamesorserver123.web-hosting.com) and the SMTP Port (465). - Fill in the boxes below: server, port 465, security SSL, username = the full email, password = the mailbox password, "From" = the same email.
- Press Save, then Send test email to your own address.
| When | To | Result |
|---|
Email not arriving for a teacher? Go to 👥 Users and press 🔑 next to their name to get a reset link you can send them on Zalo or Messenger.
🖼 Picture & GIF search (for teachers' topics)
Teachers click 🖼 on any word to search pictures, like Baamboozle. It works for free with Openverse and Wikimedia Commons (no key needed). For more and better cartoons, add a free Pixabay key. For real animated GIFs, add a free GIPHY key.
Pixabay: sign up → open pixabay.com/api/docs → your key is shown in the "Parameters" box. GIPHY: developers.giphy.com → Create an App → API → copy the key.
What teachers send with the 💬 Feedback and 💡 Suggest buttons (on the website and in every game).
Users manage their own accounts. 🔑 makes a password-reset link you can send a teacher who can't get the email. 🗑 deletes an account (for test or spam accounts); you must type the email to confirm.
| Name | School | Joined | Last seen | ❤️ | Premium |
|---|