https://github.com/matrix-org/bullettime
An experimental golang Matrix homeserver
https://github.com/matrix-org/bullettime
Last synced: about 1 year ago
JSON representation
An experimental golang Matrix homeserver
- Host: GitHub
- URL: https://github.com/matrix-org/bullettime
- Owner: matrix-org
- License: apache-2.0
- Created: 2015-09-17T22:46:34.000Z (almost 11 years ago)
- Default Branch: master
- Last Pushed: 2015-09-21T12:14:29.000Z (almost 11 years ago)
- Last Synced: 2025-03-24T13:36:19.148Z (over 1 year ago)
- Language: Go
- Size: 1.04 MB
- Stars: 32
- Watchers: 36
- Forks: 6
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# bullettime
An experimental Matrix homeserver written in Go.
Contributions are under the same terms as
https://github.com/matrix-org/synapse/blob/master/CONTRIBUTING.rst
# Starting point from Patrik Oldsberg at Ericsson:
Here's a possible starting point. What's supported so far is basic registration,
and most of the /rooms, /profile, /presence, and /events API:s.
To build this the repo should be cloned to $GOPATH/src/github.com/matrix-org/bullettime, then just use `go build .`
Some explanation of the basic structure:
- #### core/
Core functionality that uses the data structures in the Matrix spec
- **db/**
Storage abstractions
- **events/**
Event stream implementations, only stream ordering at the moment
- **interfaces/**
Public interfaces that are common among all packages
- **types/**
Types that are common among all other packages
- #### matrix/
Implementation of the business logic in the Matrix spec, on top of core
- **api/**
REST api frontend, built on top of services
- **service/**
Glues together core packages and adds business logic.
- **interfaces/**
Public interfaces that are common among matrix packages
- **types/**
Types that are common among matrix packages
- #### test/
Overarching tests
- #### utils/
General helper methods
- #### vendor/
external modules, uses Go 1.5 vendor experiment