# Portals

Three ways to run a site on the Filudi catalog, and how a site and its domains are approved.

A portal is a site of yours that lists games from the Filudi catalog and runs them in frames. Players get
saves, leaderboards and accounts from the API; you get the catalog, the frame handshake, server keys and
statistics. The guides take you from a pending site to a published catalog.

- [Start here](/docs/portals/start-here/): the account, a portal in the console, approval, domains.
- [Three ways to build a portal](/docs/portals/three-ways/): a front on hub-core, a front of your own, a backend
  with server keys, and how to pick.
- [A front on hub-core](/docs/portals/hub-core-front/): `fetchCatalog`, `GameFrame`, `PlayerClient`,
  `tokens.css`, the playground.
- [A front of your own](/docs/portals/own-front/): the public catalog, the handshake message by message, the game
  token exchange, `frame-ancestors`.
- [A backend with server keys](/docs/portals/backend-server-keys/): keys and scopes, players by your own user id,
  a token for the browser.
- [Listing games](/docs/portals/listing-games/): distribution, what you may list, why an add is refused.
- [Statistics](/docs/portals/statistics/): what the console shows for a site and what a key reads.
- [Going live](/docs/portals/going-live/): publish, the CDN, the approval queue.

filudi.com is built the first way and is the reference for what hub-core does. The API behind every way is in
the [API reference](/docs/api/).
