Unleash the hidden powers (features) of SLS's ACP HTML5 Interactives
no coding skills or external dependencies needed
How to use this page
1. Choose a feature from the jump menu.
2. Copy the prompt into ACP, modify it, and generate your SLS interactive.
3. Reveal JS code only when you need to inspect or adapt it.
Updated Feb 2026
1. Speech Recognition
What it does: Allows students to speak their answers instead of typing. Great for oral assessments, language learning, pronunciation practice, and supporting students with typing difficulties. This works on Chrome-based browsers on laptops and Chromebooks, but not on iPad.
Prompt to Authoring Copilot:
"Create a simple speech recognition feature where students can click a button to speak their answer, and the spoken text appears in a text area. Use the Web Speech API."
What it does: Students can save their work (essays, quiz answers, data) as files on their device and download it as TXT, CSV, or JSON. Perfect for portfolio building, submitting assignments, or keeping records without needing cloud storage.
Prompt to Authoring Copilot:
"Create a function that allows students to download their essay as a TXT file. Include a download button."
What it does: Provides a digital whiteboard where students can draw diagrams, annotate maps, sketch concepts, or create visual responses. Excellent for math problems, geography tasks, or art activities.
Prompt to Authoring Copilot:
"Create a simple drawing board using HTML canvas where students can draw freehand with their mouse. Include clear canvas and color picker functionality."
What it does: Turns any part of the webpage into an editable text area. Students can fill in blanks, edit text directly on worksheets, or complete cloze activities without traditional form boxes.
Prompt to Authoring Copilot:
"Create an interactive worksheet where students can fill in blanks by typing directly into the page. Make specific sections editable and allow downloading the completed worksheet as a text file."
Code Snippet:
<div contenteditable="true" class="editable-section">
Type your answer here...
</div>
<script>
function downloadEditedContent() {
const content = document.querySelector('.editable-section').innerText;
downloadFile(content, 'worksheet.txt', 'text/plain');
}
</script>
5. Save and Download as PDF
What it does: Students can save the webpage as a PDF document for printing or submission. With Save and Download as PDF, students can download their drawing from the Canvas Drawing Board or edited text as a PDF into their laptop, Chromebook, or iPad. Perfect for assessment records, parent conferences, or student portfolios.
Prompt to Authoring Copilot:
"Create a 'Save as PDF' button that opens the browser's print dialog, allowing users to save the current page as a PDF. Include print-specific CSS styling."
Code Snippet:
function printToPDF() {
window.print();
}
// Add print-specific styles in CSS
// @media print {
// .no-print { display: none; }
// body { font-size: 12pt; }
// }
6. Confetti/Celebrations
What it does: Creates visual celebrations (like confetti animations) when students achieve goals or complete tasks. Boosts motivation and makes learning more engaging and rewarding.
Prompt to Authoring Copilot:
"Create a confetti celebration effect using pure CSS and JavaScript that triggers when a student completes a quiz with 100% score. No external libraries."
What it does: Displays a countdown timer for timed activities. Perfect for quick exercises, speed drills, exam simulations, or time management practice.
Prompt to Authoring Copilot:
"Create a 10-second countdown timer that displays the remaining seconds and alerts the student when time is up."
Code Snippet:
let timeLeft = 10; // 10 seconds
const timer = setInterval(() => {
document.getElementById('timer').innerText = `${timeLeft} seconds`;
if (--timeLeft < 0) {
clearInterval(timer);
alert('Time is up!');
}
}, 1000);
8. Dark Mode Toggle
What it does: Lets students switch between light and dark colour themes. Reduces eye strain, accommodates different lighting conditions, and provides accessibility options.
Prompt to Authoring Copilot:
"Create a dark mode toggle button that switches between light and dark themes using CSS classes."
What it does: Enables students to use their device camera to take photos for assignments. Useful for science observations, art projects, evidence collection, or documenting experiments. This can then later be downloaded as a PDF.
Prompt to Authoring Copilot:
"Create a feature that accesses the device camera and displays the video stream. Include a button to capture a still photo from the stream and display it."
What it does: Students can record their screen and audio as a video. Great for explaining their thought process, creating tutorials, recording presentations, or demonstrating digital work. Screen recordings can only be saved in WebM format. This works on laptops and Chromebooks in modern browsers such as Chrome, Edge, and Firefox, but not on iPad.
Prompt to Authoring Copilot:
"Create a screen recording feature where students can record their screen and save the recording in WebM format only. Include start/stop recording buttons."
Code Snippet:
let recorder;
let chunks = [];
async function startRecording() {
const stream = await navigator.mediaDevices.getDisplayMedia({
video: true,
audio: true
});
recorder = new MediaRecorder(stream);
recorder.ondataavailable = (e) => chunks.push(e.data);
recorder.onstop = () => {
const blob = new Blob(chunks, { type: 'video/webm' });
const url = URL.createObjectURL(blob);
const a = document.createElement('a');
a.href = url;
a.download = 'recording.webm';
a.click();
chunks = [];
};
recorder.start();
}
function stopRecording() {
recorder.stop();
}
11. Download Screen Recording
What it does: Allows students to download the recorded screen video by clicking a download button. The download format is WebM only. This works on laptops and Chromebooks in modern browsers such as Chrome, Edge, and Firefox, but not on iPad.
Prompt to Authoring Copilot:
"Create a download button that lets students download their existing screen recording as a WebM file when clicked."
Code Snippet:
let recordedBlob = null;
function onRecordingReady(chunks) {
recordedBlob = new Blob(chunks, { type: 'video/webm' });
}
function downloadScreenRecording() {
if (!recordedBlob) {
alert('No recording available yet.');
return;
}
const url = URL.createObjectURL(recordedBlob);
const link = document.createElement('a');
link.href = url;
link.download = 'screen-recording.webm';
link.click();
URL.revokeObjectURL(url);
}
12. Simple Charts
What it does: Automatically generates bar charts and graphs from data. Helps students visualise statistics, compare results, analyse trends, or present survey findings.
Prompt to Authoring Copilot:
"Create a simple bar chart using canvas that displays student test scores. The chart should draw bars proportional to the scores without using any charting libraries. Include labels for each bar."
Code Snippet:
const canvas = document.getElementById('chart');
const ctx = canvas.getContext('2d');
const data = [65, 85, 92, 78];
const labels = ['Test 1', 'Test 2', 'Test 3', 'Test 4'];
data.forEach((value, i) => {
const x = i * 80 + 30;
const height = value * 2;
const y = 250 - height;
ctx.fillStyle = '#4CAF50';
ctx.fillRect(x, y, 50, height);
ctx.fillStyle = '#000';
ctx.fillText(value, x + 15, y - 5);
ctx.fillText(labels[i], x + 5, 270);
});
13. Progressive Reveal
What it does: Hides answers or explanations until students click to reveal them. Encourages active thinking before checking answers and supports self-paced learning.
Prompt to Authoring Copilot:
"Create a study guide where answers are hidden by default and revealed when students click 'Show Answer' buttons. Each question should have its own toggle button."
What it does: Randomly assigns ten questions from a larger question list each time. Provides varied practice, prevents memorisation of question order, and reduces copying between students.
Prompt to Authoring Copilot:
"Create a random question assignment that shows 10 questions chosen at random from a larger list whenever the page loads. Ensure no duplicate questions appear."
What it does: Reads text aloud using the computer’s built-in voice. Supports Chinese by default on most systems. Malay and Tamil are supported only if the relevant language pack and text-to-speech voice are installed in the operating system. Supports struggling readers, language learners, auditory learners, and students with visual impairments or dyslexia.
Prompt to Authoring Copilot:
"Create a read-aloud feature where clicking a button reads the selected text on the page using the browser's text-to-speech API. Include controls for rate and pitch."