A very simple chat app, made to compare axum and arctix
Wrix was not built to be a useful chat app, it was simply made to compare Axum and Actix-web in a practical project. It is not intended to be used in a serious context or for anything important and is just a simple demo to compare 2 frameworks.
The app features the basic stuff:
- Chatting
- Auth
- Login as guest
- Login using HackClub OAuth2
- Custom usernames
- Blazingly fast (Rust ;D)
The app is hosted and availble publicly at https://wrix.ch0.dev/.
Note: This requires you to have rustup and git installed.
Because of the way that the app is written, some setup is required to selfhost it. To selfhost this yourself i would recommend following this:
- Create an auth app at auth.hackclub.com, note down the ID and secret of your app. Note that the redirect URL must equal
http(s)://yourdomain.wow/auth/hc/callback, whereyourdomain.wowis the exact host you are accessing the app from, for example if you are hosting locally, that would be http://localhost:8080. THe app should have the scopes slack_id, name and openid for the app to work. - Git clone the repo and create a .env file containing the following variables:
HC_APP_ID = your app id HC_APP_SECRET = your app secret
- You can then run it using
cargo run --releaseand giving it some time to compile. - It should now be accessible at http://localhost:8080!
- Rust
- Axum
- SQLite (through rusqlite)
- Tailwind CSS & HTML/JSL/JS
This project is dual licensed under the MIT and APACHE 2.0 Licenses.
