Synaplan
Open-source AI platform for companies: self-hosted AI agents, GDPR-compliant chatbot widget, RAG knowledge base, WhatsApp and Outlook AI, MCP, multi-model routing. Docker, Kubernetes or hosted in Germ
An independent mobile game studio. Small, honest games about choices, and the people who have to live with them.
BusinessHTML · CSSGitHub @Soumik766OnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
My site to hold all my games
Translation pending
Taken from the repository README
Loading the full README.
Read the full README ↗The developer website for Boundless Team, and the home of the privacy policy, terms and
app-ads.txt that every one of our games points at.
Plain HTML and one stylesheet. No build step, no framework, no dependencies: what is in this repository is exactly what gets served.
games-site/
├── index.html the landing page — this URL is the Developer Website on Play
├── app-ads.txt ONE file for every game (see "app-ads.txt" below)
├── robots.txt
├── sitemap.xml
├── favicon.ico
├── assets/
│ ├── css/site.css the whole design, one file
│ └── img/
│ ├── site/ studio icon, social image
│ └── selfbound/ per-game icon and screenshots
├── privacy-policy/
│ └── index.html one policy, covers all games
├── terms/
│ └── index.html one terms document, covers all games
└── games/
├── selfbound/index.html
├── game-2/index.html the template to copy for the next game
└── README.md how to add a game
| URL | File |
|---|---|
https://games.boundlessfiction.com/ | index.html |
https://games.boundlessfiction.com/app-ads.txt | app-ads.txt |
https://games.boundlessfiction.com/privacy-policy/ | privacy-policy/index.html |
https://games.boundlessfiction.com/terms/ | terms/index.html |
https://games.boundlessfiction.com/games/selfbound/ | games/selfbound/index.html |
https://games.boundlessfiction.com/games/reel-counter/ | games/reel-counter/index.html |
https://games.boundlessfiction.com/games/snakebait/ | games/snakebait/index.html |
https://games.boundlessfiction.com/games/sense-of-time/ | games/sense-of-time/index.html |
https://games.boundlessfiction.com/games/train-the-ant/ | games/train-the-ant/index.html |
https://games.boundlessfiction.com/games/arise-dungeonborn/ | games/arise-dungeonborn/index.html |
https://games.boundlessfiction.com/games/gravity-thief/ | games/gravity-thief/index.html |
Search the repository for [ and fill in what is left. As it stands:
games/selfbound/index.html — replace [Google Play URL] once the listing exists, and
remove the aria-disabled="true" and the "Coming to Google Play" line.
games/reel-counter/index.html — the same: replace [Google Play URL] with
https://play.google.com/store/apps/details?id=app.reelcounter.tracker once the listing
exists, remove aria-disabled="true" and the "Coming to Google Play" line.
games/snakebait/index.html — the same: replace [Google Play URL] with
https://play.google.com/store/apps/details?id=com.snakebait.game once the listing
exists, remove aria-disabled="true" and the "Coming to Google Play" line.
games/sense-of-time/index.html — the same: replace [Google Play URL] with
https://play.google.com/store/apps/details?id=com.senseoftime.timinggame once the listing
exists, remove aria-disabled="true" and the "Coming to Google Play" line.
games/train-the-ant/index.html — the same: replace [Google Play URL] with
https://play.google.com/store/apps/details?id=com.traintheant.game once the listing
exists, remove aria-disabled="true" and the "Coming to Google Play" line.
games/arise-dungeonborn/index.html — the same: replace [Google Play URL] with
https://play.google.com/store/apps/details?id=com.arisedungeonborn.game once the listing
exists, remove aria-disabled="true" and the "Coming to Google Play" line.
games/gravity-thief/index.html — the same: replace [Google Play URL] with
https://play.google.com/store/apps/details?id=com.gravitythief.game once the listing
exists, remove aria-disabled="true" and the "Coming to Google Play" line.
app-ads.txt is already complete, with the real publisher ID in it.
games/game-2/ — leave it alone. It is the template, and every [Placeholder] in it is
meant to stay until it is copied.The contact address throughout is [email protected]. To change it, find and replace
across the repository — it appears in the pages, the footers and the JSON-LD.
Two documents worth reading before touching anything:
git clone YOUR_REPOSITORY_URL
cd games-site
code .
Or File → Open Folder → games-site. Two extensions make this pleasant, neither required:
index.html → Open with Live Server. It serves the folder
on http://127.0.0.1:5500, which is the only way to test the absolute paths (/assets/…,
/privacy-policy/) properly. Opening the file directly with file:// makes every one of
those links break, and that is the file protocol's fault, not the site's.Any static server works if you would rather not install anything:
python -m http.server 5500
Then open http://localhost:5500/.
| You want to change | Edit |
|---|---|
| Studio name, intro, contact | index.html |
| The games list on the front page | index.html, the <ul class="cards"> block |
| A game's text, features, Play link | games/<game>/index.html |
| Game icons and screenshots | assets/img/<game>/, then the <img> tags on that page |
| Colours, spacing, typography | assets/css/site.css — the :root variables at the top |
| Privacy policy | privacy-policy/index.html (and update the date at the top) |
| Terms | terms/index.html (and update the date at the top) |
| AdMob publisher ID | app-ads.txt |
| Adding a whole new game | games/README.md walks through it |
When you change either legal document in a way that materially affects players, also bump
GameConst.legalVersion in each game's own source, so the games ask people to accept the new
version.
git add .
git commit -m "Update game website"
git push
GitHub is source control and history. Hostinger is production hosting. Pushing to GitHub does not by itself change the live site unless you have set up the Git deployment below.
hPanel's layout shifts between plans and redesigns. The names below are what the menus are called at the time of writing; if something has moved, the feature is still there under a similar name.
hPanel → your hosting plan → Domains → Subdomains. Create games under
boundlessfiction.com, which gives games.boundlessfiction.com.
Hostinger creates a folder for it and shows you the path — usually something like
public_html/games or domains/games.boundlessfiction.com/public_html. Write that path
down. It is the document root, and every step below depends on knowing it exactly.
If the subdomain is on a different hosting account from the main domain, add a DNS A record
for games pointing at that account's IP, in Domains → DNS Zone.
The contents of this repository go in that folder, not in a games-site folder inside it.
When it is right, index.html sits directly in the document root:
<document root>/index.html
<document root>/app-ads.txt
<document root>/assets/css/site.css
<document root>/privacy-policy/index.html
<document root>/terms/index.html
<document root>/games/selfbound/index.html
Three ways to get it there, best first.
a. Git deployment (recommended). hPanel → Advanced → Git → Connect with GitHub,
authorise the Hostinger GitHub app, pick this repository, pick the branch (main), and set
the deploy directory to the document root path from step 1. Then every git push deploys
automatically: GitHub notifies Hostinger, Hostinger pulls, the files are replaced. There is no
build step, which is exactly what a static site wants.
Two things that trip people up: the deploy directory must be empty for the first
deployment, and the deploy directory must be the subdomain's document root, not
public_html, or the site will appear on the wrong domain.
b. File Manager. hPanel → Files → File Manager, open the document root, and upload a
zip of the repository contents, then extract it there. Fine for the first upload and for the
occasional one-file fix. Do not forget the dot-less files: app-ads.txt and robots.txt must
land in the root.
c. FTP/SFTP. hPanel → Files → FTP Accounts for the credentials, then FileZilla or the
VS Code SFTP extension. Upload the repository contents into the document root. If you use an
extension that stores credentials in the project, keep that file out of Git — .gitignore
already excludes sftp.json and .ftp-config.
hPanel → Security → SSL. Issue a free Let's Encrypt certificate for
games.boundlessfiction.com and turn on Force HTTPS. A new certificate can take up to an
hour. Google Play will not accept an http:// privacy policy URL, and ad-network crawlers
expect https:// too.
Open every one of these and confirm what should appear does:
https://games.boundlessfiction.com/ the landing page
https://games.boundlessfiction.com/app-ads.txt plain text, starting with a # comment
https://games.boundlessfiction.com/privacy-policy/ the policy
https://games.boundlessfiction.com/terms/ the terms
https://games.boundlessfiction.com/games/selfbound/ the game page
Then check, in a browser:
app-ads.txt renders as text, not as a download and not as HTML;/.From a terminal, the quickest proof:
curl -I https://games.boundlessfiction.com/app-ads.txt
HTTP/2 200 and content-type: text/plain is what you want.
One file, at the root, for every game. There is one AdMob account and one publisher ID, so
there is one app-ads.txt:
https://games.boundlessfiction.com/app-ads.txt
Never create games/selfbound/app-ads.txt or any other per-game copy. The crawlers do not
look there. Each game's Play listing has
https://games.boundlessfiction.com/ as its Developer Website, and the crawler takes that
domain and fetches /app-ads.txt from its root. A file anywhere else is invisible, and the
AdMob console will keep telling you it cannot find one.
This matters for money, not tidiness: without a valid app-ads.txt, a good share of
programmatic ad demand will not bid on your inventory.
After it is live, AdMob can take a day or so to re-crawl, and the warning in the console can take a few days to clear. That is normal. Verify it yourself with the URL above rather than waiting on the console.
For every game, the Developer Website is the root:
https://games.boundlessfiction.com/
Not the game's own page. The root is what app-ads.txt is matched against, and it is what
makes the listing look like it belongs to a studio rather than to one app. Individual game
pages exist for players, for links in the store description, and for search.
The privacy policy URL on every listing is https://games.boundlessfiction.com/privacy-policy/.
app-ads.txt exist once. A game
page links to them; it never carries a copy.site.css where the next game can reuse it, not in
a <style> block on one page./assets/css/site.css) so a page can be moved between folder depths
without rewriting every link.width and height so the page does not jump while they load, and real
alt text so screen readers get something useful.