This repo serves a single-page JavaScript app that can be hosted for free on GitHub Pages.
- Push this branch to GitHub.
- In repository settings, open Pages.
- Set Build and deployment source to Deploy from a branch.
- Choose branch
main(or your deploy branch) and folder/ (root). - Save.
GitHub Pages will host index.html and the SPA routes under hash URLs.
#/home#/clansclans table#/clan?clan=CLAN_NAMEclan details#/players?clan=CLAN_NAME&battleID=BATTLE_IDbattle players#/enchantsenchants list
These redirect to the SPA route equivalents:
clans.htmlclan.htmlplayers.htmlenchants.html
The SPA now uses live API communication with request throttling and TTL caching:
- Worker API (
https://psclans-spa.cloudflare-6apm0.workers.dev)/message/pinned/clans/changes?clan=.../clan?clan=.../usernames?clan=...
- Big Games API
/activeClanBattle/clans/clan/:name/collection/enchants
- RoProxy (CORS-safe Roblox mirror)
/v1/assetsthumbnails for clan/enchant icons/v1/users/avatar-headshotuser avatars/v1/users/:idfallback username lookup
Client-side behavior to reduce API volume:
- Worker calls are rate-limited on the client.
- Responses are cached in memory and
localStoragewith per-endpoint TTLs. - In-flight requests are deduplicated so concurrent views reuse the same request.
Code in this repository is licensed under GNU AGPL-3.0-or-later.
See LICENSE.
- Files under
assets/imagesare third-party assets and are not authored by this project. They are not covered by the AGPL code license unless a specific asset says otherwise. - The Pet Simulator 99 public API is provided by BIG Games LLC. Reference: https://github.com/BIG-Games-LLC/ps99-public-api-docs This project is not affiliated with BIG Games LLC; API use must follow their terms and policies.
See THIRD_PARTY.md for attribution and scope details.