combine service/users data w/ mod unit split sliding sync related out of service/users instrument database entry points remove increment crap from database interface de-wrap all database get() calls de-wrap all database insert() calls de-wrap all database remove() calls refactor database interface for async streaming add query key serializer for database implement Debug for result handle add query deserializer for database add deserialization trait for option handle start a stream utils suite de-wrap/asyncify/type-query count_one_time_keys() de-wrap/asyncify users count add admin query users command suite de-wrap/asyncify users exists de-wrap/partially asyncify user filter related asyncify/de-wrap users device/keys related asyncify/de-wrap user auth/misc related asyncify/de-wrap users blurhash asyncify/de-wrap account_data get; merge Data into Service partial asyncify/de-wrap uiaa; merge Data into Service partially asyncify/de-wrap transaction_ids get; merge Data into Service partially asyncify/de-wrap key_backups; merge Data into Service asyncify/de-wrap pusher service getters; merge Data into Service asyncify/de-wrap rooms alias getters/some iterators asyncify/de-wrap rooms directory getters/iterator partially asyncify/de-wrap rooms lazy-loading partially asyncify/de-wrap rooms metadata asyncify/dewrap rooms outlier asyncify/dewrap rooms pdu_metadata dewrap/partially asyncify rooms read receipt de-wrap rooms search service de-wrap/partially asyncify rooms user service partial de-wrap rooms state_compressor de-wrap rooms state_cache de-wrap room state et al de-wrap rooms timeline service additional users device/keys related de-wrap/asyncify sender asyncify services refactor database to TryFuture/TryStream refactor services for TryFuture/TryStream asyncify api handlers additional asyncification for admin module abstract stream related; support reverse streams additional stream conversions asyncify state-res related Signed-off-by: Jason Volk <jason@zemos.net> |
||
---|---|---|
.gitea | ||
.github/workflows | ||
.gitlab | ||
arch | ||
bin | ||
debian | ||
deps/rust-rocksdb | ||
docs | ||
nix/pkgs | ||
src | ||
tests | ||
theme | ||
.dockerignore | ||
.editorconfig | ||
.envrc | ||
.git-blame-ignore-revs | ||
.gitignore | ||
.gitlab-ci.yml | ||
.markdownlintignore | ||
book.toml | ||
Cargo.lock | ||
Cargo.toml | ||
clippy.toml | ||
CODE_OF_CONDUCT.md | ||
conduwuit-example.toml | ||
CONTRIBUTING.md | ||
default.nix | ||
development.md | ||
engage.toml | ||
flake.lock | ||
flake.nix | ||
LICENSE | ||
README.md | ||
renovate.json | ||
rust-toolchain.toml | ||
rustfmt.toml |
conduwuit
a very cool, featureful fork of Conduit
Visit the conduwuit documentation for more information.
What is Matrix?
Matrix is an open network for secure and decentralized communication. Users from every Matrix homeserver can chat with users from all other Matrix servers. You can even use bridges (also called Matrix Appservices) to communicate with users outside of Matrix, like a community on Discord.
What is the goal?
A high-performance and efficient Matrix homeserver that's easy to set up and just works. You can install it on a mini-computer like the Raspberry Pi to host Matrix for your family, friends or company.
Can I try it out?
An official conduwuit server ran by me is available at transfem.dev (element.transfem.dev / cinny.transfem.dev)
transfem.dev is a public homeserver that can be used, it is not a "test only homeserver". This means there are rules, so please read the rules: https://transfem.dev/homeserver_rules.txt
transfem.dev is also listed at servers.joinmatrix.org
What is the current status?
conduwuit is technically a hard fork of Conduit, which is in Beta. The Beta status initially was inherited from Conduit, however overtime this Beta status is rapidly becoming less and less relevant as our codebase significantly diverges more and more.
conduwuit is quite stable and very usable as a daily driver and for a low-medium sized homeserver. There is still a lot of more work to be done, but it is in a far better place than the project was in early 2024.
How is conduwuit funded? Is conduwuit sustainable?
conduwuit has no external funding. This is made possible purely in my freetime with contributors, also in their free time, and only by user-curated donations.
conduwuit has existed since around November 2023, but only became more publicly known in March/April 2024 and we have no plans in stopping or slowing down any time soon!
Can I migrate or switch from Conduit?
conduwuit is a complete drop-in replacement for Conduit. As long as you are using RocksDB, the only "migration" you need to do is replace the binary or container image. There is no harm or additional steps required for using conduwuit.
Contact
If you run into any question, feel free to
- Ask us in
#conduwuit:puppygock.gay
on Matrix - Open an issue on GitHub
Donate
conduwuit development is purely made possible by myself and contributors. I do not get paid to work on this, and I work on it in my free time. Donations are heavily appreciated! 💜🥺
- Liberapay: https://liberapay.com/girlbossceo
- Ko-fi (note they take a fee): https://ko-fi.com/puppygock
- GitHub Sponsors: https://github.com/sponsors/girlbossceo
Logo
Original repo and Matrix room picture was from bran (<3). Current banner image and logo is directly from this cohost post.
Is it conduwuit or Conduwuit?
Both, but I prefer conduwuit.
Mirrors of conduwuit
- GitHub: https://github.com/girlbossceo/conduwuit
- GitLab: https://gitlab.com/conduwuit/conduwuit
- git.girlcock.ceo: https://git.girlcock.ceo/strawberry/conduwuit
- git.gay: https://git.gay/june/conduwuit
- Codeberg: https://codeberg.org/girlbossceo/conduwuit
- sourcehut: https://git.sr.ht/~girlbossceo/conduwuit