Note: This extension is currently under development and not yet available on the VS Code Marketplace.
Instantly preview and test your Thymeleaf templates without setting up a Spring Boot application.
- ๐ Instant Preview: See your template changes in real-time
- ๐ Thymeleaf Support: Full Thymeleaf syntax support with auto-completion
- ๐ Hot Reload: Changes are reflected without server restart
- ๐ JSON Data: Test templates with JSON test data
- ๐จ Static Resources: Serve CSS, JS, images, and more
- ๐ Layout System: Support for Thymeleaf layout system
- ๐ Variable Intellisense: Auto-completion for Thymeleaf variables from JSON data
- ๐ ๏ธ Resource Management: Create, rename, delete files and folders directly in ThymeLab panel
- ๐ Auto Updates: Automatic processor updates with notifications
- ๐ Fragment Navigation: Control-click on fragments to jump to their definitions
- Install ThymeLab extension from VS Code Marketplace
- Configure settings as described below
- If
thymelab.processor.jarPath
is left empty, the extension will automatically download the latest processor JAR file from GitHub releases - Or you can manually download and specify the path to the JAR file
- If
Setting | Description | Default | Required |
---|---|---|---|
thymelab.processor.jarPath |
Path to ThymeLab processor JAR file. Leave empty for auto-download | - | |
thymelab.processor.javaHome |
Path to Java executable | System Java | |
thymelab.processor.port |
Server port number | 8080 | |
thymelab.processor.logLevel |
Log level (ERROR, WARN, INFO, DEBUG, TRACE) | INFO |
Setting | Description | Example |
---|---|---|
thymelab.resources.templatePath |
Directory for Thymeleaf templates | src/main/resources/templates |
thymelab.resources.staticPath |
Directory for static resources | src/main/resources/static |
thymelab.resources.dataPath |
Directory for JSON data files | src/main/resources/thymelab/data |
- ๐งช ThymeLab Icon: Click to show/hide ThymeLab panel
- โ๏ธ Settings: Click to open VS Code settings
- Status: Shows if server is Starting/Running/Stopped
- Port: Current port number (click gear icon to change)
- Log Level: Current log level (click gear icon to change)
- URL: Server URL (click browser icon for internal, external link icon for external browser)
- Templates: Thymeleaf template files (.html)
- Static Files: Static resources (CSS, JS, images)
- Data Files: JSON data for template variables
- File Operations: Create, rename, delete files and folders
- Auto Refresh: Automatically updates when files change
- Start: Start server (available when stopped)
- Stop: Stop server (available when running)
- Restart: Restart server (available when running)
- Refresh: Refresh view (always available)
- Auto-completion for variables defined in JSON data files
- Shows variable type and source information
- Supports nested objects and arrays
- Updates automatically when JSON files change
- Triggers on
${
,[[${
, and[(${
expressions - Shows variables from both global and template-specific JSON files
- Supports dot notation for nested properties (e.g.,
${user.name}
) - Auto-completes iterator variables in
th:each
loops (e.g.,${item.property}
)
- Control-click on variables to jump to their definition in JSON files
- Automatically creates variables in JSON files if they don't exist
- Full Thymeleaf syntax highlighting
- Expression completion
- Attribute suggestions
- Control-click on
th:fragment
references to jump to definition - Supports both
~{template :: fragment}
and~{::fragment}
syntax - Auto-completion for available fragments
- Shows fragment preview on hover
- Works across all template files in workspace
- Automatic processor version check
- Update notifications in status bar
- One-click update process
- Shows latest 10 versions for selection
- Automatic download and installation
your-project/
โโโ templates/ # Thymeleaf template files (.html)
โโโ static/ # Static files (CSS, JS, images, etc.)
โโโ thymelab/data/ # Thymeleaf data files (.json)
Click the browser icon or URL to open the preview in VS Code's right panel.
Click the external link icon to open in your system's default browser.
-
Server won't start
- Verify JAR file path is correct
- Check if Java is installed
- Ensure port is available
- Make sure all required directories are set
-
Templates not loading
- Check if files are in correct directory
- Verify file extension is .html
- Confirm server is running
-
Changes not reflecting
- Make sure files are saved
- Try restarting server
- "JAR file not found": Set correct path in settings or let the extension download it automatically
- "Port already in use": Change port number in settings
- "Java not found": Install Java or set Java home path
- "Required directories not set": Configure template, static, and data directories
Please see our Development Guide for setup instructions and contribution guidelines.
This project is licensed under the MIT License - see the LICENSE file for details.