freechat/contributing.md
shockrah ba13de2064 More background information regarding what can use the help or not
* Better wording in readme about chat history
2020-12-12 16:36:40 -08:00

1.4 KiB

Contributing to the project

  • 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.

  • Languages - Rust/Python/Bash/Javascript/HTML/CSS

The API service is written in rust. Uses mysql-async wrapped in a small library for abstracting away database code from the "business logic"

  • Scripting

Build scripts are literally just Bash scripts so if a script looks like it can be used to automate some boring process then that could be a great way to contribute.

  • Electron Client

The electron client is built with NodeJS + Bootstrap(nothing else). Adding libraries to the client requires very good reason IMO. I know Electron is a whale so I want to do everything in my power to make sure it doesn't weigh much more.