Secret Santa Matcher Application
- Python 62.1%
- Dockerfile 21.4%
- Nix 16.5%
| .devcontainer | Minor cleanup | |
| .github/workflows | string instead of number | |
| stubs | Check types with mypy (sorta) | |
| .gitignore | Allow text-based output | |
| devenv.lock | Turn off manylinux | |
| devenv.nix | Turn off manylinux | |
| devenv.yaml | Turn off manylinux | |
| LICENSE | Add a license | |
| main.py | Allow text-based output | |
| poetry.lock | Bump deps | |
| pyproject.toml | Bump deps | |
| README.md | Update readme | |
| requirements.txt | Bump deps | |
Secret Santa
An app to text people with secret santa stuff.
Assumptions
- That there is a solution (will keep going until it finds one)
- You have a first and last name
- The input data is of good quality
- The Phone Numbers are from the
USRegion - That you're me and are using the data I put in
Rules
There are a few rules in the engine:
- You don't get your partner (users Partner ID)
- You don't end up with a cycle (A has B and B has A)
- You don't get yourself
user-list.csv format
| Field Name | Description | Type |
|---|---|---|
ID |
Sequential ID | integer |
Name |
The person's name | string |
Phone |
The person's phone number | string |
Relation ID |
A reference to the person's partner | null or integer |
Environment Variables
| Name | Description |
|---|---|
TWILIO_ACCOUNT_SID |
The Account SID for your Paid Twilio.com account |
TWILIO_AUTH_TOKEN |
The Production Auth Token for your Paid Twilio.com account |
TWILIO_FROM |
The from number, that you own in Twilio, in e164 format |
TWILIO_ENABLE |
If twilio should be enabled (will text output) true or 1 to enable |