Skip to content

dearkafka/continuwuity

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6,200 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

continuwuity

A community-driven Matrix homeserver in Rust

Warning

THIS IS A FORK OF THE MOST AWESOME MATRIX SERVER ^_^ It has so far 2 big changes that I do not plan to PR:

  1. partial fix of famous 779 issue: so users dont hang on joining rooms. I actually accompanied this with cinny fix as well, so they work together
  2. SSO/OIDC - Native OIDC, defined in MSC3861 and part of Matrix auth 2.0.

Note

A few words on SSO. It's obviously not mergeable to origin. I do not plan to PR this and in current form you should not, too. First of all, it uses a bunch of borrowings from Tuwunel. Second, it's idiosyncratic and is not how you do MSC3861 and not how continuwuity devs would do it. This exists solely bc soon I will have to onboard a ton of password-forgetful users and guess what... I have already onboarded some of them in default flow. So here I also imagined some sort of linking of continuwuity auth into SSO. However, this was not a 100% easy thing to hack so I decided to keep it in public. I also believe we should have more forks, both big and small, so users can find alternatives more easily. BTW this was tested on Zitadel, and then I switched to Rausty.

Chat on Matrix Join the space

continuwuity is a Matrix homeserver written in Rust. It's the official community continuation of the conduwuit homeserver.

forgejo.ellis.link Stars Issues Pull Requests

GitHub Stars

GitLab Stars

Codeberg Stars

Why does this exist?

The original conduwuit project has been archived and is no longer maintained. Rather than letting this Rust-based Matrix homeserver disappear, a group of community contributors have forked the project to continue its development, fix outstanding issues, and add new features.

We aim to provide a stable, well-maintained alternative for current conduwuit users and welcome newcomers seeking a lightweight, efficient Matrix homeserver.

Who are we?

We are a group of Matrix enthusiasts, developers and system administrators who have used conduwuit and believe in its potential. Our team includes both previous contributors to the original project and new developers who want to help maintain and improve this important piece of Matrix infrastructure.

We operate as an open community project, welcoming contributions from anyone interested in improving continuwuity.

What is Matrix?

Matrix is an open, federated, and extensible network for decentralized communication. Users from any Matrix homeserver can chat with users from all other homeservers over federation. Matrix is designed to be extensible and built on top of. You can even use bridges such as Matrix Appservices to communicate with users outside of Matrix, like a community on Discord.

What are the project's goals?

Continuwuity aims to:

  • Maintain a stable, reliable Matrix homeserver implementation in Rust
  • Improve compatibility and specification compliance with the Matrix protocol
  • Fix bugs and performance issues from the original conduwuit
  • Add missing features needed by homeserver administrators
  • Provide comprehensive documentation and easy deployment options
  • Create a sustainable development model for long-term maintenance
  • Keep a lightweight, efficient codebase that can run on modest hardware

Can I try it out?

Check out the documentation for installation instructions.

If you want to try it out as a user, we have some partnered homeservers you can use:

  • You can head over to https://federated.nexus in your browser.

    • Hit the Apply to Join button. Once your request has been accepted, you will receive an email with your username and password.
    • Head over to https://app.federated.nexus and you can sign in there, or use any other matrix chat client you wish elsewhere.
    • Your username for matrix will be in the form of @username:federated.nexus, however you can simply use the username part to log in. Your password is your password.
  • There's also https://continuwuity.rocks/. You can register a new account using Cinny via this convenient link, or you can use Element or another matrix client that supports registration.

What are we working on?

We're working our way through all of the issues in the Forgejo project.

Can I migrate my data from x?

  • Conduwuit: Yes
  • Conduit: No, database is now incompatible
  • Grapevine: No, database is now incompatible
  • Dendrite: No
  • Synapse: No

We haven't written up a guide on migrating from incompatible homeservers yet. Reach out to us if you need to do this!

Contribution

Development flow

  • Features / changes must developed in a separate branch
  • For each change, create a descriptive PR
  • Your code will be reviewed by one or more of the continuwuity developers
  • The branch will be deployed live on multiple tester's matrix servers to shake out bugs
  • Once all testers and reviewers have agreed, the PR will be merged to the main branch
  • The main branch will have nightly builds deployed to users on the cutting edge
  • Every week or two, a new release is cut.

The main branch is always green!

Policy on pulling from other forks

We welcome contributions from other forks of conduwuit, subject to our review process. When incorporating code from other forks:

  • All external contributions must go through our standard PR process
  • Code must meet our quality standards and pass tests
  • Code changes will require testing on multiple test servers before merging
  • Attribution will be given to original authors and forks
  • We prioritize stability and compatibility when evaluating external contributions
  • Features that align with our project goals will be given priority consideration

Contact

Join our Matrix room and space to chat with us about the project!

About

FORK! <3 PLS READ README WARNING - now with OICD matrix auth 2.0

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Packages

 
 
 

Contributors