Desktop Digital Logic Waveform Creator

Fast Local Rendering.
Script & Visual Paint.
Professional Exports.

Create clear digital timing diagrams from simple scripts or interactive click-and-paint editing. Waveforms are processed locally on your desktop with zero latency, an integrated Code Editor, and precision vector tools.

Fully compatible with WaveDrom's WaveJSON syntax. WaveScript-specific extensions require WaveScript.

Windows 10/11
macOS
Linux
Offline Local Engine
Wavescript — [spi_master_tb.json]
Code Editor
Wavescript - Desktop Digital Logic IDE with Code Editor & Live Preview
Dual-Paradigm Authoring

Visual WavePaint or Code Editor.

Create visually in Paint Mode or edit WaveJSON in the Code Editor. Both modes are available in Trial and licensed versions.

WavePaint Mode

Visual Point & Click Waveform Drawing

Interactive Paint
WavePaint interactive visual drawing mode in Wavescript
  • ✓ Click directly on canvas to paint 0, 1, High-Z (z), or data buses
  • ✓ Clock cycle mode & signal row mode for precision pulse shaping
  • ✓ Rapid testbench sketching without writing any JSON syntax
  • ✓ Switch between visual waveform editing and WaveJSON code
  • ✓ Licensed: double-click to edit or drag signals in the rendered waveform

Code Editor

Integrated Code Editing for WaveJSON

WaveJSON Editing
Code Editor with cursor guide in Wavescript
  • ✓ Code editing for waveform scripts
  • ✓ Shift+Alt+F formatting to help keep WaveJSON scripts readable
  • Cursor Guide: Relate code positions to clock cycles in the preview, with a customizable guide color
  • ✓ Define signal names, states, and bus values in WaveJSON

Dual-Mode Creation

Switch between click-and-paint WavePaint drafting and code editing in the same desktop application.

Multi-Page Workspaces

Organize whole ASIC and FPGA chip architectures with hierarchical tree navigation in a single unified project file.

ASCII Art for RTL Comments

Export pure ASCII and Unicode timing diagrams directly into Verilog, SystemVerilog, VHDL, and C source code comments.

Vector Tools & Freehand

Overlay colored bounding boxes, snappable dependency arrows, freehand sketches, and dark canvas skins with 10px grid snapping.

Digital Logic Workflow

From concept to RTL documentation in one workspace.

Accelerate hardware design and verification cycles with an integrated timing workbench tailored for engineering rigor.

1

Define

Paint transitions visually or declare clocks, buses, and valid strobes in WaveJSON.

2

Verify

Use the cursor guide to locate signal rows and clock cycles. Visually compare signal transitions against clock edges and count cycles between events.

3

Annotate

Add causal arrows, phase boxes, freehand notes, and custom bus labels with 10px snap.

4

Export

Export SVG/PNG images or PDF documents, or add ASCII waveform diagrams to Verilog/VHDL source-code comments.

Your WaveDrom code.
Ready for Wavescript.

Reuse your existing WaveDrom code without changes. WaveScript adds powerful extensions, including signal formulas, that require WaveScript.

{
  "signal": [
    { "name": "clk", "wave": "p.....|..." },
    { "name": "data", "wave": "x.345x|=.x",
      "data": ["head", "body", "tail", "data"] }
  ]
}
ENGINEERING SPECIFICATIONS

Built for Digital Logic,
FPGA & ASIC Verification.

A desktop waveform workbench for hardware designers, verification engineers, and system architects. Create timing diagrams for design documents, presentations, and inline Verilog/VHDL code comments.

Wavescript — Digital Logic Suite
Engineered for Hardware
Wavescript digital logic interface

Paint Mode.
Code Editor.

Build timing diagrams visually with Paint Mode, or define signals in WaveJSON with the Code Editor. Both modes are available in Trial and licensed versions.

Paint Mode — Visual Editing

Click on the waveform canvas to set signal states, draw transitions, and define bus values. Use single clock cycle or signal row editing to shape your diagram. Double-click editing and dragging signals in the rendered waveform require an active license.

Paint Mode for editing signal states directly on the waveform canvas
Paint Mode: Edit signal states directly on the waveform

Code Editor — WaveJSON Editing

Write and edit signal names, waveform patterns, and bus data in WaveJSON. Format your scripts and view the resulting waveform alongside the editor.

Code Editor displaying WaveJSON code alongside the waveform preview
Powered by Monaco Editor, the code editor from Visual Studio Code.
Wavescript — [SoC_Top_Design.json]
5 Sheets
PROJECT FILE
SoC_Top_Design
PAGES (5 SHEETS) + ADD
01_SPI_4_Wire
02_AXI4_Lite_Read
03_UART_8N1
04_All_Round_Example
05_User_Reg_Bus
01_SPI_4_Wire.wsp Active Sheet
4 Signals | 50 MHz Clock | Standard SPI
Waveform Sheet Preview
WORKSPACE ARCHITECTURE

Organize entire chip designs in a single workspace.

No more scattered diagram files. Structure complex SoC and FPGA subsystems into hierarchical sheets, clock domains, and bus interfaces inside a single unified project file.

✓
Sidebar Tree Navigator
Quickly switch between master bus interfaces, submodule testbenches, and power-up sequences without opening multiple windows.
✓
Right-Click Workspace Actions
Add new sheets, duplicate existing timing templates, rename pages, and reorder modules with native context menus.
✓
Self-Contained Project Files
Store pages, vector annotations, skins, and configurations together in one readable JSON project file.
VECTOR ANNOTATIONS & FREEHAND PEN LAYER

Highlight setup, hold, and latency with precision vectors.

Turn bare signal traces into explanatory design reviews. Overlay customizable bounding boxes, causal arrows, text callouts, and freehand sketches with 10px grid snapping directly in the native canvas tools.

Wavescript — Vector Annotation Studio & Snapping Canvas
Native App UI
Wavescript Vector Annotation Tools Canvas
EXPORT PIPELINE

From timing diagram to inline RTL code comments.

Export ASCII waveform comments, SVG/PNG images, PDF documents, or reusable WaveJSON. SVG, PDF and ASCII export require an active license.

✓
Unicode & Box-Drawing ASCII Art
Include text-based timing diagrams as comments above module declarations in your source files.
✓
SVG, PNG & PDF Export
Export waveform images or PDF documents for design documents, datasheets, and presentations. SVG and PDF export require an active license.
✓
Standard WaveJSON Data Exchange
Export WaveJSON data for reuse in waveform examples and documentation. Available in both Trial and licensed versions.
Wavescript — Export Pipeline [SPI Master 4-Wire]
ASCII Mode
Formatted for Verilog / VHDL / C Source Comments
// =============================================================================
// SPI Master 4-Wire Timing Diagram (Generated by Wavescript)
// Template: SPI (4-wire) | Export Pipeline Deliverable
// =============================================================================
//      :  0   1   2   3   4   5   6   7   8   9   10  11 
// CS_n : ┌───┐                                       ┌───
//      : ┘   └───────────────────────────────────────┘   
// SCLK : ┐       ┌─┐ ┌─┐ ┌─┐ ┌─┐ ┌─┐ ┌─┐ ┌─┐ ┌─┐ ┌─┐ ┐   
//      : └───────┘ └─┘ └─┘ └─┘ └─┘ └─┘ └─┘ └─┘ └─┘ └─└───
// MOSI : ╱xxxxxx╲╱  ╲╱  ╲╱  ╲╱  ╲╱  ╲╱  ╲╱  ╲╱      ╲╱xx╲
//      : ╲xxxxxx╱╲B7╱╲B6╱╲B5╱╲B4╱╲B3╱╲B2╱╲B1╱╲  B0  ╱╲xx╱
// MISO : ╱xxxxxx╲╱  ╲╱  ╲╱  ╲╱  ╲╱  ╲╱  ╲╱  ╲╱      ╲╱xx╲
//      : ╲xxxxxx╱╲R7╱╲R6╱╲R5╱╲R4╱╲R3╱╲R2╱╲R1╱╲  R0  ╱╲xx╱
// =============================================================================

Start immediately from standardized bus architectures.

Try three basic code examples or browse templates by category. Advanced templates, including AXI4-Lite, 5-Stage Pipeline, SHAKE128 and User Register Bus, require an active license.

Template Library
Code examples & template catalog

Select a basic example, then copy its WaveJSON into the Code Editor.

Basic Clock (basic-clock.json)BASIC EXAMPLE
{
  "signal": [
    {"name": "clk", "wave": "p......."}
  ]
}

DARK CANVAS & DIAGRAM SKINS

Custom themes for verification screens & print datasheets.

Choose Dark Canvas mode for a dark waveform background, or Lowkey skin for monochrome diagrams in printed documents.

Docs  ›  Getting Started  ›  Overview
Documentation

Learn Wavescript

Master the syntax, explore ready-to-use templates, and create professional digital logic waveforms directly from script.

Quick Start

Interactive waveform explorer: toggle between side-by-side or stacked full-width view, switch hardware protocols, and copy ready-to-use WaveJSON code.

Coming from WaveDrom?

Fully compatible with WaveDrom's WaveJSON syntax. Reuse your existing WaveDrom code without changes. WaveScript-specific extensions, including signal formulas, require WaveScript.

↗ Full Image
basic-clock.json WaveJSON
{
  "signal": [
    { "name": "clk" , "wave": "p.....|..." },
    { "name": "data", "wave": "x.345x|=.x", "data": ["head","body","tail","data"] }
  ]
}
Waveform Preview
Basic Clock Full Size ↗
1WriteDefine clocks, buses, and timing states.
2PreviewInstant desktop local rendering.
3AnnotateAdd setup/hold arrows, regions & markers.
4ExportSVG, PNG, PDF, WaveJSON, or ASCII text.

Syntax Overview

The core structure is JSON-like and keeps timing data together with diagram presentation controls.

signal

Define grouped signals, clocks, buses and waveform patterns.

wave + data

Describe state transitions and values such as D0, x"FF", WRITE or READ.

edge

Connect named nodes with timing relationships, setup/hold arrows and annotations.

regions

Highlight important time ranges with color, text and top/bottom labels.

config

Control vscale, hscale, font sizes, text backgrounds and global styling.

formulas

Calculate and display integer, hex and string values directly in bus labels.

Template Library: Learn by Example

Explore four public examples: Basic Clock, Clock & Reset, I²C Transaction, and Valid / Ready Handshake. View their WaveJSON code and waveform output, or load an example into Quick Start.

Basic Clock waveform thumbnail

Basic Clock

Clock signal with digital data bus and period markers.

Clock & Reset waveform thumbnail

Clock & Reset

Release an active-low reset after two cycles.

I²C Transaction waveform thumbnail

I²C Transaction

START condition, address, R/W, ACK bit, data and STOP.

Valid / Ready Handshake waveform thumbnail

Valid / Ready Handshake

Show one transfer when valid and ready are both high.

More app templates

Browse additional templates by name. Templates marked Licensed require an active Wavescript license.

  • All-Round Example
  • Data Bus & Handshake
  • Advanced Spikes & Gaps
  • SHAKE128 AXI4-StreamLicensed
  • User Register BusLicensed
  • 5-Stage PipelineLicensed
  • SPI (4-wire)
  • UART Frame (8N1)
  • AXI4-Lite ReadLicensed
  • AXI4-Lite WriteLicensed
  • Hex Arithmetic
  • Integer & Bitwise
  • Colored Formula Sigils
  • FIFO Read / Write
  • FSM State Transitions

Export Formats

Choose the output that best fits documentation, sharing or integration with other tools.

PNG ImageRaster images for documents and presentations. Trial exports include a gray watermark.Trial & Licensed
SVG VectorScalable vector diagrams for technical documents.License required
PDF DocumentExport timing diagrams as PDF documents for sharing.License required
WaveJSONPreserve waveform definitions for reuse and interchange.Trial & Licensed
ASCII TextText-based waveforms for source-code comments.License required

Advanced Diagram Features

Use Wavescript as a technical communication tool, not only as a waveform renderer.

Groups & GapsOrganize dense diagrams and introduce adjustable spacing.
Timing MarkersMark nodes and show dependencies between events.
RegionsHighlight command, transfer or analysis phases.
Text & LabelsAdd direct explanation to waveforms and bus values.
Colors & StylingControl signal color, label color, font size and scale.
Formula SupportCompute and display derived values in decimal, hex or strings.

Next Steps

▦

Explore Templates

Learn Wavescript by opening a working example and modifying the source.

⇩

Export a Diagram

Prepare SVG/PNG images or PDF documents for a datasheet, design review or presentation.

?

Need Help?

Use the Contact page for product, technical, licensing or workflow questions.

Contact Support →
Pricing

Simple pricing for powerful waveform design.

Start with a 30-day evaluation. Advanced templates, including AXI4-Lite, 5-Stage Pipeline, SHAKE128 and User Register Bus, require an active license.

Evaluation Version

Wavescript Trial

30-day trial with core waveform editing capabilities.

$0
Trial download · 30-day evaluation from first launch
Download Trial
Standalone evaluation installer
30-day evaluation period from first launch
Core signal syntax (clock, digital, bus)
Paint Mode: visual waveform editing
Code Editor with Shift+Alt+F formatting
Annotations, timing markers and regions
Basic templates
Up to 5 pages and 1 folder per project
Watermarked waveform preview, PNG export and copied diagrams
Fast local desktop rendering
Save and open JSON projects
In-app upgrade prompt to Full Version anytime
Recommended · Full License

Wavescript

Delivered via email (.exe + license key) with full professional diagram tools.

$100 / 1 year per PC
Node-locked to PC MAC address · Multi-seat available · No automatic renewal
Dedicated Full Version installer (.exe) + signed key
Node-locked to PC MAC address · Internet required at startup
Code Editor with formatting & syntax highlight
Annotation drawing tools & visual timing markers
Paint Mode, including double-click editing and signal dragging
Unlimited pages and folders per project
Advanced templates: AXI4-Lite, 5-Stage Pipeline, SHAKE128 and User Register Bus
SVG, PNG, PDF, WaveJSON and ASCII export
Renew early without losing remaining days
Feature Comparison

Trial vs Licensed

↔ Swipe horizontally to compare features
Feature / Capability Trial Wavescript License ($100/yr)
Distribution Executable Evaluation installer (.exe) Dedicated Full Version (.exe) via email
License Term 30 days from first launch 1 Year Full License (Node-Locked)
Hardware Node-Lock Validation - ✓ Locked to PC MAC address
Server Time Verification Client clock (30 days) ✓ Anti-tamper trusted cloud time
Code EditorWaveJSON editing + Shift+Alt+FWaveJSON editing + Shift+Alt+F
Paint Mode (Click-to-edit UI)Interactive visual editingInteractive visual editing
Double-click Edit & Drag Signals in Paint ModeNot availableIncluded in rendered waveform
Annotation & Timing Markers ✓ Arrows, markers, dependencies ✓ Arrows, markers, dependencies
Regions & Highlight Phases ✓ Custom background regions ✓ Custom background regions
PagesUp to 5 pages per projectUnlimited pages per project
FoldersUp to 1 folder per projectUnlimited folders per project
WaveDrom WaveJSON Syntax Fully compatible Fully compatible
Formula SigilsNot availablee, f, g, i, j, k
Template LibraryBasic templatesBasic and advanced templates
Waveform PreviewWatermark during evaluationNo watermark
PNG ExportGray watermarkNo watermark
Copy Diagram to ClipboardWatermarkNo watermark
SVG ExportNot availableIncluded
ASCII Text ExportNot availableIncluded
PDF ExportNot availableIncluded
WaveJSON ExportIncludedIncluded
Multi-License Orders (Teams) - ✓ Multiple PC MACs in 1 checkout
Early Renewal Policy Upgrade anytime ✓ Extends +1 year with zero lost days
Why Upgrade?

Built for professional diagrams.

An annual license adds advanced templates, formula support and watermark-free export options.

Advanced Annotations

Timing markers, arrows, regions, labels and dependency visualization.

Advanced Templates

Load AXI4-Lite, 5-Stage Pipeline, SHAKE128 and User Register Bus templates with an active license.

Multiple Exports

Export SVG, PDF and ASCII, plus PNG without a watermark.

Formula Support

Calculate and display values directly in the timing diagram.

How Wavescript Works

Four steps. No automatic renewal.

1

Configure & Order

Choose seat quantity and enter your PC MAC address(es) and contact details.

2

Email Delivery in 1–2 Working Days

Our team manually emails your order confirmation, .lic file and app download link within 1–2 working days after payment confirmation. Renewals use the same delivery window.

3

Node-Lock Activation

Install and launch; the app binds to your PC's hardware MAC address with trusted server time.

4

1-Year Access & Easy Renewal

Renew on this website, directly or from the app's renewal link. Import the renewed .lic file; no reinstallation required. Early renewal preserves your remaining days.

Delivery follows Bangkok time (UTC+7) and the Bank of Thailand's announced holiday calendar.

Frequently Asked Questions

Pricing & Licensing

Clear answers on node-locked licensing, internet requirements, and license renewals.

How does the node-locked licensing model work? Node-Locked
Each Wavescript license is bound to the registered PC's hardware MAC address. An internet connection is required whenever the app starts for license verification. You can purchase multiple seats for different PCs in one order. Workstation changes and MAC transfers are not currently available; check the MAC address before ordering.
How does Wavescript Trial compare with a licensed version?
Both editions include Paint Mode, a Monaco-based Code Editor with Shift+Alt+F formatting, annotations, timing markers, regions, and WaveJSON export. Trial is a 30-day evaluation with up to 5 pages and 1 folder per project. Its waveform preview, PNG exports, and copied diagrams are watermarked. An annual license adds double-click editing and signal dragging in the rendered waveform, unlimited pages and folders, the specified advanced templates, formula sigils, and SVG, PDF and ASCII export, without those watermarks.
What happens when the 1-year license expires?
When your Wavescript license expires, the app enters view-only mode and editing is unavailable. You can still select templates. PNG, SVG and PDF exports are limited to 4 signals and include a watermark. ASCII text export is also limited to 4 signals, but has no watermark. Request renewal through this website or the app's link to this website. Our team manually emails the renewed .lic file within 1–2 working days after payment confirmation. Import that file to restore licensed access; no reinstallation is required.
Can I renew early without losing days? Zero Days Lost
Yes. The new one-year term is added to the end of your existing license, preserving the remaining days. Request renewal on this website, directly or through the app's renewal link. The renewed .lic file is delivered manually by email within 1–2 working days after payment confirmation, then imported into the app.
Do I need an Internet connection to use Wavescript?
Waveform rendering runs locally on your desktop. You must connect to the internet every time you open the app for license verification. If the app asks you to reconnect, reconnect before continuing; this does not itself mean your license has been revoked. No fixed offline grace period is currently specified.
Can I purchase licenses for multiple PCs at once?
Yes. In our checkout form, simply select the number of licenses you need and enter the MAC address for each PC. Each PC receives its own unique license ID (e.g. WS-2026-XXXXXX) in your order confirmation email.
What is your refund and return policy? Contact-Based Review
Wavescript purchases and renewals are non-refundable, except where a refund is required by applicable law. Please check the Trial and edition comparison before purchasing. For billing questions or to exercise applicable statutory rights, use our Contact page and include your order reference. This notice does not limit your statutory rights.
Still have questions about Wavescript?

Our engineering support team is ready to assist with licensing, hardware MAC setup, and custom team deployments.

Contact Support →
Contact

Let’s talk about your waveform workflow.

Have a question about Wavescript, licensing, technical features or a specific use case? Tell us what you are working on and how we can help.

Send us a message

Tell us about your requirement.

Required fields are kept short. Background and technical context are optional but help us respond more precisely.

Draft for review. This is not marketing consent or acceptance of a finalized organizational DPA.

Contact submissions are temporarily unavailable. You can still fill in this form.

Common Inquiries

Quick paths to the right answer.

Product & Features

Explore Wavescript capabilities, templates and export formats.

Pricing & License

Review the Trial plan and the $100 one-year Wavescript license.

Hardware MAC Transfer

Workstation changes and hardware MAC transfers are not currently available. Please verify the workstation MAC address before purchasing.

Feature Requests

Have ideas or specific waveform features you'd like to see? Let us know via the contact form above.

Refund Inquiries

Purchases and renewals are non-refundable, except where required by applicable law. Contact us with your order reference for billing questions or applicable statutory rights.

Contact-Based Review

License Refund Request

Wavescript purchases and renewals are non-refundable, except where a refund is required by applicable law. Please check the Trial and edition comparison before purchasing. For billing questions or to exercise applicable statutory rights, use our Contact page and include your order reference. This notice does not limit your statutory rights.

Individual Review

Purchases and renewals are non-refundable, except where required by applicable law. Your statutory rights are unaffected.

Node-Lock Deactivation

Upon refund approval, the Node-Locked License (.lic) and registered hardware MAC addresses associated with the order will be permanently deactivated.

Direct Stripe Processing

Purchases and renewals are non-refundable, except where required by applicable law. Any approved statutory refund is processed to the original payment method via Stripe.

Submit License Refund Request
Enter your PC Hardware MAC Address and Registered Email below. The system will verify license ownership and auto-fill your order details automatically.
Auto-formats to XX:XX:XX:XX:XX:XX
Email used when purchasing the license
Automatically retrieved when MAC & Email match
Auto-filled from licensed account owner
Refund Request Received

Your request has been officially recorded in our registry. Our engineering management team will review your order details and notify you via email within 24-48 business hours.

Tracking Ticket ID: REF-2026-000000
Refund FAQ

Frequently Asked Questions

Information about billing, statutory rights, and registered workstations.

How long does it take for funds to return to my account? 5-10 Business Days
Once approved by our team, Stripe initiates the refund immediately. Depending on your credit card issuer or bank, the credit typically appears on your billing statement within 5 to 10 business days.
Can I rebind my MAC Address to another PC instead of refunding? Free Re-Registration
Workstation changes and hardware MAC transfers are not currently available. Verify the registered workstation before purchasing or renewing a license.
Is there a standard refund window?
Purchases and renewals are non-refundable, except where required by applicable law. Your statutory rights are unaffected.
Do I need to return any physical items?
No physical return is required. Wavescript is delivered digitally. Upon refund processing, the node-locked cryptographic signature for your hardware MAC address is invalidated on our licensing servers.
Need specialized assistance with your order?

Our billing and engineering support desk is here to help resolve any transaction or licensing issues.

Contact Engineering Desk →