Write a modular monolith in Go, deploy it as microservices.
Weft is a community-maintained continuation of Service Weaver, a programming framework for writing, deploying, and managing distributed applications in Go. The original project was archived by its maintainers; Weft picks it up to keep it alive, fix bugs, and keep evolving it.
You write your application as a single modular binary made of components, run and test it locally, and then deploy it as a set of distributed services without rewriting your code.
Weft is in its early days. The codebase is currently identical to the last release of Service Weaver, and work is underway to rename packages, update dependencies, and publish new releases.
Until the Weft documentation is published, the Service Weaver docs still apply. The documentation source lives in the website/ folder of this repository.
Contributions are welcome. Please read CONTRIBUTING.md before opening an issue or pull request.
Weft is a fork of Service Weaver, created by Google and its community. Weft is not affiliated with or endorsed by Google.
Weft is licensed under the Apache License 2.0. See LICENSE for details.