How it works:
- Python queries the Twitch API and YouTube API to gather all the information it needs every hour:
- Twitch: Followers, Icon, Views, Videos
- YouTube: Subs, Icon, Uploads and Views
- Another Python scrips queries the Twitch API for currently live streamers, every 10 minutes.
- It then:
- Verifies the data
- Resizes and compresses icons, for low bandwidth and quick viewing of the lists
- Calculates variables
- Orders results
- Verifies results
- Parses them to JSON
- FTP's JSON to the server
- Backs up data daily (Onsite and offsite)
- When you visit the page, Javascipt executes in your browser and:
- Tabulates JSON data created by Python, generates hyperlinks and adds to the table
- Tablesorter 2.0 (JS) and some custom plugins allow your browser to sort and filter information, as well as page through it
- The Twitch page also reads the currently live list, and displays them on screen, in a way that's visually recognisable. When clicked, it takes you to their Twitch streams.
- The previews for the streams are generated and updated by Twitch
I manually verify and accept creators into the list, to prevent people just adding themselves and not creating content, or mass producing stolen or low-effort content, drowning out passionate creators.
The ZA Twitch and YouTube Collective pages use the following libraries:
The entire website was coded and styled by me and shall remain that way :)
(The graph at the top should update every time the website/backend's files change)