All Projects → jolicode → Secret Santa

jolicode / Secret Santa

Licence: mit
🎅 The code behind Secret Santa, the holiday bot for Slack / Discord / Zoom

Projects that are alternatives of or similar to Secret Santa

Fantasy football chat bot
GroupMe Discord and Slack Chatbot for ESPN Fantasy Football
Stars: ✭ 166 (-2.35%)
Mutual labels:  discord-bot, slack-bot, discord, slack
Amongcord
Among Us Discord Bot | Discord bot for controlling voice channels during Among Us matches
Stars: ✭ 144 (-15.29%)
Mutual labels:  discord-bot, discord
Tle
🤖 Discord Bot for Competitive Programming
Stars: ✭ 168 (-1.18%)
Mutual labels:  discord-bot, discord
Vaebot
Discord bot for everything from moderation to music.
Stars: ✭ 144 (-15.29%)
Mutual labels:  discord-bot, discord
Lenoxbot
🖥️ LenoxBot is a Discord bot that offers many cool new features to your Discord server!
Stars: ✭ 163 (-4.12%)
Mutual labels:  discord-bot, discord
Impostor
Automatic Discord muting for Among Us! No installs necessary, just enter the code, join the voice channel, and you're off!
Stars: ✭ 140 (-17.65%)
Mutual labels:  discord-bot, discord
Discord Bot List
Just another botlist for discord
Stars: ✭ 143 (-15.88%)
Mutual labels:  discord-bot, discord
Octave
Discord bot written in Java and Kotlin using JDA.
Stars: ✭ 156 (-8.24%)
Mutual labels:  discord-bot, discord
Clog
Package clog is a channel-based logging package for Go
Stars: ✭ 151 (-11.18%)
Mutual labels:  discord, slack
Slick
Slick, a Slack bot in Go
Stars: ✭ 150 (-11.76%)
Mutual labels:  slack-bot, slack
Poketwo
A Discord bot.
Stars: ✭ 139 (-18.24%)
Mutual labels:  discord-bot, discord
Carl Bot
Bot for discord using discord.py (outdated code)
Stars: ✭ 160 (-5.88%)
Mutual labels:  discord-bot, discord
Lita Slack
A Slack adapter for Lita.
Stars: ✭ 138 (-18.82%)
Mutual labels:  slack-bot, slack
Mirai
The core for Mirai Bot v4 [Deprecated]
Stars: ✭ 142 (-16.47%)
Mutual labels:  discord-bot, discord
Tradingview Webhook Bot
⚙️ Send TradingView alerts to Telegram, Discord, Slack, Twitter and/or Email.
Stars: ✭ 135 (-20.59%)
Mutual labels:  discord, slack
Norrisbot
a Slack bot that kicks asses (roundhouse-kicks to be accurate...)
Stars: ✭ 134 (-21.18%)
Mutual labels:  slack-bot, slack
Pokeball Selfbot Poketwo Automation
This specific selfbot was designed to automatically catch pokemon spawned on Discord by Poketwo bot. It also offers other utility functions to automate features like trading, releasing, id search, etc. Currently the autocatcher is powered by AI making it possible to autocatch pokemons on multiple bots like PokeTwo, PokeRealm, etc.
Stars: ✭ 131 (-22.94%)
Mutual labels:  discord-bot, discord
Calypsobot
A fully customizable bot built with discord.js
Stars: ✭ 131 (-22.94%)
Mutual labels:  discord-bot, discord
Discord Musicbot
Very simple discord music bot with the discord.js with Song Name playing. It can able to play music with the song name
Stars: ✭ 148 (-12.94%)
Mutual labels:  discord-bot, discord
Emberclear
Encrypted Chat. No History. No Logs.
Stars: ✭ 157 (-7.65%)
Mutual labels:  discord, slack

Secret Santa app

Just go to https://secret-santa.team/ and have fun.

Code source is under MIT License.

Running the application locally

Requirements

A Docker environment is provided and requires you to have these tools available:

Install and run pipenv to install the required tools:

pipenv --three install

You can configure your current shell to be able to use Invoke commands directly (without having to prefix everything by pipenv run)

pipenv shell

Optionally, in order to improve your usage of invoke scripts, you can install a console autocompletion script.

If you are using bash:

invoke --print-completion-script=bash > /etc/bash_completion.d/invoke

If you are using something else, please refer to your shell documentation. But you may need to use invoke --print-completion-script=zsh > /to/somewhere

Invoke supports completion for bash, zsh & fish shells.

Docker environment

The Docker infrastructure provides a web stack with:

  • NGINX
  • Redis
  • PHP 7.4
  • Traefik
  • A container with some tooling:
    • Composer
    • Node
    • Yarn / NPM

Domain configuration (first time only)

Before running the application for the first time, ensure your domain names point the IP of your Docker daemon by editing your /etc/hosts file.

This IP is probably 127.0.0.1 unless you run Docker in a special VM (docker-machine, dinghy, etc).

Note: The router binds port 80 and 443, that's why it will work with 127.0.0.1

echo '127.0.0.1 secret-santa.test' | sudo tee -a /etc/hosts

Using dinghy? Run dinghy ip to get the IP of the VM.

Env vars configuration (first time only)

We rely on some env variables to configure how to communicate with various API's and Redis.

Copy the content of the file .env into a new .env.local (which will be ignored by git) and fill the missing vars with correct values.

Starting the stack

Launch the stack by running this command:

inv start

Note: the first start of the stack should take a few minutes.

The site is now accessible at https://secret-santa.test (you may need to accept self-signed SSL certificate).

Builder

Having some composer, yarn or another modifications to make on the project? Start the builder which will give you access to a container with all these tools available:

inv builder

Note: You can add as many Invoke command as you want. But the command should be ran by the builder, don't forget to add @with_builder annotation to the function.

Tests

Tests are made with PHPUnit.
To run unit tests, launch this command:

inv tests

Other tasks

Checkout inv -l to have the list of available Invoke tasks.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].