___________ .__ __________ __
\_ _____/_____ |__| ____ \______ \ _____/ |_
| __)_\____ \| |/ ___\ | | _// _ \ __\
| \ |_> > \ \___ | | ( <_> ) |
/_______ / __/|__|\___ > |______ /\____/|__|
\/|__| \/ \/
This app automates Epic Pass reservations for the 2020-2021 season. No changes to the code are required to get started. All user data is consumed from CLI prompts. Retry logic attempts to book full days until sucessful. It can be configured to send text messages with a Twilio account but not needed. There's a lot of goofy stuff built in this. Get ready to shred, Brah
.
These instructions will get you a copy of the project up and running on your local machine for development and testing purposes.
What things you need to install the software and how to install them
-
Node.js version >14 - install node or use a your package manager of choice (e.g. Homebrew, Chocolatey, etc).
-
NPM - Should come with any distribution of Node.js Get NPM
-
Git - If you don't know what this is, just download the project files as a zip... Install Git
-
Mac OS or Linux - Windows not currently supported. Docker support for Windows coming soon or build it yourself ;)
Follow these steps to setup this project
Clone the project
git clone git@github.com:jsullivan5/Epic-Pass-Reservation-Bot.git
or
Download the project as a zip file from this repository
Ensure you are using Node version 14
node -v
# output should be something like v14.15.4
Navigate to project folder
cd Epic-Pass-Reservation-Bot
Install project dependencies
npm install
Make sure CLI is executable
chmod +x epic_cli.sh
Run the CLI and get them rezzies!
./epic_cli.sh
Follow the prompts to input your username, password, desired resort, month and day.
Configuration for the app is in src/config.js
. You can change things like retry timeout or run headless. It should be good to go with the default though, Bruh.
- Sign up for a twilio account
- Rename file
.env.sample
to.env
- Add the necessary values to the
.env
file - Run the bot
This is a stupid and gratuitous feature and is not necessary for execution. You should receive an email from Epic regardless but it's pretty funny...
Code style is enforced with Eslint Standard
- Node.js
- Puppeteer.js - Browser automation
- Twilio - Text message client (Not Required)
This project is licensed under the MIT License - see the LICENSE.md file for details
- Hat tip to anyone whose code was used
- Inspiration
- etc