Adds general utility and quality of life to CodeHS. Currently the only features are saving sandbox links to collaborate on CodeHS easier, showing assignment answers in a codeblock or copying to clipboard, displaying the amount of time you spent in a sandbox. The cheat menu is built with stealth in mind. There is a self destruct button (middle click to activate) to destroy cheat menu and codeblock. This makes it harder to get caught by teachers.
- To run this script, you need to install Tampermonkey
- Install Tampermonkey here
- Click on the Tampermonkey extensions icon once installed and press "Dashboard"
- Click the + icon to the left of "Installed Userscripts"
- If you want to have updates to come with your install (recommended), replace the initial code with the following:
- If you don't want updates to come with your install, simiply replace the initial code with the script
- Go to CodeHS and make sure the script is running. You should see a red (1) icon on the Tampermonkey icon.
// ==UserScript==
// @name CodeHS+
// @namespace http://tampermonkey.net/
// @version 2.0
// @description Adds general utility and quality of life to CodeHS.
// @author Aureliustics
// @icon https://www.google.com/s2/favicons?sz=64&domain=codehs.com
// @match https://codehs.com/sandbox*
// @match https://codehs.com/student/*/section/*/assignment/*
// @grant GM_setValue
// @grant GM_getValue
// @grant GM_xmlhttpRequest
// @require https://raw.githubusercontent.com/Aureliustics/CodeHS-Plus/refs/heads/main/main.js
// ==/UserScript==
- Navigate to https://codehs.com/sandbox
- Create, rename, delete, or copy link for sandboxes you save.
- When doing an assignment, you should see a new button next to the CodeHS logo on the top left.
- It is called "Cheat Menu". Clicking on it will show you the features.
- When are you in a sandbox, it will display the amount of time you have spent inside of it in real time. This does save and sync across tabs.
- If either the Cheat menu or saved links UI is not showing up, refresh the page. This usually happens because Tampermonkey doesn't reinject upon subdomain changes.
CheatFlagType: {
CHEAT_TOOL_DETECTED: 6,
CHOICES: [[0, "None"], [1, "Not Enough Time Spent"], [2, "Insufficent History"], [3, "Copy and Pasted"], [4, "Similarity to Solution"], [5, "Similarity to Student"], [6, "Cheat Tool Detected"]],
COPY_AND_PASTED: 3,
INSUFFICENT_HISTORY: 2,
NONE: 0,
NOT_ENOUGH_TIME_SPENT: 1,
SIMILARITY_TO_SOLUTION: 4,
SIMILARITY_TO_STUDENT: 5,
STRINGS: {
0: "None",
1: "Not Enough Time Spent",
2: "Insufficent History",
3: "Copy and Pasted",
4: "Similarity to Solution",
5: "Similarity to Student",
6: "Cheat Tool Detected"
}
}