Skip to content
This repository was archived by the owner on Nov 21, 2023. It is now read-only.

Commit 4509c96

Browse files
committed
add readme
1 parent ee93c77 commit 4509c96

File tree

3 files changed

+42
-0
lines changed

3 files changed

+42
-0
lines changed

CHANGELOG.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,8 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/).
66
This project does not adhere to Semantic Versioning.
77

88
## [Unreleased]
9+
### Docs
10+
* Add readme
911

1012
## [1.0.0] - 2023-07-27
1113
### Added

README.md

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
# Leetify Unranked Uploader
2+
A Chrome extension that automatically imports Unranked Matchmaking, Wingman, and CS2 Limited Test Matches to Leetify.
3+
[Find out more on the Leetify Blog!](http://blog.leetify.com/unranked-uploader)
4+
5+
[![Available in the Chrome Web Store](unpackaged-assets/available-in-the-chrome-web-store.png)](https://chrome.google.com/webstore/detail/leetify-unranked-uploader/nobacdlcblpahdbhfihcgkgpjhcmdhlo)
6+
7+
8+
## How it works
9+
This is a high-level overview so you can find your way around this codebase a bit easier:
10+
11+
A match sync is started [every 15 minutes](src/background-sync.ts), when you [visit Leetify or the Steam GCPD page for CS](src/sync-on-page-visit.ts), when you [click either the extension icon in the Chrome toolbar](src/action.ts), or the “Sync matches now” button on the extension options page.
12+
13+
The extension loads an [offscreen Leetify page in the background](src/offscreen/leetify-auth.ts) and retrieves your access token for Leetify.
14+
15+
Then [it requests the GCPD pages](src/gcpd.ts) for Scrimmage (which includes CS2LT matches) and [extracts matches from the response](src/offscreen/dom-parser.ts), one after another, until it doesn't find any more matches that still have a demo download link. It [sends the demo download links and the timestamps of each match to Leetify](src/leetify-match-uploader.ts) (via the access token from before), which saves all new matches as manual uploads. They'll show up on the [Data Sources](https://leetify.com/app/data-sources) page and will be queued; after a bit of waiting (usually no more than a few minutes), they'll also show up in your [Match History](https://leetify.com/app/matches) on Leetify (but not on the Dashboard or Profile).
16+
17+
After Scrimmage, the extension will again request GCPD pages for Wingman, filter out ranked or unranked matches ([if configured to do so](src/view/options.ts)), and send the found matches to Leetify.
18+
19+
You can independently enable or disable: the sync every 15 minutes, the sync on Leetify visits, and on GCPD visits.
20+
You can also independently enable or disable: unranked 5v5, ranked Wingman, and unranked Wingman.
21+
CS2LT matches look exactly like unranked 5v5 or unranked Wingman matches from CS:GO to the extension, and cannot be disabled independently.
22+
23+
If you're not logged in to either Steam or Leetify, the sync will fail. The extension icon in the Chrome toolbar will show a red `ERR` badge, and the status page will show an error message.
24+
25+
If you don't want to see a specific match on Leetify, you can delete it afterwards on the Data Sources page.
26+
Matches uploaded via the extension are considered manual uploads by Leetify, so they are only displayed to the user who uploaded them (i.e. the Leetify account logged in when the extension uploaded the match). You can share these matches with your friends by sending them the link.
27+
28+
29+
## Contributing/Support
30+
We're not accepting PRs at this time.
31+
If you need help, [please contact support](https://leetify.com/app/support).
32+
[Please post your feedback on Discord!](https://discord.gg/UNygC8BAVg)
33+
34+
35+
## Running locally
36+
1. Clone this repo.
37+
1. Head to [chrome://extensions](chrome://extensions).
38+
1. Enable developer mode, click `Load unpacked`, and select the directory you cloned to (the directory containing `manifest.json`).
39+
40+
See the [Chrome Extension docs](https://developer.chrome.com/docs/extensions/mv3) for info about Chrome's APIs.
4.5 KB
Loading

0 commit comments

Comments
 (0)