![]() This is only initialized once and is read only after the fact so it should be fine 2. Adding a Claim struct that all JWT's will use for their structure. A helpful .new() function is provided 3. AuthReason::ServerIssue(String) is a now a thing Should help the auth module be more clear in what's going on 4. fn get_jwt_json -> renamed from get_jwt to indicate we're getting something from json payload. Nothing more 5. async fn valid_jwt: Attempts to decode the given token, if successful it then looks if that user has given us an active jwt budget-session-key if (returns boolean) 6. wall_entry now returns an AuthReason without the sql wrapping, since thats db-lib's problem anyway Also we're collecting all data upfront then verifying it as we go. 7. async fn login_get_jwt::ROUTE On login_auth here we simply create a JWT for the user, store it in cache, then give it back to the user to use. Tokens take a week to expire 8. Removed busted tests that weren't doing anything useful for the time being |
||
---|---|---|
chan-like | ||
docs | ||
freechat-client | ||
invites-manager | ||
misc | ||
rtc-server | ||
server-api | ||
.gitignore | ||
.gitlab-ci.yml | ||
contributing.md | ||
LICENSE.txt | ||
readme.md |
FreeChat
What this is
A FOSS chatting platform that brings in more modern features that a lot of people have come to expect.
Why not just IRC/Discord/Slack/Mumble etc?
A tonne of IRC channel are basically dead since so many have moved to Discord/Slack. Why? Because those platforms have features that IRC just doesn't have. A lot of people have deemed those features worth the switch.
Discord/Slack are proprietary spyware with no real alternative. The quality of the service is high enough for people to ignore the datamining, it's time a proper client came by.
Mumble could work but has an awful reputation amongst regular non-technical users.
So it's a Discord/Slack clone?
Chat history is limited similar to nearly every chan/booru. This can be turned off to preserve all chat history.
The biggest difference is the lack of data collection; servers collect the following data:
-
User id - generated by the server
-
User password - generated by the server
-
User name - provided by user
-
User chat - How much depends on how the server was configured or if a message was pinned to NOT be deleted.
-
Users Status - user is online/offline: HOWEVER this is controlled by the user.
-
User permissions - To discern admins from less privileged users.
Working Status
Is this finished or almost finished?
Short: The API has basic functionality for chatting but still requires more endpoints to be fully featured. So yes the API at least is in a MVP state. But everything else is either in infancy or not done.
Long: No. A basic client is still underway and the chat API is missing a metric tonne of features. However The state of the chat API is such that it shouldn't be hard to implement many of the desired endpoints.
How to help - if you want to
Check the contributing guide