CORS Proxy Emulator - Online Test CrossβOrigin Requests
Bypass CORS for testing by routing requests through a local service worker proxy. Debug APIs without server changes. Experimental.
UD5 Toolkit
Online Retro Code Playground β Write, Run & Relive the 8-bit Era
ZX Spectrum BASIC is the built-in programming language of the ZX Spectrum home computer, released in 1982 by Sinclair Research. It's a dialect of BASIC (Beginner's All-purpose Symbolic Instruction Code) designed by Steve Vickers. Every ZX Spectrum booted directly into its BASIC interpreter, making programming instantly accessible. Key features include line-numbered program storage, floating-point arithmetic, string handling, and direct screen/color control via commands like INK, PAPER, BORDER, PLOT, and DRAW.
This emulator supports a comprehensive subset including: PRINT (with AT, TAB, ;, ,), LET, GOTO, IF...THEN, FOR...NEXT (with STEP), GOSUB...RETURN, INPUT, CLS, REM, PAUSE, BEEP, PLOT, DRAW, CIRCLE, BORDER, PAPER, INK, BRIGHT, FLASH, RANDOMIZE, STOP, DIM, and CLEAR. Functions include RND, INT, ABS, SGN, SQR, SIN, COS, TAN, ATN, EXP, LN, LEN, STR$, VAL, CHR$, CODE, and PI.
The screen simulates the ZX Spectrum's 256Γ192 pixel resolution with a 32Γ24 character text grid. Each character cell is 8Γ8 pixels. Color attributes (INK and PAPER) apply per 8Γ8 cell block, just like the original hardware. The canvas renders at native 256Γ192 resolution and is scaled up via CSS with image-rendering: pixelated for an authentic retro look. The rainbow border mimics the classic Spectrum loading screen aesthetic.
Yes! The emulator is fully responsive. On tablets and phones, the layout stacks vertically with the Spectrum screen on top and the editor below. All buttons are touch-friendly, and the code editor adjusts its height for comfortable typing. The canvas scales down to fit smaller screens while maintaining its 4:3 aspect ratio.
When the emulator encounters an INPUT statement, it pauses execution and displays a prompt in a modal dialog. Enter your value and click Submit to continue the program. For INPUT with a prompt string (e.g., INPUT "Enter name:"; n$), the prompt text appears both on the virtual screen and in the dialog. String inputs should be entered without quotes; numeric inputs must be valid numbers.
Line numbers are fundamental to ZX Spectrum BASIC. Each program line must begin with a number (1β9999), which determines execution order and serves as a target for GOTO, GOSUB, and FOR...NEXT loops. Lines are executed in ascending numerical order unless a jump instruction redirects flow. Without line numbers, the interpreter cannot store or sequence your program β this mirrors the original Spectrum's behaviour exactly.
The BEEP duration, pitch command uses the Web Audio API to generate tones. While not a perfect emulation of the Spectrum's single-channel piezo speaker, it produces recognizable beeps with duration in seconds and pitch in Hz (approximate). The original Spectrum used a different pitch encoding, so we've mapped it to frequency values that sound reasonable. Ensure your browser allows audio autoplay for the best experience.
Yes! Click the Export button to download your BASIC program as a .bas text file. You can share this file with others or re-import it by pasting the contents back into the editor. The exported file contains plain text with line numbers, making it compatible with other ZX Spectrum tools and emulators. You can also simply copy-paste code between browser sessions.
Bypass CORS for testing by routing requests through a local service worker proxy. Debug APIs without server changes. Experimental.
Smash bricks with a ball and paddle. Multiple rows of colored bricks, powerβups, and score tracking. All built with HTML5 Canvas.
Write slides in Markdown and instantly preview a webβbased presentation. Export as HTML. Pure frontend.
Configure how your PWA launches: focus existing or create new. Test with the launch_handler manifest field.
See how Trusted Types prevents unsafe HTML assignment. Test against injected scripts. Modern security practice.
Fold a virtual square paper step by step with crease lines and visual previews. Practice origami basics without wasting real paper. All canvasβbased.
Learn how to register your PWA to handle custom URL protocols. See the manifest entry and test.
Generate a dummy RSA or EC public/private key pair for educational visualization. Shows key structure and ASN.1 dump. Not for production use.
Fill in your PWA details to generate a valid manifest.json file. Include icons, theme color, display mode.
Check if your related native or PWA app is installed. See the API in action and copy the code.
Test SQL injection inputs on a mock database and see the resulting query. Learn how to prevent SQLi. No real data.
Paste your Swagger/OpenAPI YAML and see a rendered API documentation preview with expandable endpoints. All local rendering.
Paste your manifest.json and instantly validate it against the W3C spec. Catch errors and warnings. Clientβside.
Pick a package name and generate a custom version or download badge as a static image or Markdown link. For readme files.
Derive a strong cryptographic key from a password using PBKDF2 with SHAβ256. Adjust iterations and salt. Educational and test tool.
Validate and compare semantic version strings. Check if a version satisfies a range (e.g., ^1.2.3). Visual breakdown of major.minor.patch. Local only.
Paste JSON-LD and validate basic syntax and required properties for Article, Product, etc. Local only. Instant feedback.
Upload a 512x512 logo and get resized icons for every PWA requirement. Download a zip and the corresponding manifest.json snippet.
Generate a series of semantic version tags with optional prefixes. Copy for your release script. Consistent tagging.
Parse XML strings into compact JSON representation. Handles attributes and text nodes intelligently. Quick and private, ideal for API response translation.
Paste a GraphQL SDL schema and get autoβgenerated Markdown documentation. Perfect for API docs. All local.
Validate if a version string follows SemVer 2.0.0. Also sort and compare versions. Developer tool.
Paste a GeoJSON object and validate its structure. Catch missing coordinates, wrong types, and feature errors. Local.
Paste two Markdown texts and see a sideβbyβside diff with rendered preview. Perfect for editing and collaboration.
Paste your .htaccess rules and check for common syntax errors or misconfigurations. No server required; static analysis.
Translate YAML configuration files into JSON format instantly. Validate syntax during conversion. Perfect for DevOps and configuration management. Secure client-side operation.
Reduce the number of colors in an image to a retro 8βbit look. Uses median cut quantization in the browser. Preview and download the stylized result.
See your website inside iframes at multiple breakpoints simultaneously. Sideβbyβside responsive testing.
Force more or less contrast and see how your page adapts. Test your CSS media queries for accessibility.
Generate a random sequence of button presses that looks like a retro game cheat code. Totally useless, totally fun.