euchre-live

Euchre web-app for the socially distant family
git clone git://git.alexkarle.com/euchre-live.git
Log | Files | Refs | README | LICENSE

README.md (2027B) [raw]


      1 euchre.live
      2 ===========
      3 
      4 [![builds.sr.ht status](https://builds.sr.ht/~akarle/euchre-live/commits/.build.yml.svg)](https://builds.sr.ht/~akarle/euchre-live/commits/.build.yml?)
      5 
      6 **Deprecation Notice:** As of 2024-03, this project is no longer maintained.
      7 I'm happy to look over any patches, but haven't put any effort into keeping
      8 up with dependency upgrades, testing newer OS versions for deployment, etc.
      9 
     10 About
     11 -----
     12 For my family <3
     13 
     14 Euchre is a card game. It is our "family game", frequently played at family
     15 reunions due to its ability to both engage players and be a game you can sit
     16 back and chat over without thinking too much.
     17 
     18 With the COVID-19 social-distancing, we're suddenly unable to play, so we
     19 started to look at options to play online.
     20 
     21 Disappointed with the state of the online options, we decided to make our own.
     22 
     23 Installation
     24 ------------
     25 
     26 ### Prerequisites
     27 
     28 * Perl (tested on 5.30, but should be pretty portable)
     29 * Node (tested on 12.15.0, no idea how portable)
     30 * npm
     31 * [cpanminus](https://metacpan.org/pod/App::cpanminus)
     32   - Alternatively, on OpenBSD 6.9, the packaged `p5-Mojolicious` and
     33     `p5-Class-Tiny` packages are sufficient to run the server!
     34 
     35 ### Getting the Dependencies
     36 
     37 On Linux:
     38 
     39 ```sh
     40 $ npm i
     41 $ cpanm --installdeps .
     42 ```
     43 
     44 On OpenBSD (6.9):
     45 
     46 ```sh
     47 $ doas pkg_add node p5-Mojolicious p5-Class-Tiny
     48 $ npm i
     49 ```
     50 
     51 ### Building the Release
     52 
     53 The release version is a subset of the repo, built into a separate directory
     54 for easier deployment.
     55 
     56 ```sh
     57 $ ./bin/build.sh
     58 ```
     59 
     60 ### Running the Server
     61 
     62 ```sh
     63 $ ./build/gloat.pl daemon
     64 ```
     65 
     66 To actually daemonize (in a production environment), run with `-m production`.
     67 This will log to /var/log/gloat, which should exist and be writable to the
     68 server.
     69 
     70 ```sh
     71 $ ./build/gloat.pl daemon -m production
     72 ```
     73 
     74 Hacking
     75 -------
     76 For fast iteration on the code, we have a `npm` script to watch the JS files with
     77 `esbuild` and rebuild the bundle on the fly:
     78 
     79 ```sh
     80 $ ./gloat.pl daemon # fire up backend first
     81 $ npm run dev
     82 ```
     83 
     84 License
     85 -------
     86 [MIT](./LICENSE)