O Santulator ajuda você a realizar o sorteio do Papai Noel Secreto de maneira simples e flexível. Você pode inserir os nomes das pessoas participantes do sorteio e o sistema escolherá aleatoriamente quem dará presentes para quem. Se você quiser evitar comparações inequívocas, por exemplo, para garantir que as pessoas não tenham seus próprios parceiros no sorteio, você pode adicionar exclusões. Quando o sorteio for realizado, será gerado um PDF para cada pessoa informando para quem comprar o presente. Se quiser evitar ver acidentalmente todos os resultados, você pode adicionar uma senha secreta aos arquivos PDF gerados.
Santulator está disponível gratuitamente na página de download do site do projeto. Você pode encontrar um tutorial completo explicando como usar o sistema na página de ajuda.
Você precisará do JDK 17. A versão usada para construir as versões do Santulator é o OpenJDK 17 com Hotspot, da Adoptium.
Com seu JDK instalado você pode clonar este repositório e executar o seguinte para iniciar o Santulator:
./gradlew :gui:run
Você pode construir todo o sistema com o seguinte comando:
./gradlew clean build
Por padrão, o teste da GUI é executado como parte da construção padrão do Gradle, no modo headless. Se você quiser executar o teste da GUI em um modo sem interface para poder ver o que está acontecendo, use o seguinte comando:
./gradlew :gui:test --tests io.github.santulator.gui.main.GuiTest --rerun-tasks -PnoHeadless
No artigo Aplicativos Java instaláveis com jpackage você pode ler sobre como os pacotes instaláveis para Mac, Windows e Linux são criados e como você pode fazer isso em seu próprio projeto. Esses instaladores independentes permitem que os usuários configurem o Santulator em seus computadores sem a necessidade de instalar primeiro o Java.
Você também pode encontrar instruções passo a passo completas para criar o pacote instalável Santulator em PACKAGING.md.
No King Tech Blog você pode ler mais sobre o projeto em Open Source & Secret Santa with Santulator. O artigo inclui informações sobre como JavaFX CSS é usado para dar ao Santulator um esquema de cores festivo.