The fastest way to convert JSON, YAML, XML, TOML, CSV, and more — directly inside VS Code.

Select text → Right-click → Transform. Done. Result copied to clipboard automatically.
Stop switching tabs. Stop pasting into online converters. Every transformation you need is one click away, 100% offline, 100% private.
🔥 What Can This Extension Do?
| You have... |
You need... |
This extension does it |
| JSON |
Python dictionary |
✅ JSON → Python Dict |
| JSON |
YAML for Kubernetes |
✅ JSON → YAML |
| JSON |
XML for SOAP API |
✅ JSON → XML |
| JSON |
CSV for Excel |
✅ JSON → CSV |
| JSON |
TOML for Rust/Python |
✅ JSON → TOML |
| YAML |
JSON |
✅ YAML → JSON |
| XML |
JSON |
✅ XML → JSON |
| CSV |
JSON array |
✅ CSV → JSON |
| .env file |
JSON object |
✅ .env → JSON |
| camelCase |
snake_case |
✅ One-click case conversion |
| Any string |
Base64 encoded |
✅ Base64 Encode/Decode |
| URL string |
Encoded URL |
✅ URL Encode/Decode |
| HTML text |
Safe entities |
✅ HTML Encode/Decode |
| Minified JSON |
Readable JSON |
✅ Beautify JSON |
| Multi-line code |
Single line |
✅ Single/Multi-line toggle |
⚡ Quick Start
- Install from VS Code Marketplace (search
GingerTurtle)
- Select any text in your editor
- Press
Ctrl+Shift+T (Mac: Cmd+Shift+T) or right-click → "Transform & Copy"
- Pick your transformation → result is instantly on your clipboard!
JSON Converter
- JSON → Python Dict — Produces valid Python with
True/False/None, quoted keys
- JSON → JavaScript Object — Clean JS syntax, template literals for multi-line strings
- JSON → YAML — Human-readable YAML with configurable indentation
- JSON → XML — Well-formed XML from JSON
- JSON → TOML — Rust
Cargo.toml, Python pyproject.toml, Hugo config
- JSON → CSV — Excel-ready CSV with headers, proper escaping
- JSON → .env — Environment variable file from JSON config
YAML Converter
- YAML → JSON — Parse Kubernetes, Docker Compose, GitHub Actions config
- XML → YAML — Direct conversion with attribute support
XML Converter
- XML → JSON — Parse RSS feeds, SOAP responses, config files
- XML → YAML — Convert legacy XML to modern YAML config
CSV Converter
- CSV → JSON — Smart type detection (numbers, booleans, nulls auto-parsed)
- JSON → CSV — Export nested data to flat CSV
TOML Converter
- TOML → JSON — Parse
Cargo.toml, pyproject.toml, config.toml
.env File Parser
- .env → JSON — Parse environment files, skip comments, handle quotes
- JSON → .env — Generate environment files from JSON config
- Extract Values — Pull all leaf values from any nested structure
- Extract Keys — Get dot-notation paths (
user.address.city) from any JSON/YAML
🔧 String Encoding & Decoding
Base64 Encoder / Decoder
- Base64 Encode — Encode strings, JWT payloads, data URIs
- Base64 Decode — Decode tokens, PEM certificates (multi-line supported)
URL Encoder / Decoder
- URL Encode — RFC 3986 compliant encoding for query strings and paths
- URL Decode — Decode percent-encoded strings from logs or API responses
HTML Entity Encoder / Decoder
- HTML Encode — Escape
<, >, &, " for safe rendering
- HTML Decode — Convert
&, <, > back to characters (single-pass, no double-decode)
📝 Case Converter
| Input |
camelCase |
snake_case |
PascalCase |
kebab-case |
get_user_data |
getUserData |
get_user_data |
GetUserData |
get-user-data |
getUserData |
getUserData |
get_user_data |
GetUserData |
get-user-data |
GetUserData |
getUserData |
get_user_data |
GetUserData |
get-user-data |
get-user-data |
getUserData |
get_user_data |
GetUserData |
get-user-data |
- Minify JSON — Strip whitespace for production, API payloads (60-80% size reduction)
- Beautify JSON — Pretty-print with configurable indent (2 or 4 spaces)
- Single Line — Collapse multi-line text to one line
- Multi Line — Expand single-line content to multiple lines
📋 Real-World Examples
Convert JSON to Python Dict
Input: {"name":"Alice","active":true,"score":null}
Output: {'name': 'Alice', 'active': True, 'score': None}
Convert JSON to YAML (Kubernetes-ready)
# Input JSON:
{"apiVersion":"v1","kind":"Service","metadata":{"name":"my-app"}}
# Output YAML:
apiVersion: v1
kind: Service
metadata:
name: my-app
Parse .env File to JSON
# Input (.env): Output (JSON):
DATABASE_URL=postgres {"DATABASE_URL": "postgres",
API_KEY="my secret" "API_KEY": "my secret"}
# ignored comment
CSV to JSON Array
# Input: # Output:
name,age,active [{"name":"Alice","age":30,"active":true},
Alice,30,true {"name":"Bob","age":25,"active":false}]
Bob,25,false
Decode Base64 JWT Payload
Input: eyJ1c2VyIjoiQWxpY2UiLCJyb2xlIjoiYWRtaW4ifQ==
Output: {"user":"Alice","role":"admin"}
🎯 Who Uses This Extension
Backend Developers
Converting API JSON responses to Python dicts, generating YAML configs from JSON templates
Frontend Developers
Switching between camelCase JS and snake_case API responses, encoding/decoding Base64 tokens
Converting between JSON and YAML for Kubernetes manifests, Docker Compose, Terraform, Ansible
Data Engineers
CSV↔JSON transformations, extracting keys/values from nested API responses
Full-Stack Developers
.env file management, TOML config generation, quick format switching across languages
⚙️ Configuration
Open VS Code Settings (Ctrl+,) and search "Code Transformer":
{
"simpleCodeBlockCopier.indentSize": 2,
"simpleCodeBlockCopier.pythonQuoteStyle": "single",
"simpleCodeBlockCopier.showSuccessNotifications": true,
"simpleCodeBlockCopier.autoDetectFormat": true
}
| Setting |
Default |
Description |
indentSize |
2 |
Spaces for JSON/YAML indentation (1-8) |
pythonQuoteStyle |
single |
Quote style for Python dict output |
showSuccessNotifications |
true |
Show confirmation after each transform |
autoDetectFormat |
true |
Auto-suggest transformations based on input |
⌨️ Keyboard Shortcuts
| Action |
Windows / Linux |
macOS |
| Open Transform Menu |
Ctrl+Shift+T |
Cmd+Shift+T |
| Command Palette |
Ctrl+Shift+P → "Transform" |
Cmd+Shift+P → "Transform" |
| Right-click Menu |
Select text → right-click |
Select text → right-click |
🔒 Privacy & Security
- Zero network calls — all transformations run entirely on your machine
- No telemetry — your code is never sent anywhere
- No API keys — works fully offline
- Input validation — 1MB size limit, recursion depth limits, YAML schema restrictions
- Open source — fully auditable on GitHub
🆚 Why Not Just Use an Online Converter?
|
This Extension |
Online Converter |
| Speed |
<100ms |
3-10 seconds |
| Privacy |
✅ 100% local |
❌ Sends data to server |
| Offline |
✅ Always works |
❌ Needs internet |
| Workflow |
✅ Stay in VS Code |
❌ Switch tabs |
| Formats |
✅ 30+ transforms |
Limited per site |
| Cost |
✅ Free |
Sometimes paywalled |
🐛 Troubleshooting
Shortcut not working?
Another extension may be using Ctrl+Shift+T. Use the right-click menu or Command Palette instead.
Transformation shows error?
Check that your input is valid for the format (e.g. valid JSON, valid XML). The error message will tell you exactly what's wrong.
Context menu not appearing?
Make sure text is selected before right-clicking.
Need more help? → Open an issue on GitHub
📦 Installation
From VS Code:
- Press
Ctrl+Shift+X
- Search
GingerTurtle Code Transformer
- Click Install
From Command Line:
code --install-extension GingerTurtle.simplecode
🤝 Contributing & Support
Made with ❤️ for developers who value their time. Transform code instantly, stay in your flow.