2.6 KiB
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?
Not really, at least for now chat history is limited kinda like basically 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
Writing chat clients
I know not everyone wants an electron based client because it's naturally really bloated. But the normans want something that just werks so electron is a good way of doing that.
The API is dead simple however so it shouldn't be too bad to write a simple client that sends a couple of requests every so often.
If you choose to write a client and want people to know about it I can include a link to the project here/on the wiki.
Testing
Currently API testing is done with a phony client written in python(client-tests/client.py) and some rust tests.
Anything from a simple GET /some-route
+ response check to a testing pipeline thing is appreciated.
Since testing doesn't really affect users as long as the test is correct and covers new ground it's welcome.