A collection of fun, funky, esoteric rafflers
PHP Java JavaScript Assembly Brainfuck C# Other
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
actionscript3-dennisdegreef
ansible-bauro
ansible-breun
apl-arian
awk-jaytaph
bash-jaytaph
bash-rjkip
bootsector-asm-jaytaph
brainfuck-kaeufl
c-erikaheidi
c-sjmulder
c-wjzijderveld
cljs-node-lumo-borkdude
clojure-borkdude
cmake-steazzalini
cobol-lucasvanlierop
cpp-markredeman
dlang-arothuis
dos-batch-winkbrace
drvanr-pony-rjkip
elisp-remyhonig
elixir-basbl
elixir-rjkip
elm-scato
erlang-mathiasverraes
fortran-drvanr
glitch-scato
go-rpkamp
go-wjzijderveld
groovy-breun
haproxy-bauro
haskell-sgoettschkes
haxe-scato
html-nickspelt
hy-rikva
java-annabaas
java-breun
java-jeroenvdgulik
java-spring-boot-enterprice-bkors
julia-duijf
kotlin-annabaas
kotlin-breun
lambdalicious-mathiasverraes
lolcode-rdohms
lua-drvanr
lua-rdohms
mysql-steazzalini
netcore2-jeroenheijmans
nim-rjkip
node-nickspelt
nodejs-steazzalini
ocaml-steazzalini
pascal-arnovr
perl-snoek09
php-array-insanity-ramondelafuente
php-legacy-jaytaph
php-rosstuck
php7-extension-jaytaph
php7-wyrihaximus
powershell-jeroenheijmans
prolog-hmvp
python-breun
python-objective-stelian
python-stelian
python3-kilte
r-daniellemccool
rakudo-perl6-jkva
rexx-jkva
ruby-stelian
rust-aochagavia
rust-frankdejonge
rust-rjkip
saffire-jaytaph
scala-akka-michielrook
scala-shawnmccool
scheme-turanct
squirrel-arnovr
whitespace-mattp
zsh-basbl
.gitignore
.travis.yml
Dockerfile
Makefile
README.md
build.sh
example_names
raffle.sh
test.sh

README.md

Build Status

rafflers

A collection of fun, funky, esoteric rafflers

Can I submit one?

Yes! Everyone! Even if you're not a member of DomCode. Even if it's already implemented in a language. Be creative. Have fun!

How does it work?

It's easy! Just create a directory in the top level for your raffler.

Each raffler should accept a filename as the first CLI argument. The file will contain a line-delimited list of names, from which the raffler should echo a single random name from. See the example_names file for an example of the format. The file may contain a trailing newline!

You can write it in any language. The weirder the better. If you like insane over engineering, do so! If you like to do it the way you've been telling your junior colleagues not to, go ahead!

Getting Merged Quickly

  • Please supply a Dockerfile so we do not have to install all these weird stuff on our systems directly :-P
  • Wacky GIFs aren't required in your PR but are encouraged (see YoloSR-2).

Dockerized rafflers

Note that Dockerize rafflers receive /var/names.txt via the raffle.sh script

Dockerfile example:

# Choose a base image you like
FROM java:jdk-alpine

# Copy you raffler code to the image
RUN mkdir -p /var/app
COPY src /var/app
WORKDIR /var/app

# Compile (if needed)
RUN javac -g org/domcode/talk/raffler/annaffler/application/Annaffler.java

# Run raffler
CMD ["java", "org/domcode/talk/raffler/annaffler/application/Annaffler", "/var/names.txt"]

Perform a raffle using a random Dockerized raffler

$ # make rebuild
$ make raffle NAMES=/tmp/your-names-file

Test that Dockerized rafflers work

$ make test                         # Tests all rafflers
$ make test RAFFLER=remyhonig-elisp # Tests only the raffler in ./remyhonig-elisp