{"id":14968861,"url":"https://github.com/nicholasoxford/supafly","last_synced_at":"2025-10-27T12:31:17.574Z","repository":{"id":161257764,"uuid":"635991549","full_name":"nicholasoxford/SupaFly","owner":"nicholasoxford","description":"The easiest way to deploy Supabase to Fly.io","archived":false,"fork":false,"pushed_at":"2024-08-11T23:23:13.000Z","size":784,"stargazers_count":118,"open_issues_count":4,"forks_count":6,"subscribers_count":5,"default_branch":"main","last_synced_at":"2025-02-05T00:17:22.864Z","etag":null,"topics":["flyio","infastructure-as-code","supabase"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/nicholasoxford.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-05-03T22:39:50.000Z","updated_at":"2025-01-28T19:45:15.000Z","dependencies_parsed_at":"2024-01-03T00:37:10.845Z","dependency_job_id":"7701996d-d767-4a62-bbc5-c0445176656b","html_url":"https://github.com/nicholasoxford/SupaFly","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nicholasoxford%2FSupaFly","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nicholasoxford%2FSupaFly/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nicholasoxford%2FSupaFly/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nicholasoxford%2FSupaFly/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/nicholasoxford","download_url":"https://codeload.github.com/nicholasoxford/SupaFly/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":237215901,"owners_count":19273554,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["flyio","infastructure-as-code","supabase"],"created_at":"2024-09-24T13:40:43.511Z","updated_at":"2025-10-27T12:31:12.264Z","avatar_url":"https://github.com/nicholasoxford.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# SupaFly\n\nThis easiest way to deploy Supabase to Fly.io\n\n\u003cimg src=\"https://user-images.githubusercontent.com/51415676/236983368-caac8b95-c266-4193-a14b-d5fab8766e10.png\" width=50% height=50%\u003e\n\n## Features\n\n- Uses new [Fly.io Apps v2](https://fly.io/docs/reference/apps/) platform\n- Uses Fly's [private networking](https://fly.io/docs/reference/private-networking/)\n  \u003e Applications within the same organization are assigned special addresses (\"6PN addresses\") tied to the organization. Those applications can talk to each other because of those 6PN addresses, but applications from other organizations can't; the Fly platform won't forward between different 6PN networks.\n- Turborepo to make it easy to build off of\n\n## Prerequisites\n\nRun the following command:\n\n- [x] Fly.io CLI tool installed\n- [x] Wireguard installed\n- [x] Add card to Fly.io account / organazation\n\n### Install [flyctl](https://fly.io/docs/hands-on/install-flyctl/), or the Fly.io CLI tool\n\n```sh\nbrew install flyctl\n```\n\n### [Wireguard Installation Instructions](https://www.wireguard.com/install/)\n\n### We recommend creating a new organization for your SupaFly project\n\n\u003e If you don't pass in a value for `--org` it will default to your personal organization\n\n## Deploying SupaFly\n\n```sh\nnpx supafly@latest\n```\n\n\u003cimg width=\"546\" alt=\"PNG image\" src=\"https://user-images.githubusercontent.com/51415676/236983392-fa4631ab-90c7-44c7-83dd-db470bc3d7f8.png\"\u003e\n\n## Infrastructure Deployed\n\n- Supabase flavor, postgres database\n- [Postgres-meta](https://github.com/supabase/postgres-meta)\n- [Supabase Auth Service](https://github.com/supabase/auth-helpers)\n- [PostgREST](https://github.com/PostgREST/postgrest)\n- [Api Gateway (kong)](https://docs.konghq.com/gateway/latest/production/deployment-topologies/db-less-and-declarative-config/)\n- [Supabase Studio](https://github.com/supabase/supabase/tree/master/studio)\n\n## Things to work on\n\n- Supabase Storage Deployment\n- Postgrest alpine image\n- issues persisting data with database redeployments\n- Pass in passwords for postgres roles\n- Better name generation for Supabase services\n\n[SupaFly Progress Tracker](https://github.com/users/nicholasoxford/projects/1/views/1)\n\n## How I created this\n\n- Got inspired by @kiwicopple [reddit comment](https://www.reddit.com/r/Supabase/comments/s9rdfd/globally_distributed_postgres_with_supabase/) about deploying Supabase DB to Fly\n- Took the Supabase [docker-compose](https://github.com/supabase/supabase/blob/master/docker/docker-compose.yml) file and created fly services for each\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnicholasoxford%2Fsupafly","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnicholasoxford%2Fsupafly","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnicholasoxford%2Fsupafly/lists"}