{"id":28431776,"url":"https://github.com/block/ftl","last_synced_at":"2025-12-15T01:05:44.142Z","repository":{"id":99432801,"uuid":"607506228","full_name":"block/ftl","owner":"block","description":"FTL is a platform for building distributed systems that are safe to operate, easy to reason about, and fast to iterate and develop on.","archived":false,"fork":false,"pushed_at":"2025-06-23T02:27:34.000Z","size":114349,"stargazers_count":82,"open_issues_count":96,"forks_count":11,"subscribers_count":6,"default_branch":"main","last_synced_at":"2025-06-27T13:48:14.304Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://block.github.io/ftl/","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/block.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":"CODEOWNERS","security":null,"support":null,"governance":"GOVERNANCE.md","roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2023-02-28T05:17:05.000Z","updated_at":"2025-06-23T02:26:29.000Z","dependencies_parsed_at":"2023-09-22T09:19:06.655Z","dependency_job_id":"cde515d0-5958-4872-9e73-73d872883574","html_url":"https://github.com/block/ftl","commit_stats":null,"previous_names":["block/ftl"],"tags_count":1199,"template":false,"template_full_name":"TBD54566975/tbd-project-template","purl":"pkg:github/block/ftl","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/block%2Fftl","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/block%2Fftl/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/block%2Fftl/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/block%2Fftl/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/block","download_url":"https://codeload.github.com/block/ftl/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/block%2Fftl/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":263639113,"owners_count":23492951,"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":[],"created_at":"2025-06-05T16:08:27.767Z","updated_at":"2025-12-15T01:05:39.062Z","avatar_url":"https://github.com/block.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cimg height=\"80px\" align=\"right\" src=\"https://www.wtamu.edu/~cbaird/sq/images/fasterthanlight.png\" alt=\"Public Domain Image, source: Christopher S. Baird\"/\u003e\n\n\u003cbr /\u003e\n\n# FTL [![CI](https://github.com/block/ftl/actions/workflows/ci.yml/badge.svg)](https://github.com/block/ftl/actions/workflows/ci.yml) [![License](https://img.shields.io/badge/License-Apache_2.0-blue.svg)](https://opensource.org/licenses/Apache-2.0)\n\n## Documentation\n\nhttps://block.github.io/ftl/\n\n## Getting started\n\n### Install ftl, for example on macos:\n\n```sh\nbrew tap block/ftl \u0026\u0026 brew install ftl\n```\n\n### Create a sample project (Go)\n\n\u003c!-- This is for [mdcode](https://github.com/szkiba/mdcode) to test snippets in our README. --\u003e\n\n\u003c!--\u003cscript type=\"text/markdown\"\u003e\n```sh file=test.sh outline=true\n#!/bin/bash\nset -Eeuxo pipefail\n\njust build ftl\nexport PATH=\"$(git rev-parse --show-toplevel)/build/release:$PATH\"\n\npwd\n\n# #region init\n# #endregion\n\n(\n# #region start\n# #endregion\n) \u0026\npid=\"$!\"\ntrap \"kill $pid\" EXIT ERR INT\n\ndiff -u \u003c(\n(\n# #region call\n# #endregion\n) | tee /dev/stderr\n) \u003c(echo '{\"message\":\"Hello, Bob!\"}')\n```\n\u003c/script\u003e--\u003e\n\n```sh file=test.sh region=init\nftl init myproject\ncd myproject\nftl module new go alice\n```\n\n### Build and deploy the module\n\nStart FTL:\n\n```sh file=test.sh region=start\nftl dev --wait-for=alice\n```\n\nNow let's call a verb:\n\n```sh file=test.sh region=call\nftl call alice.hello '{name: \"Bob\"}'\n```\n\n## Project Resources\n\n| Resource                                   | Description                                                                   |\n| ------------------------------------------ | ----------------------------------------------------------------------------- |\n| [CODEOWNERS](./CODEOWNERS)                 | Outlines the project lead(s)                                                  |\n| [CODE_OF_CONDUCT.md](./CODE_OF_CONDUCT.md) | Expected behavior for project contributors, promoting a welcoming environment |\n| [CONTRIBUTING.md](./CONTRIBUTING.md)       | Developer guide to build, test, run, access CI, chat, discuss, file issues    |\n| [GOVERNANCE.md](./GOVERNANCE.md)           | Project governance                                                            |\n| [LICENSE](./LICENSE)                       | Apache License, Version 2.0                                                   |\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fblock%2Fftl","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fblock%2Fftl","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fblock%2Fftl/lists"}