No description
Find a file
2026-07-02 11:36:05 -07:00
.agents/skills Add welshman skill 2026-06-12 15:00:14 -07:00
.gitea/workflows minimize container size and caching 2026-05-22 15:36:28 -07:00
.husky Get rid of overries, bump welshman to lockstep versioning 2025-05-15 15:52:17 -07:00
android Bump version 2026-06-24 11:23:55 -07:00
assets Update app icon 2025-01-17 09:08:55 -08:00
e2e Scaffold playwright 2026-06-01 17:00:47 -07:00
ios Bump version 2026-06-24 11:23:55 -07:00
src Add the ability to save events to the library 2026-07-02 11:36:05 -07:00
static Update universal links 2026-04-16 13:50:13 -07:00
.ackrc Support unban/unallow 2026-03-09 21:12:10 -07:00
.dockerignore Fix dockerfile again 2026-05-11 13:20:47 -07:00
.env UI tweaks, change how role colors work 2026-07-01 10:23:23 -07:00
.fdignore Scaffold playwright 2026-06-01 17:00:47 -07:00
.gitattributes Add indexer, maybe improve safe area support 2025-05-15 10:15:41 -07:00
.gitignore Add welshman skill 2026-06-12 15:00:14 -07:00
.npmrc Initial commit 2024-08-01 16:49:32 -07:00
.nvmrc Update capacitor, get ios running 2025-01-31 13:14:29 -08:00
.prettierignore Initial commit 2024-08-01 16:49:32 -07:00
.prettierrc Moar upgrades 2026-01-23 10:53:50 -08:00
AGENTS.md Add roles 2026-06-22 15:45:31 -07:00
build-in-production.sh Bump welshman 2025-07-09 14:00:42 -07:00
build.sh Fix env conventions again 2026-04-02 14:01:09 -07:00
capacitor.config.ts Fix keyboard safe insets 2026-06-23 13:03:42 -07:00
CHANGELOG.md Bump version 2026-06-24 11:23:55 -07:00
CONTRIBUTING.md Add contributing file 2026-04-02 13:31:37 -07:00
Dockerfile Add pnpm workspace to docker file 2026-06-23 13:32:32 -07:00
eslint.config.js Lint 2024-08-16 11:56:35 -07:00
LICENSE Add license 2024-08-05 14:47:49 -07:00
link_deps Fix link_deps, normalize relays less aggressively 2026-06-03 11:08:08 -07:00
package.json Refactor css, lib components, add themes 2026-06-26 17:25:34 -07:00
playwright.config.ts Scaffold playwright 2026-06-01 17:00:47 -07:00
pnpm-lock.yaml Refactor css, lib components, add themes 2026-06-26 17:25:34 -07:00
pnpm-workspace.yaml Bump pomade 2026-05-29 16:31:29 -07:00
postcss.config.js Upgrade daisyui/tailwind 2026-04-07 15:31:35 -07:00
pwa-assets.config.js Fix env conventions again 2026-04-02 14:01:09 -07:00
README.md work on white labeling with acl'd default spaces 2026-06-30 11:28:04 -07:00
server.js Don't return 404, just return the index (some routes look like asset files since tlds look like file extensions) 2026-06-04 14:28:10 -07:00
skills-lock.json Add welshman skill 2026-06-12 15:00:14 -07:00
svelte.config.js Moar upgrades 2026-01-23 10:53:50 -08:00
tailwind.config.js Refactor css, lib components, add themes 2026-06-26 17:25:34 -07:00
tsconfig.json Autoformat 2024-08-05 15:28:46 -07:00
vite.config.server.ts minimize container size and caching 2026-05-22 15:36:28 -07:00
vite.config.ts Remove tauri, bump deps 2026-05-25 10:41:34 -07:00
zapstore.yaml Update zapstore.yaml 2026-03-09 21:12:51 -07:00

Flotilla

A discord-like nostr client based on the idea of "relays as groups".

If you would like to be interoperable with Flotilla, please check out this guide: https://habla.news/u/hodlbod@coracle.social/1741286140797

Environment

You can also optionally create an .env.local file and populate it with the following environment variables (see .env.template for examples):

Platform branding

  • VITE_PLATFORM_URL - The url where the app will be hosted
  • VITE_PLATFORM_NAME - The name of the app
  • VITE_PLATFORM_LOGO - A logo url for the app. Can be a local path or https link. Must be a PNG file.
  • VITE_PLATFORM_ACCENT - A hex color for the app's accent color (used only for generated manifest, for more control create a custom theme file)
  • VITE_PLATFORM_DESCRIPTION - A description of the app
  • VITE_PLATFORM_TERMS - URL to your terms of service page
  • VITE_PLATFORM_PRIVACY - URL to your privacy policy page

Platform mode

  • VITE_PLATFORM_RELAYS - A comma-separated list of relay urls that will make flotilla operate in "platform mode". Disables all space browse/add/select functionality and makes the first platform relay the home page.

Defaults

  • VITE_DEFAULT_PUBKEYS - A comma-separated list of hex pubkeys for bootstrapping web of trust
  • VITE_DEFAULT_SPACES - A comma-separated list of relay urls that new users will be automatically joined to on signup. Each one may optionally include an invite code, delimited by |, e.g. my.space.com|CODE.
  • VITE_DEFAULT_RELAYS - A comma-separated list of relay urls used as default outbox/inbox relays
  • VITE_DEFAULT_MESSAGING_RELAYS - A comma-separated list of relay urls used for encrypted direct messages
  • VITE_DEFAULT_BLOSSOM_SERVERS - A comma-separated list of blossom server urls used for file uploads

Infrastructure

  • VITE_INDEXER_RELAYS - A comma-separated list of relay urls used for user profile/key lookup
  • VITE_SIGNER_RELAYS - A comma-separated list of relay urls used for NIP-55 remote signers
  • VITE_BLOCKED_RELAYS - A comma-separated list of relay urls that will be blocked
  • VITE_PUSH_SERVER - URL of the push notification server
  • VITE_PUSH_BRIDGE - WebSocket URL of the push notification relay bridge
  • VITE_POMADE_SIGNERS - A comma-separated list of Pomade signer server URLs (3+ required to enable email signup)
  • VITE_THUMBNAIL_URL - URL of the image thumbnail service

These values won't be used for a built version. Instead, env variables should be provided to build.sh directly or to the built container.

If you're deploying a custom version of flotilla, be sure to remove the plausible.coracle.social script from app.html. This sends analytics to a server hosted by the developer.

Development

See CONTRIBUTING.md.

Deployment

To run your own Flotilla, it's as simple as:

pnpm install
pnpm run build
pnpm run start

Or, if you prefer to use a container:

docker run -d -p 3000:3000 gitea.coracle.social/coracle/flotilla:latest

Alternatively, you can copy the build files into a directory of your choice and serve it yourself:

mkdir ./mount
docker run -v ./mount:/app/mount gitea.coracle.social/coracle/flotilla:latest bash -c 'cp -r build/* mount'