Skip to content

odota/web

Folders and files

NameName
Last commit message
Last commit date

Latest commit

04ba37b · Feb 27, 2023
Apr 29, 2021
May 10, 2021
Jan 24, 2023
Jan 24, 2023
Jun 21, 2022
Jun 6, 2016
Dec 7, 2022
Sep 12, 2018
Oct 12, 2022
Sep 26, 2016
Dec 23, 2019
Jun 22, 2022
Apr 6, 2020
Jan 13, 2022
Aug 10, 2020
Jan 19, 2023
Sep 27, 2018
Jan 28, 2017
Jul 4, 2019
Mar 19, 2022
Feb 27, 2023
Feb 27, 2023
Jan 12, 2022

Repository files navigation

opendota-web

Help Contribute to Open Source

OpenDota Web UI: A web interface for viewing Dota 2 data. This utilizes the OpenDota API, which is also an open source project.

Quickstart

  • Clone the repo using git clone git@github.com:odota/web.git

With Docker

$ docker-compose up
  • Visit port 3000 on your development machine.

Without Docker

Contributing

  • Make some changes.
  • npm run lint to check your code for linting errors.
  • npm test to check all app routes for uncaught JavaScript errors.
  • Submit a pull request. Wait for review and merge.
  • Congratulations! You're a contributor.

Configuration

  • You can set the following environment variables:
    • PORT: Changes the port that the development server runs on
    • REACT_APP_API_HOST: Changes the API that the UI requests data from (default https://api.opendota.com)

Tech Stack

  • View: React
  • State Management: Redux
  • CSS: styled-components

Workflow

  • If you're interested in contributing regularly, let us know and we'll add you to the organization.
  • The master branch is automatically deployed to the stage environment.
  • We'll periodically ship releases to production: https://www.opendota.com

Notes

  • You don't have to set up the entire stack (databases, etc.), or worry about getting starter data, since the UI points to the production API.
  • Use the configuration to point to your own API (if you are working on a new feature and want to start building the UI before it's deployed to production).
  • Discord: https://discord.gg/opendota
    • Strongly recommended for active developers! We move fast and it's helpful to be up to speed with everything that's happening.

Resources

Testing

BrowserStack have been kind enough to provide us with a free account for Live and Automate. We will be using Automate in the future to run automatic end-to-end testing.

BrowserStack is a cloud-based cross-browser testing tool that enables developers to test their websites across various browsers on different operating systems and mobile devices, without requiring users to install virtual machines, devices or emulators.