Polar Games

Fox Club Solitaire · 1.0.0

Fox Club Solitaire · Buyer Guide

Install the ready-to-play game by uploading its files. This guide covers installation, controls, screens, configuration, languages, saves and optional development.

Version 1.0.0 Edition CodeCanyon buyer edition

This guide works without internet. Images, styles and scripts are already inside this file.

Contents
  1. Overview and package contents
  2. Quick installation by FTP
  3. Requirements and subfolder hosting
  4. Controls and how the game works
  5. Screens and controls explained
  6. Map of the files
  7. Settings available
  8. Customizing texts, images and content
  9. Languages and audio
  10. Saves and taking care of progress
  11. Optional development
  12. Updating the game
  13. Dependencies and licenses
  14. Common problems
  15. Frequently asked questions
  16. Support and version history
  17. For AI assistants

1 Overview and package contents

Fox Club Solitaire. This edition includes quick games with Draw 1 or Draw 3, a 12-deal campaign in 3 chapters, a daily challenge chosen from 120 validated deals, hints, undo, automatic finish and a narrated guided tutorial. Players collect 12 stickers, 6 card backs and 3 table environments. The interface is available in 14 languages.

This edition has no ads, no accounts, no payments and no online ranking. Records are kept on the device that plays.

Item Location in the ZIP
Ready-to-play game (upload its contents) game/
Buyer guide (this manual, 14 languages) documentation/index.html
Shortcut to the guide at the root DOCUMENTATION.html
Optional source code (developers only) source/
License notices game/licenses/, THIRD-PARTY-LICENSES/

This manual describes version 1.0.0. Open documentation/index.html by double-clicking it. This guide works without internet and without a server.

2 Quick installation by FTP

Installing takes a few minutes if you have FTP access or a file manager in your hosting panel.

  1. Extract fox-club-solitaire-1.0.0.zip on your computer.
  2. Connect to your hosting by FTP or its file manager, and open the folder where the game should live, for example public_html/games/fox-club/.
  3. Upload only the contents of the game/ folder, so that index.html sits directly inside the target folder.
  4. Keep assets/, lib/, modules/, licenses/ and boba.config.js beside index.html. Keep names and letter case exactly as extracted.
  5. Open https://your-domain.example/games/fox-club/ in a modern browser.
public_html/games/fox-club/
  index.html
  boba.config.js
  modules/
  lib/
  assets/
  licenses/
Warning Do not upload the source/ folder, the documentation/ folder or the ZIP itself. Players need no Node.js, PHP, database or account.

3 Requirements and subfolder 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 for audio and browser features.
  • Any subfolder of any domain. The game uses relative paths, so the same files work wherever you upload them.
  • Nothing else on the server: no database, PHP or Node.js service is needed to play.

The game must be opened through a web address. Opening its index.html directly from your computer (file://) is not supported. This guide is the exception: it opens by double-clicking, with no internet connection.

Tip 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

Fox Club Solitaire. This edition includes quick games with Draw 1 or Draw 3, a 12-deal campaign in 3 chapters, a daily challenge chosen from 120 validated deals, hints, undo, automatic finish and a narrated guided tutorial. Players collect 12 stickers, 6 card backs and 3 table environments. The interface is available in 14 languages.

  • Move every card to the four foundations, one per suit, from ace to king.
  • In the columns, build down alternating red and black. You can move a face-up card or a valid sequence starting from it.
  • Empty columns only accept a king or a sequence starting with a king.
  • Tap the stock to draw. In draw three, only the top waste card can be played.
  • When the stock runs out, tap it again to turn the waste back over, in the same order. Unlimited passes.
  • You can also bring the top card of a foundation back down to a column.
  • Tap a card and then a destination, or drag. On a computer, double-click to send a card to its foundation.

Shortcuts: H hint · Z or Ctrl+Z undo · Space draw · Esc menu

Twelve deals with proven solutions, across three environments. Each first win earns a sticker.

Every day, a deal with a proven solution, picked from a bank of validated games.

5 Screens and controls explained

Home
Home

Marks on the screenshot

  1. Play
  2. Campaign
  3. Settings
Fox Club Solitaire
Fox Club Solitaire

Marks on the screenshot

  1. Foundation
  2. Stock
  3. Column
  4. Undo
  5. Hint
Settings
Settings

Marks on the screenshot

  1. Sound
  2. Game
  3. Display
  4. Music

6 Map of the files

game/                    ready-to-host files (upload its contents)
game/boba.config.js      title, save key, initial language
game/lib/                Phaser and included libraries
source/src/              editable TypeScript, art, audio, translations
source/public/           boba.config.js and license notices
source/tests/            automated tests
source/scripts/          deal bank generator and validator
documentation/index.html
THIRD-PARTY-LICENSES/

7 Settings available

Open the gear icon on the home screen. Settings are saved on this device.

  • Language
  • Music
  • Effects
  • Ambience
  • Narration
  • Animation speed
  • Reduced motion
  • Table layout
  • Large indices
  • Quick tap (moves when there is a single destination)
Warning Erase stickers, statistics and the saved game? This cannot be undone.

8 Customizing texts, images and content

Most settings are in boba.config.js, next to index.html. Open it with any text editor, change a value, save it, upload the file and reload the game. No build is needed.

window.BOBA_CONFIG = {
  title: 'Boba Club Solitaire',
  saveKey: 'fox-club-solitaire',
  defaultLanguage: '',
};

The configuration changes the browser title, the save key and the initial language. An empty language follows the browser. Changing rules, artwork, texts or the deal bank requires editing the source and rebuilding.

Warning Keep saveKey unchanged on a live site. A different key makes the game ignore existing progress and start a new save.

9 Languages and audio

The game interface is available in 14 languages: English, Português (Brasil), Español, Français, Deutsch, Italiano, Nederlands, Polski, Türkçe, Русский, Bahasa Indonesia, 日本語, 한국어 and 简体中文. The game follows the browser language when it can. Players can choose another language in Settings.

The guided tutorial is narrated in English, Português (Brasil) and Español, with 16 recorded lines each. Players using any other language hear the English narration while the speech bubbles show their own language. Narration can be turned off in Settings.

Note The interface language and the voice language are separate facts: 14 interface languages do not mean 14 voices.

Browsers allow sound only after a first tap or click. If sound stops when you switch apps, return to the game and tap once more. Sound and music can be turned off in Settings.

10 Saves and taking care of progress

Progress, the game in progress, stickers, statistics and settings are stored in this browser (IndexedDB, or localStorage when IndexedDB is unavailable), under the save key in boba.config.js (default fox-club-solitaire).

  • Saves belong to one browser on one device. They do not synchronise between devices or browsers.
  • Private browsing or blocked storage may prevent saving. The game keeps running for the current session.
  • Clearing site data for the game's address deletes the save. Clearing cached images and files does not (see Updating and clearing the cache).
  • Delete progress in Settings removes everything on this device. The game has no cloud backup.

11 Optional development

This section is only for changing the code. The game/ folder already contains the built game, so installing it needs no Node.js.

Optional development uses Node.js 26.13.0+ (tested with 26.13.0). Run npm ci, npm test and npm run build:buyer inside source/. The build writes dist-buyer/. The 158 automated tests cover rules, the solver, the validated deal bank, hints, the tutorial, saving and translations. npm run generate:bank rebuilds the deal bank with the solver and can take several minutes.

1. Install Node.js. Open https://nodejs.org/en/download and choose the latest Node.js 26 LTS installer for your system (minimum 26.13.0). npm is included. Internet is needed to download tools and dependencies, not to run a Node.js server for this game.

Windows: run the .msi installer, keep npm and Add to PATH enabled, finish installation and reopen Command Prompt. macOS: run the official .pkg installer and reopen Terminal. Linux: follow the official download page instructions for your distribution, including npm. No global Vite installation is needed.

https://nodejs.org/en/download

2. Verify installation. Run the commands below separately. Both must print version numbers; Node.js must be 26.13.0 or newer. If a command is not found, reopen the terminal and check the installation/PATH. (Node.js 26.x: >=26.13.0 <27.)

node --version
npm --version

3. Extract the complete buyer ZIP first. Open its source folder, where package.json and package-lock.json are located. Windows: type cmd in that folder's File Explorer address bar. macOS/Linux: open Terminal and use cd with the actual folder path in quotes. Do not run commands inside the ZIP or game folder.

4. Install dependencies. Run npm ci inside source/ and wait for successful completion. It downloads the exact locked packages to node_modules, including Phaser, TypeScript and Vite. Keep package-lock.json. Do not use --omit=dev: the build needs development dependencies. Never upload node_modules.

npm ci

5. Check the source. Run npm test; the supplied version has 158 tests. Then run npm run typecheck. Stop and resolve errors before building. These commands do not publish anything.

npm test
npm run typecheck

6. Build the game. Run npm run build:buyer and wait for successful completion. It checks TypeScript and runs Vite. The output is source/dist-buyer/, containing index.html, boba.config.js, modules/, lib/, assets/ and licenses/. Open boba.config.js there to confirm your settings.

npm run build:buyer
# Output: source/dist-buyer/

7. Preview locally. From source/, run the command below and open the exact localhost address printed by Vite. Test a level, settings and sound after a click. Stop the server with Ctrl+C. This preview server is only for development; do not expose it as production hosting.

npx --no-install vite preview --config vite.buyer.config.ts --host 127.0.0.1 --port 4173 --strictPort

8. Publish the result. Back up your hosted game, then upload all contents of dist-buyer/ to your game's web folder, keeping relative paths. Do not upload the enclosing folder, source/, node_modules or the ZIP. Open the public HTTPS URL and refresh the browser cache. Rebuild and replace the complete output after source changes.

Troubleshooting: ENOENT/package.json means the terminal is in the wrong folder. EBADENGINE means Node.js is too old. If PowerShell blocks npm.ps1, use npm.cmd or Command Prompt; do not change security policy. For network/proxy errors, restore access to registry.npmjs.org and retry npm ci. If package files disagree, restore the shipped pair; npm install is for deliberate dependency changes, followed by tests/build and retaining the updated lockfile. Do not run npm audit fix --force blindly. The ready-built game/ remains usable without these developer tools.

12 Updating the game

  1. Back up your current game/ folder and your edited boba.config.js.
  2. Upload the new contents of game/ over the old files, keeping the same names.
  3. Keep boba.config.js and its saveKey unless the update notes say otherwise.
  4. 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.

13 Dependencies and licenses

  • Game framework: Phaser 4.2.1 (MIT License), included readable in game/lib/phaser.js. Icons: Phosphor Icons (MIT License). Fonts: Nunito and Lora (SIL Open Font License).
  • Source edition only: Vite, Vitest and tsx (MIT License) and TypeScript (Apache License 2.0), installed by npm.
  • Full notices: the licenses/ folder inside game/, and THIRD-PARTY-LICENSES/ in the ZIP.

The game makes no analytics, ranking, payment or advertising calls. It contains no ad SDK and no billing code.

The original artwork and audio supplied with this item remain under the license terms of the purchased item.

14 Common problems

  • Blank page: make sure you uploaded the contents of game/ (not source/, and not the folder itself), and that you opened the web address rather than a file on your computer.
  • Missing images or sounds: check the complete upload, the spelling and letter case of file names, and any 404 errors in the browser's console.
  • The files download or do not run: your host must serve .js, .webp, .woff2 and .mp3 files with normal types. Ask the host to check its MIME rules.
  • No sound at first: tap the game once, turn on Sound effects and Music in Settings, and check the device's mute switch and volume.
  • Changes do not appear: reload the game after uploading the config or images. Follow the cache section if the old version remains.

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.

15 Frequently asked questions

Does the game work without internet?
The game calls no external services. It is not an installable offline app, so players need to reach your web address to load it.
Can I add ads, a store, cloud saves or a global ranking?
Not in this edition. It has no ad, payment, sync or ranking code. Adding them is developer work that needs your own accounts and approvals.
Can players cheat the clock or their records?
Yes. This is a local game without a server, so do not use local records for prizes or for verified competitions.
Is the guide available in other languages?
Yes. Use the language list at the top of this page. Your choice is remembered on this device, and the page does not reload.
Do I need Node.js?
Only to change the source code. Installing and playing needs only a web host.

16 Support and version history

Support and customization: willian@polargames.com.br. Include your purchase reference when you have it. 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

  • Read the installation, file map and customizing sections before changing anything. Upload only game/ to a host; source/ is not the playable game.
  • Preserve progress: keep saveKey, the relative paths and the translated placeholders unless the buyer asks for a change.
  • Do not assume an account system, a server, ads or payments. This edition has none, and the code is the source of truth.
  • Inspect the actual files and tests before editing. The 14 interface languages and the 3 voice languages are separate facts.