This repo provides software for the nodes that currently form the XMTP network. No new development is planned for this node software.
At this time, all nodes in the XMTP network are run by XMTP Labs, whose mission is to promote and support the development and global adoption of XMTP.
All new development is focused on xmtpd, an experimental version of XMTP node software.
After xmtpd
meets specific functional requirements, the plan is for it to become the node software that powers the XMTP network. In the future, anyone will be able to run an xmtpd
node that participates in the XMTP network.
You must have the exact go version listed in go.mod
- you can verify this by running go version
.
dev/up
dev/test
dev/start
dev/lint
golangci-lint fmt
dev/migrate-message $MIGRATION_NAME
dev/migrate-mls $MIGRATION_NAME
dev/migrate-authz $MIGRATION_NAME
If you modify pkg/mls/store/queries.sql
you need to run ./dev/gen/sqlc
to regenerate any generated code.
dev/run --metrics
- Browse to http://localhost:9090 to see prometheus interface
Merging a PR to the main
branch will trigger a new deployment via GitHub Actions and Terraform. The default behavior is to deploy main
to the dev
environment.
To deploy to production
, you must move deliberately pick a tag and set the version in Terraform.