GithubHelp home page GithubHelp logo

frcbot-2.0's Introduction

FRCBot 2.0

Build Format

A complete rewrite of FRCBot, written in TypeScript using Bolt.

This will eventually replace the current FRCBot, and Discord support will be added. Yay!

Contributions welcome. Shoot me an email at [email protected] if you're interested in helping out.

Getting set up for development

This is not a perfected process, but here goes:

  1. Clone the repository with git clone https://github.com/deniosoftware/frcbot-2.0
  2. Install Yarn, Docker and Docker Compose
  3. In the frcbot-2.0/ folder, run yarn install, then docker-compose up
  4. Now FRCBot is available at localhost:3000. An ngrok tunnel will be automatically setup, and you can view the dashboard at localhost:3001.
  5. FRCBot should now automatically sync your local changes into the Docker container.

Config

Create a .env file to hold various config vars. This file follows Docker Compose's environment file specification. Here's an example:

SLACK_SIGNING_SECRET=super_secret_code
SLACK_CLIENT_ID=not_so_secret_code
SLACK_CLIENT_SECRET=pretty_secret_code
SLACK_STATE_SECRET=random_string_for_security
TBA_API_KEY=moderately_secret_code
TBA_WEBHOOK_SECRET=
DISCORD_CLIENT_ID=
DISCORD_TOKEN=

To configure the ngrok tunnel (e.g. get a custom subdomain), create a .ngrok.env file with config like so:

Check out all the possible ngrok config vars here.

NGROK_AUTH=your_auth_key

# Requires paid account ๐Ÿ”ฝ
NGROK_SUBDOMAIN=subdomain

Ports

URL Description
http://localhost:3000 Your FRCBot instance
http://localhost:3001 The ngrok dashboard
http://localhost:3002 The Datastore viewer (powered by dsui)
http://localhost:3003 The raw Datastore API is exposed here. [Reference]

frcbot-2.0's People

Contributors

cjdenio avatar dependabot[bot] avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.