Contents
- Overview and package contents
- Quick installation by FTP
- Requirements and hosting
- Controls and how the game works
- Screens and controls explained
- Map of the files
- Customize your copy
- Languages, sound and accessibility
- Saved progress and privacy
- Optional development
- Updating the game
- Common problems
- Frequently asked questions
- Support and version history
- For AI assistants
1 Overview and package contents
Crossword-style word puzzle game with a crew of firefly friends: 15 worlds and 75 levels in English, Portuguese and Spanish, each language with its own words and clues. Numbered tiles share letters, and the golden column hides a secret word. Also included: daily level, word of the day, secret messages, the Lumário word collection with 6 mini-games, a wardrobe for the helpers, a star track, trophies and an album.
No native app project, accounts, cloud saves, ranking, ads or real-money purchases. Crystals are earned only by playing and are spent on helpers and wardrobe items.
This manual describes version 1.0.0. Open documentation/index.html by double-clicking it. This guide works without internet.
DOCUMENTATION.html
documentation/index.html
game/
source/
THIRD-PARTY-LICENSES/
2 Quick installation by FTP
Installing takes a few minutes. It needs no build step, terminal, database or PHP.
- Extract the purchased ZIP on your computer.
- Open the
game/folder. Keep its files and subfolders together. - Upload only the contents of
game/by FTP or your hosting file manager to an empty folder, such aspublic_html/my-game/. - Open
https://your-domain.example/my-game/in a modern browser.
index.html on your computer. The game must be opened through an HTTP(S) address.
3 Requirements and hosting
- A current version of Chrome, Edge, Firefox or Safari on a computer, tablet or phone.
- Any static hosting over HTTP or HTTPS. HTTPS is recommended.
- No npm, terminal, database, PHP, account or build step. The game loads everything from your folder.
The example above uses a subfolder. Keep all files together so the relative paths keep working.
To test before choosing a host, run any static web server on your computer or upload the game to a private test subfolder first.
4 Controls and how the game works
Read the clue and type the answer. Numbered tiles are shared between words, so every word you solve fills letters in other words. Solve every row to light the golden column and clear the level. A level cleared without helpers earns 3 stars.
Type with the on-screen keyboard or a physical keyboard: Enter or the arrows change the clue, Backspace erases and Esc pauses. Tap a helper to use it; each use costs crystals.
Each world has 5 levels and ends with a boss level. Six helpers join the crew as you progress: Luma reveals a letter you choose, Nuvi sprinkles 3 letters, Bru solves a word, Zuzu reveals first letters, Lumi lights the golden column and Brasa fills the most missing letter.
5 Screens and controls explained
The captures below are real game screens from version 1.0.0, in English. Numbered marks point to the controls, and the legend under each capture explains them.
Marks on the screenshot
- Game logo.
- Play or continue your saved campaign.
- Daily level, word of the day, secret message and shortcuts.
- Crystals earned by playing.
- Settings available
Marks on the screenshot
- Board: numbered tiles are shared; the golden column hides the secret word.
- Current clue; the arrows change it.
- Helpers and their crystal cost.
- Type with the on-screen keyboard or a physical keyboard: Enter or the arrows change the clue, Backspace erases and Esc pauses. Tap a helper to use it; each use costs crystals.
Marks on the screenshot
- Star track: free rewards for stars.
- World map: cleared levels, the next level and locked ones.
Marks on the screenshot
- Helper and item category.
- Dress the helpers with hats, glasses, scarves, colours and dances. Items cost crystals or are earned with achievements.
Marks on the screenshot
- The Lumário keeps every word you solve as a firefly. Fireflies grow brighter when you practise their words in the 6 mini-games.
Marks on the screenshot
- The game has 3 languages (English, Português, Español), each with its own puzzles; this guide has 14. Spoken words cover English and Portuguese, and Luma's tutorial voice covers all 3. Music and sound effects are generated live by the browser. Settings: music, sound effects, voices, vibration and high contrast.
- If there is no sound, tap the screen first, then check Music, Sound effects and Voices in Settings. Spoken words exist for English and Portuguese only.
6 Map of the files
| File or folder | What it is |
|---|---|
game/index.html
|
Entry page of the game. |
game/modules/
|
Built game code, styles, images and audio. |
game/assets/
|
Built game code, styles, images and audio. |
game/words/
|
If there is no sound, tap the screen first, then check Music, Sound effects and Voices in Settings. Spoken words exist for English and Portuguese only. |
source/
|
The playable game needs no build. source/ is the complete editable project (TypeScript and Vite). With Node.js 26.13.0 or newer run npm ci, npm test and npm run build; dist/ comes out identical to game/. npm run dev starts a local development server. |
source/src/content/
|
Interface texts are in source/src/i18n/ and the puzzles in source/src/content/. Edit them, run npm test and npm run build inside source/, then upload the contents of dist/. |
source/src/i18n/
|
Interface texts are in source/src/i18n/ and the puzzles in source/src/content/. Edit them, run npm test and npm run build inside source/, then upload the contents of dist/. |
source/src/game/economy.ts
|
There is no separate settings file: everything is in the editable source. Crystal rewards and prices: source/src/game/economy.ts. Worlds: source/src/content/worlds.ts. Wardrobe items: source/src/wardrobe/catalog.ts. Rebuild after editing. |
source/src/wardrobe/catalog.ts
|
Dress the helpers with hats, glasses, scarves, colours and dances. Items cost crystals or are earned with achievements. |
source/src/core/save.ts
|
Progress is saved in the browser's localStorage under lumora.template.save.v1 (set in source/src/core/save.ts): levels, crystals, wardrobe, Lumário and settings. No cloud or account. Copies in different subfolders of one domain share storage, so give each copy its own key. |
source/tests/rules.test.ts
|
The playable game needs no build. source/ is the complete editable project (TypeScript and Vite). With Node.js 26.13.0 or newer run npm ci, npm test and npm run build; dist/ comes out identical to game/. npm run dev starts a local development server. |
THIRD-PARTY-LICENSES/
|
The self-hosted Fredoka, Nunito and Lilita One fonts use the SIL Open Font License. Keep the notices in THIRD-PARTY-LICENSES with your product. No external font service is used. |
7 Customize your copy
There is no separate settings file: everything is in the editable source. Crystal rewards and prices: source/src/game/economy.ts. Worlds: source/src/content/worlds.ts. Wardrobe items: source/src/wardrobe/catalog.ts. Rebuild after editing.
// source/src/game/economy.ts
export const START_CRYSTALS = 25;
export const LEVEL_REWARD = { clear: [10, 3], noHelp: [5, 2], perfect: [5, 2], challenge: 8 };
export const CALENDAR = [5, 5, 10, 10, 15, 20, 30];
export const HELPER_COST = { pipo: 1, nuvi: 3, bru: 6, zuzu: 5, lumi: 4, brasa: 6 };
To change the illustrated title, icons, artwork, rules or text, edit the optional source edition and rebuild. Keep the existing proportions when replacing visuals. Do not edit hashed build file names without updating their references.
8 Languages, sound and accessibility
The game has 3 languages (English, Português, Español), each with its own puzzles; this guide has 14. Spoken words cover English and Portuguese, and Luma's tutorial voice covers all 3. Music and sound effects are generated live by the browser. Settings: music, sound effects, voices, vibration and high contrast.
Interface texts are in source/src/i18n/ and the puzzles in source/src/content/. Edit them, run npm test and npm run build inside source/, then upload the contents of dist/.
9 Saved progress and privacy
Progress is saved in the browser's localStorage under lumora.template.save.v1 (set in source/src/core/save.ts): levels, crystals, wardrobe, Lumário and settings. No cloud or account. Copies in different subfolders of one domain share storage, so give each copy its own key.
- There is no account and no cloud sync. Records stay on this device.
- Private mode, storage restrictions, clearing site data or changing the address can remove access to saved progress. The game keeps running without saving.
Keep the save key unchanged to preserve players' progress. Upload all files of the new build together, keeping their names and folders, then clear the cache as described below.
10 Optional development
This section is only for changing the source. The game/ folder already contains the playable build, so hosting needs no Node.js.
The playable game needs no build. source/ is the complete editable project (TypeScript and Vite). With Node.js 26.13.0 or newer run npm ci, npm test and npm run build; dist/ comes out identical to game/. npm run dev starts a local development server.
Internal names: a few code names come from the original Portuguese project. pipo is Luma, turma is the Crew Crossword, lumario is the Lumário and word5 is the word of the day. Renaming them is not needed to change the theme.
cd source
npm ci
npm test
npm run build
npm run dev
11 Updating the game
Keep the save key unchanged to preserve players' progress. Upload all files of the new build together, keeping their names and folders, then clear the cache as described below.
Upload the new contents of game/ over the old files, keeping the names and folders.
Reload the game. If the old version still appears, clear the cache as described below.
Clearing the cache without losing progress
Progress is stored in this browser, not on the server. Clearing cached images and files, or doing a hard reload, keeps your progress.
Computer: press Ctrl+F5 on Windows and Linux, or Cmd+Shift+R on macOS. Phone: in the browser settings, choose the option to clear cached images and files.
Do not choose cookies and site data, or clear site data, for the game's address. That deletes the local save.
12 Common problems
-
Blank page: make sure you uploaded the contents of
game/, opened the HTTP(S) address and checked the browser console for scripts that failed to load. Thesource/folder is not the playable website. -
Works on the computer but not on the server: the game does not run from a file on your computer (
file://). Use a static web host or any static local server. -
Missing textures or sound: confirm the complete upload and the file name case, and that
.mp3,.js,.cssand font files are served with correct types.
If there is no sound, tap the screen first, then check Music, Sound effects and Voices in Settings. Spoken words exist for English and Portuguese only.
13 Frequently asked questions
Does it need PHP or a database?
Does it work offline?
Does it work on phones?
14 Support and version history
The self-hosted Fredoka, Nunito and Lilita One fonts use the SIL Open Font License. Keep the notices in THIRD-PARTY-LICENSES with your product. No external font service is used.
Support and customization: willian@polargames.com.br. Include your purchase or licence reference. This guide does not promise response times or a schedule of future updates.
Support request
When you write to support, include the browser and device, the game version, the page address, the steps that caused the problem, a screenshot and the first error shown in the browser console. Never send passwords, payment details or secret keys.
For AI assistants
There is no separate settings file: everything is in the editable source. Crystal rewards and prices: source/src/game/economy.ts. Worlds: source/src/content/worlds.ts. Wardrobe items: source/src/wardrobe/catalog.ts. Rebuild after editing.
Progress is saved in the browser's localStorage under lumora.template.save.v1 (set in source/src/core/save.ts): levels, crystals, wardrobe, Lumário and settings. No cloud or account. Copies in different subfolders of one domain share storage, so give each copy its own key.
The playable game needs no build. source/ is the complete editable project (TypeScript and Vite). With Node.js 26.13.0 or newer run npm ci, npm test and npm run build; dist/ comes out identical to game/. npm run dev starts a local development server.
Internal names: a few code names come from the original Portuguese project. pipo is Luma, turma is the Crew Crossword, lumario is the Lumário and word5 is the word of the day. Renaming them is not needed to change the theme.
cd source
npm ci
npm test
npm run build