📊 STDF Record Viewer - VS Code Extension
A powerful and modern VS Code extension for viewing and analyzing STDF (Standard Test Data Format) files with an intuitive web-based interface.
🎥 Demo Video

✨ Features
🚀 Core Features
- 🎯 View STDF Records - See records which are in
.stdf file
- 📑 24 Record Types Supported - FAR, ATR, MIR, MRR, PCR, HBR, SBR, PMR, PGR, PLR, RDR, SDR, WRR, WCR, PIR, PRR, TSR, PTR, MPR, FTR, BPS, EPS, GDR, DTR
- 🎨 Modern UI - Beautiful gradient design with dark theme
- ⚡ Fast Loading - Streams only selected record type from large files
🔍 Advanced Features
- 📊 Interactive Table - Resizable columns with text wrapping
- 🔎 SQL Query Support - Filter data using SQL-like syntax
- 📄 Pagination - Navigate through large datasets (100 records per page)
- 💾 CSV Export - Export filtered results with timestamp
- ⌨️ Query History - Undo/Redo with
Ctrl+Z / Ctrl+Y
- 🎯 Smart Filtering - Case-insensitive search with LIKE, IS NULL support
💻 SQL Query Examples
-- Get all records
SELECT * FROM data
-- Filter by field
SELECT * FROM data WHERE TEXT_DAT = 'Example'
-- Pattern matching
SELECT * FROM data WHERE TEXT_DAT LIKE 'Example%'
📦 Installation
Prerequisites
Python 3.10+ must be installed on your system with the following libraries:
python -m pip install Semi-ATE-STDF pandas
Install Extension
🎯 Usage
Method 1: Right-Click
- Right-click any
.stdf file
- Select "Open With..."
- Choose "STDF Record Viewer"
🎨 Interface Overview
- File name display
- Gradient purple theme
2. Control Panel
- Record Type Dropdown - Scrollable list of 24 record types
- Load Records Button - Fetches selected record type
- Export CSV Button - Exports current filtered data
3. SQL Query Panel
- Query Input - Multi-line SQL editor
- Execute SQL Button - Run query on loaded data
- Clear & Show All Button - Reset filters
- Query History -
Ctrl+Z to undo, Ctrl+Y to redo
4. Data Table
- Resizable Columns - Drag column edges to resize
- Text Wrapping - Long text automatically wraps
- Sticky Header - Header stays visible while scrolling
- Row Hover Effect - Highlights row on hover
- Navigate large datasets
- Shows: First, Previous, Page Numbers, Next, Last
- Displays current page info (e.g., "Showing 1 to 100 of 500 records")
🔧 Keyboard Shortcuts
Shortcut |
Action |
Ctrl+Z |
Undo last SQL query |
Ctrl+Y |
Redo SQL query |
Ctrl+Shift+P |
Open command palette |
📊 Supported STDF Record Types
Test Data Records
- PTR (Parametric Test)
- MPR (Multiple Result Parametric)
- FTR (Functional Test)
- STR (Scan Test)
|
Datalog Records
- MIR (Master Info)
- MRR (Master Result)
- PCR (Part Count)
- HBR (Hardware Bin)
- SBR (Software Bin)
|
Audit Records
- FAR (File Attributes)
- ATR (Audit Trail)
- DTR (Datalog Text)
- GDR (Generic Data)
|
And more: PIR, PRR, TSR, PMR, PGR, PLR, RDR, SDR, WRR, WCR, BPS, EPS
🐛 Troubleshooting
Extension doesn't open for .stdf files
- Right-click the
.stdf file
- Select "Open With..."
- Choose "STDF Record Viewer"
- Check "Configure default editor for '*.stdf'..."
Python Error: Module not found
# Install required libraries
python -m pip install Semi-ATE-STDF pandas
# Verify installation
python -c "from Semi_ATE import STDF; print('✓ Success')"
No records displayed
- Check if the selected record type exists in your STDF file
- Try different record types (MIR, DTR are commonly present)
- Check Python console for errors
SQL Query not working
- Make sure to use
FROM data (lowercase)
- Enclose string values in single quotes:
'value'
- Use uppercase for column names:
TEXT_DAT , REC_LEN
📝 Technical Details
Architecture
- Language: TypeScript
- Framework: VS Code Extension API
- UI: Custom Webview with HTML/CSS/JavaScript
- Parser: Python (Semi-ATE-STDF library)
- Data Processing: Client-side SQL engine
File Structure
Extension/
├── src/
│ └── extension.ts # Main extension logic
├── out/ # Compiled JavaScript
├── dist/ # Distribution files
├── package.json # Extension manifest
├── tsconfig.json # TypeScript config
└── README.md # This file
📄 License
This project is licensed under the MIT License - see the LICENSE file for details.
🙏 Acknowledgments
- Semi-ATE Team - For the excellent STDF parsing library
- VS Code Team - For the powerful extension API
- Community - For feedback and contributions
Made with ❤️ for the semiconductor testing and data community
⭐ Star this repo if you find it useful!
| |