Instructions on how to make it work can be found here https://www.hackster.io/pulsartronic/programmable-wifi-digital-relay-switch-esp8266-app-code-6b5bf8
A single relay is used in that tutorial, yet it is possible to use as many as your hardware supports
An open source project is a forever Work In Progress. Feel free to be constructive.
Default configuration is in:
ESP8266Relays/ESP8266Relays.cpp
You should change it based on your hardware before uploading it to your board, you can later change most of values through its web configuration interface
Arduino core for ESP8266 WiFi chip
https://github.com/esp8266/Arduino
AES for microcontrollers (Arduino & Raspberry pi)
https://github.com/spaniakos/AES
JSON library for Arduino and embedded C++. Simple and efficient.
https://github.com/bblanchon/ArduinoJson
WebSocket Server and Client for Arduino based on RFC6455
https://github.com/Links2004/arduinoWebSockets
Base64 encoder/decoder for arduino
https://github.com/Densaugeo/base64_arduino