/blob-game

A skribbl.io alternative - Play at https://scribblers.fly.dev

Primary LanguageGoBSD 3-Clause "New" or "Revised" LicenseBSD-3-Clause

Scribble.rs

Scribble.rs is an alternative to the web-based drawing game skribbl.io. My main problems with skribbl.io were the ads and the fact that a disconnect would cause you to lose your points. On top of that, the automatic word choice was quite annoying and caused some frustration.

The site will not display any ads or share any data with third parties.

Play now

Feel free to play on scribblers.fly.dev. Note that the instance may not respond instantly.

Building / Running

First you'll need to install the Go compiler by followng the instructions at https://go.dev/doc/install. If you are using a package manager for this, that's fine too.

Next you'll have to download the code via:

git clone https://github.com/scribble-rs/scribble.rs.git
cd scribble.rs

Lastly to build the executable, run the following:

go build -./cmd/scribblers .

This will produce a portable binary called scribblers. The binary doesn't have any dependencies and should run on every system as long as it has the same architecture and OS family as the system it was compiled on.

The default port will be 8080. The parameter portHTTP allows changing the port though.

You should be able to build the binary on any system that go supports as a compilation target.

This application requires go version 1.20 or higher.

Pre-compiled binaries

In the Releases section you can find the latest stable release.

Alternatively each commit uploads artifacts which will be available for a certain time.

Docker

Alternatively there's a docker container:

docker pull biosmarcel/scribble.rs

The docker container is built from the master branch on every push, so it should always be up-to-date.

Changing default port

The default port is 8080. To override it, run:

docker run -p <port-number>:<port-number> biosmarcel/scribble.rs --portHTTP=<port-number>

nginx

Since Scribble.rs uses WebSockets, when running it behind an nginx reverse proxy, you have to configure nginx to support that. You will find an example configuration on the related Wiki page.

Other reverse proxies may require similar configuration. If you are using a well known reverse proxy, you are free to contribute a configuration to the wiki.

Contributing

There are many ways you can contribute:

  • Update / Add documentation in the wiki of the GitHub repository
  • Extend this README
  • Create feature requests and bug reports
  • Solve issues by creating Pull Requests
  • Tell your friends about the project

Donating

If you can't or don't want to contribute in any of the ways listed above, you can always donate something to the project.

If there's a steady income stream I'd spend it on infrastructure and a domain ;)

Credits

These resources are by people unrelated to the project, whilst not every of these resources requires attribution as per license, we'll do it either way ;)

If you happen to find a mistake here, please make a PR. If you are one of the authors and feel like we've wronged you, please reach out.

Some of these were slightly altered if the license allowed it. Treat each of the files in this repository with the same license terms as the original file.