# Hextris

- Game: Hextris
- Authors (upstream README): Logan Engstrom, Garrett Finucane, Noah Moroze, Michael Yang. The in-game help screen credits Logan Engstrom and Garrett Finucane.
- Upstream: https://github.com/Hextris/hextris
- Upstream commit: `3f4847dc8fd7dab3d1c87e6324b9159d92fbd396` (2022-02-08)
- Licence: GNU General Public License, version 3 or (at your option) any later version (GPL-3.0-or-later). The upstream README says: "Copyright (C) 2018 Logan Engstrom. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version." The full licence text is in [LICENSE.md](LICENSE.md).
- This program is distributed WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for details.

## Source code of this modified version

This is a modified version of Hextris. Its complete corresponding source code is the files in this directory, exactly as they are served: plain HTML, CSS and JavaScript, with no build step. Any file can be downloaded from the same URL the game loads it from. The unmodified upstream source is at https://github.com/Hextris/hextris (commit above).

## Third-party components shipped in this directory

- jQuery 1.9.1 (`vendor/jquery.js`): MIT, (c) jQuery Foundation, see https://jquery.org/license
- Hammer.JS 1.1.2 (`vendor/hammer.min.js`): MIT, (c) 2014 Jorik Tangelder
- JavaScript Cookie 2.0.0-pre (`vendor/js.cookie.js`): MIT, (c) 2006, 2015 Klaus Hartl
- Keypress 1.0.8 (`vendor/keypress.min.js`): Apache License 2.0, (c) 2013 David Mauro
- JSONfn (`vendor/jsonfn.min.js`) and SweetAlert (`vendor/sweet-alert.min.js`): minified copies with no licence header. Both projects were published under the MIT licence.
- Font Awesome 4.1.0 (`style/fa/`): font under SIL OFL 1.1, CSS under MIT, by Dave Gandy
- Exo 2 fonts (`style/fonts/Exo2-*.otf`), by Natanael Gama: no licence file in upstream. Exo 2 is published under the SIL Open Font License 1.1.

## Changes

Modified by Invisible Network on 2026-10-17:

- Removed files the game does not need, or that only served removed features: `.github/FUNDING.yml`, `.gitignore`, `CNAME`, `README.md`, `a.js` (an empty file), `manifest.webmanifest` and the icons only it used (`images/icons/maskable-*`, `images/icons/transparent-*`, `images/icons/apple-touch.svg`), the share and app-store images (`images/android.png`, `images/appstore.svg`, `images/btn_facebook.svg`, `images/btn_twitter.svg`, `images/btn_share.svg`, `images/facebook-opengraph.png`, `images/twitter-opengraph.png`), the unused `images/icon_arrows.svg`, the social-share library (`vendor/rrssb.min.js`, `style/rrssb.css`), the unminified `style/fa/css/font-awesome.css` (the page loads the `.min.css`), and the unused fonts `style/fonts/Lovelo.otf`, `style/fonts/QuattrocentoSans-Regular.ttf` and `style/fonts/roboto.woff`.
- `index.html`: removed the web-app manifest link, the iOS Smart App Banner meta tag (`apple-itunes-app`), the Google Fonts stylesheet (the bundled Exo 2 fonts in `style/style.css` are used instead), the Google AdSense script, the inline Google Analytics script, the "SHARE MY SCORE!" Twitter button, the Facebook/Twitter share buttons and the App Store and Google Play badges on the game-over screen, the script that added a VK share button for Russian-language browsers, and the `rrssb` stylesheet and script. The `#buttonCont` element is kept, empty, because `js/main.js` uses its position to lay out the game-over screen. The Open Graph and Twitter-card `<meta>` tags are unchanged; browsers do not fetch anything for them.
- `js/main.js`: removed the request that sent each final score to `http://54.183.184.126/`, and the code that loaded a remote script from `http://hextris.io/a.js`. In the help text, removed the "Find Hextris on iOS & Android" app-store links. The author credit links and the "Hextris Website" link are kept and now carry `rel='noopener'`.
- `js/initialization.js`: removed the Google Analytics loader and its `ga()` calls.
- `js/view.js`: the pause screen no longer shows the "ad-free version" app-store and website links. All three platform variants of the pause message now show only "Game Paused".

No other file was changed.
