matrix-org / matrix-org/matrix-spec
Support for running "ad-hoc" servers (SPEC-122)
Nobody has claimed this yet.
- Dominant language
- HTML
- Stars
- 330
- Forks
- 150
- Avg merge
- 2h 21m
- Merged PRs (30d)
- 3
Description
Lots of people have said they'd love to run a matrix server, but it'd cost too much to maintain a VPS.
It'd be fun to do the thought experiment to work out really what's needed to run a server clientside, e.g. on a phone. Obvious things that come to mind are:
- A dialect of the s-s API which lets a firewalled server always initiate connections (be it long-poll or websockets or TURN or whatever), whilst somehow handling new invites?
- .well-known URIs (#433) or dyndns SRV or whatever for discovering where the server currently is (if folks are discovering it)
(Imported from https://matrix.org/jira/browse/SPEC-122)
(Reported by @ara4n)
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reviewing the s-s API ideas in this issue and the related .well-known URIs issue (#433). Compare long-polling, WebSockets, TURN, and dynamic DNS/SRV discovery as possible approaches for firewalled, clientside servers. Done would be a settled protocol design and specification for server connectivity and invite handling.
Written by the indexing model from the issue text.
Assessment
- Domain
- backend-api-design, distributed-systems, networking
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 20/100