• Stars
    star
    100
  • Rank 340,703 (Top 7 %)
  • Language
    TypeScript
  • License
    MIT License
  • Created over 6 years ago
  • Updated over 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Desktop app built in Electron for tracking your competitive match history in Overwatch.

Competiwatch Desktop

Actions Status

Download the app - see what's new

This is a desktop app for Windows and macOS to track your competitive match history in Overwatch. I wanted to see my progress over time, more than what the game or sites like Overbuff provide. The app lets you see which heroes you're performing best on, which roles, whether you do better on weekday mornings or weekend evenings, whether joining voice chat helps your win rate, that sort of thing.

Screenshot of match history

Screenshot of log match form

Screenshot of trends page

Screenshot of settings page

Screenshot of accounts page

See the changelog for what has changed each version.

Features

  • Track matches across different roles, Battle.net accounts, and competitive seasons
  • Log details such as your new SR, which people you played with, whether you were in a 6-stack or solo queuing, what time you played, whether you got Play of the Game, which heroes you played, and what map you played
  • Export your match history as a CSV file (Comma-Separated Value)
  • Import your match history for past seasons
  • View charts summarizing your season
  • Log your placement matches and regular season games
  • See when you go on win streaks or loss streaks
  • Choose between a dark and light theme, or automatic based on time of day
  • Works in Windows and macOS

How to Install

For version 1.9 and later, download the Windows installer from the latest release. I've tested this on Windows 7 and Windows 10. Just run the installer and a Competiwatch shortcut will be added to your desktop.

You can also download the non-installer version and unzip the folder wherever you'd like. Run the app via the Competiwatch.exe executable in that folder.

You will probably be prompted by Windows that the app is unrecognized; the message in Windows 10 reads "Windows SmartScreen prevented an unrecognized app from starting." Sorry about that, it's being worked on. You can choose to run the app anyway (hit "more info" in Windows 10) and it shouldn't prompt you again for that version.

How to Uninstall

If you installed via the installer in Windows, just use the Control Panel and Add/Remove Programs to uninstall Competiwatch. The shortcut should be removed from your desktop.

If you did not use the installer, you can just delete the folder that has Competiwatch.exe in it, wherever you unzipped that folder.

How to Develop

This app was built with node version 12.4.0 and npm version 6.9.0. See the contributing guidelines.

npm install
npm run dev

The app should launch and also open in your browser. You can close the browser tab.

Log Files

While you run the app, Electron logs will end up in the following places:

  • on macOS: ~/Library/Logs/Competiwatch/log.log
  • on Windows: %USERPROFILE%\AppData\Roaming\Competiwatch\log.log
  • on Linux: ~/.config/Competiwatch/log.log

React logs will show in your terminal. You can run tail -f ~/Library/Logs/Competiwatch/log.log in macOS in a separate terminal from npm run dev to monitor Electron logs while the app is running.

How to Run Tests

npm install
npm test
npm run check-format

To see test coverage, run npm test -- --coverage. A coverage report will display in your terminal or you can open coverage/lcov-report/index.html in your browser.

Please run npm run fix-format on your files before opening a pull request. This will format your JavaScript, TypeScript, and JSON.

How to Build Executables

For macOS, from a Mac run:

# produce a new directory in dist/ that has a distributable .app file:
npm run electron-build-macos

For Windows, from a Windows machine run:

# produce dist/Competiwatch-win32-x64/ with .exe files:
npm run electron-build-windows

# generate an installer in dist/installers/:
npm run electron-build-windows-installer

More Repositories

1

hubnav

A Chrome extension for navigating github.com via keyboard shortcuts. Quickly access issues for multiple repos, as well as your org's pages.
JavaScript
108
star
2

sounds-of-github

This is a Chrome extension to play sound effects whenever you leave a reaction on GitHub.
JavaScript
74
star
3

soma-chrome

Chrome extension to listen to SomaFM web radio stations from your browser.
JavaScript
58
star
4

spotify-slack-status

Update your Slack status based on the track currently playing in Spotify.
Ruby
31
star
5

gulp-ruby-haml

Haml plugin for Gulp that uses the Ruby Haml gem.
JavaScript
27
star
6

spotty-features

Show trends about your music listening habits over time. Create playlists from a given seed and specified audio features.
JavaScript
24
star
7

huxleyfm

An unofficial desktop app for listening to SomaFM, built with Electron.
JavaScript
23
star
8

competiwatch

Web app to track and visualize your competitive match history in Overwatch.
Ruby
17
star
9

dotfiles

All my handy configuration files, including for stuff like Skyrim. ⚔️
Ruby
17
star
10

cheshire137

Config stuff for my profile
16
star
11

blicblock-js

A JavaScript implementation of the Blicblock game from The Sims 4.
CSS
15
star
12

gh-notifications-snoozer

Lists and filters and snoozing pull requests, oh my! This is an app for managing your notifications on GitHub by way of filtering issues and pull requests that are of interest to you.
JavaScript
15
star
13

chrome_youtube2spotify

A Chrome extension that lets you open YouTube tracks in Spotify. Lets you assemble playlists of all the YouTube music links it finds. Good for browsing music subreddits on Reddit.com.
JavaScript
15
star
14

logitech-g13-profiles

Profiles for my Logitech G13 controller for games
14
star
15

gogoamazonwish

A Go library to get items from an Amazon wishlist.
Go
13
star
16

gogostardewcal

Command-line tool to keep track of things you want to do each day in your Stardew Valley game.
Go
13
star
17

nash-grave-plot

Web app to view cemetery information for Nashville, Tennessee.
TypeScript
12
star
18

overwatch-team-comps

Plan your Overwatch team composition per map. Share your team comp with others.
Ruby
12
star
19

combinoctocat

darn u jeffrafter
Go
11
star
20

svtools

Work in progress Go library and command line interface for modifying Stardew Valley save files.
Go
11
star
21

weekly-rdio-playlister

Last.fm weekly charts -> Rdio playlists
CoffeeScript
11
star
22

hamburger-menu

A Chrome extension to replace the hamburger menu icon on various websites.
JavaScript
10
star
23

overwatch-counter-picker

"Should I go Hanzo? I should definitely go Hanzo." See which hero you should pick in Overwatch based on your team composition.
Python
9
star
24

hue-steamer

A web app to manipulate your Philips Hue lights.
JavaScript
9
star
25

nash-building-permits

Web app with an interactive map of the latest building permits issued in Nashville, Tennessee.
JavaScript
9
star
26

gen-svgo-pattern

Generate Go code to create SVG patterns from a given SVG image.
Go
9
star
27

seasonal-playlister

Make spring, summer, fall, and winter playlists from your listening history on Last.fm.
CoffeeScript
9
star
28

GithubFacebook

A Facebook application for tracking your Github activity.
Ruby
8
star
29

svg-scribbler

A simple ReactJS app that allows you to create SVGs.
JavaScript
8
star
30

colour_extractor

Chrome extension that pulls colors from the current web page and lets you make a ColourLovers.com palette from them.
JavaScript
8
star
31

huespotlight

A work in progress Go tool to work with your Philips Hue lights.
Go
7
star
32

go-brocade

Go tool for messing around with SVG generation
Go
7
star
33

playlisdit

Create Spotify playlists from songs, albums, artists, and other playlists posted on Reddit.
JavaScript
7
star
34

imdb_spotter

Chrome extension for generating a Spotify playlist of movie soundtracks.
JavaScript
7
star
35

chrome_turntable_spotter

A Chrome extension for creating a Spotify playlist based on a Turntable.fm room.
JavaScript
6
star
36

perpetuaspotify

Make a playlist inspired by your recent tracks. Listen to it. Repeat.
Ruby
6
star
37

xue-wenzi

Web app serving as a personal log for tracking words in Mandarin as a native English speaker.
JavaScript
6
star
38

entrobeep

Experimental command-line tool to generate sounds based on random input from your system, such as your mouse movement.
Go
6
star
39

Mahjong

Mahjong solitaire as a Rails app.
Ruby
5
star
40

steamfit

Correlate your Steam activity with your Fitbit activity.
JavaScript
5
star
41

page_colourizer

Chrome extension that grabs a random ColourLovers.com palette and applies it to the current page.
JavaScript
5
star
42

steam-screenshots-rss

A Sinatra app that produces an RSS feed of a user's Steam screenshots.
Ruby
5
star
43

palette-producer

Generate color palettes and individual colors that are pleasing to the eye.
JavaScript
5
star
44

cheevo-plotter

Compare your Steam achievements.
TypeScript
5
star
45

candyfair

Determine the fairest way to distribute your Halloween candy amongst picky eaters.
Ruby
5
star
46

nash-hot-searches

Web app to visualize top nashville.gov searches.
JavaScript
5
star
47

aggrecat

Build your own activity feed from different social media sites.
Ruby
5
star
48

instavibrant

Vibrant.js color extraction + your Instagram photos
JavaScript
4
star
49

pr-family-tree

List your GitHub pull requests and show the hierarchy of branches.
JavaScript
4
star
50

reddit-significant-other-notifier

A Chrome extension that notifies you of new Reddit posts by a particular user.
JavaScript
4
star
51

tumblr-themes

A collection of Tumblr themes I've made.
CSS
4
star
52

girtib-treller

Trawl through your Github commits.
JavaScript
4
star
53

working-dont-bother-me

Generate ambient, atmospheric, or peaceful Spotify playlists that you can work to.
Ruby
4
star
54

rsteamshot

A Ruby gem to get screenshots users have uploaded to Steam.
Ruby
3
star
55

sample-repo

A sample template repository.
3
star
56

fitswarm

Correlate Fitbit activity with Swarm gym visits.
Ruby
3
star
57

gh-starstruck

⭐️ Who has the most stars of them all?
Ruby
3
star
58

DnD4eMobile

Web app with local storage for keeping track of your Dungeons and Dragons fourth edition characters.
JavaScript
3
star
59

WebAppTestCaseGenerators

Web scraper written in Ruby for generating test cases for the QMZ web application testing model. Also another tool, again written in Ruby, for generating test cases for the Atomic Section Model web application testing model for a Ruby on Rails web application.
Ruby
3
star
60

ImplementsAttribute

A custom attribute to indicate a method is part of a class due to that class implementing an interface.
C#
2
star
61

old-school-projects

Old programming projects from my time in college.
Ruby
2
star
62

overfriendly

View Overwatch profiles and filter by role.
Ruby
2
star
63

lunreddit

View your Reddit posts and karma by year and subreddit.
JavaScript
2
star
64

cleverhubot

A Hubot for use in Slack. Includes some custom scripts.
CoffeeScript
2
star
65

Coach

Football video clips database project in Ruby on Rails.
Ruby
2
star
66

wp-delicious-recent-bookmarks

WordPress plugin for displaying recent Delicious bookmarks.
PHP
2
star
67

mass-effect-3-texmod-autoit-script

An AutoIt script for loading Mass Effect 3 with a bunch of texture files.
2
star
68

SnazzyCalculator

A GTK# GUI calculator written in C#. Supports exponentiation and parentheses, follows PEMDAS. Developed with MonoDevelop.
C#
2
star
69

evaluatjon.com

Evaluate any Jon you know. Rate him in any metric necessary.
Ruby
2
star
70

steam-palettes

Make color palettes from your Steam video game screenshots.
JavaScript
2
star
71

rapbot-battles

Your computer wants to rap at you.
JavaScript
2
star
72

see-spot-follow

A web app for following Spotify users.
JavaScript
2
star
73

gym-spends

Track how much each trip to the gym costs you.
JavaScript
2
star
74

blicblocktron

The game Blicblock from The Sims 4 as a standalone Electron app.
JavaScript
2
star
75

pocket-reddit

Chrome extension for linking to Reddit discussions from your Pocket queue.
JavaScript
2
star
76

sublime-string-wrapper

A Sublime Text 3 plugin for wrapping long Ruby strings.
Python
1
star
77

catlister

This uses the Instagram API to display photos of cats in a web app.
JavaScript
1
star
78

Links-List-with-Google-Plus-1-Buttons

WordPress plugin providing a shortcode that outputs a list of your links, optionally with a Google +1 button for each.
PHP
1
star
79

wp-lastfm-charts

A WordPress plugin that displays charts of Last.fm data for a particular user.
PHP
1
star
80

angular-module

An AngularJS plugin for connecting to a camfire signaling server
CoffeeScript
1
star
81

rowlands.io

Public rowlands.io infrastructure - ldap, mail, chat, etc
PHP
1
star
82

gohuedata

Command-line tools to log data over time from your Philips Hue system.
Go
1
star
83

colour_bootstrapper

Rails app for applying a palette from ColourLovers.com to Twitter Bootstrap.
Ruby
1
star
84

rvocalware

Command-line Ruby tool for Vocalware text-to-speech HTTP REST API
Ruby
1
star
85

Easy-Chart-Categories

Wordpress plugin making use of the Easy Chart Builder plugin to display charts of your categories and tags.
1
star
86

Grandfather-s-Clock-JS

An implementation of the solitaire variant Grandfather's Clock using JavaScript.
JavaScript
1
star