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/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/sqlc
from the root of this package 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 both the dev
and production
environments. If you'd like to deploy a different branch to dev
, open a PR with an update to .github/workflows/deploy.yml switching from main
to your branch. Remember to PR it back to main
when you're done.
Changes will be automatically applied and no user action is required after merging.