NC Project – CNC Programming Extension for Visual Studio Code
Develop, validate, and manage CNC programs directly within VS Code.
Supports milling, turning, and turn-mill machines with intelligent tooling, validation, and code insights.


📢 Changelog
Version 0.5.4 – June 2025
- New Features
- Format Document and Format Selection (automatically separates CNC command words for better readability)
- Enhancements
- General performance and UI improvements
- Bug Fixes
- Various stability and validation fixes
✨ Features
Machine Support
Code Intelligence
- Validation for code correctness and code groups
- G/M code completion
- Syntax highlighting
- Hover support for:
- G/M codes
- Macro values
- Dynamic codes (e.g.,
G#1
)
- System macros:
B
, D
, E
, F
, H
, M
, N
, S
, T
Formatting
- Format full documents or selected code blocks (with automatic separation of G/M codes, coordinates, parameters, and macro values)
Code Lens
- Display computed path and execution time
- Toggle via command:
NC Project: Toggle Path and Time Calculation
Configuration Management
- Create and select machine tool and driver configurations via GUI
Visual Indicators
📸 Screenshots



📄 Supported File Extensions
.nc
, .txt
, .ptp
, .dat
, .mcd
, .spf
, .001
, .cnc
, .dnc
, .eia
,
.fan
, .fnc
, .g
, .g00
, .gcode
, .iso
, .lib
, .min
, .ncl
, .out
,
.pm
, .prf
, .prg
, .pu1
, .sub
, .tap
, .tp
💡 Want another file extension supported? Open an issue
🚀 Getting Started
- Install the extension from the Visual Studio Code Marketplace.
- Open any supported CNC file type.
- The extension will automatically activate and assist your workflow.
⚙️ Configuring the Extension


🛠️ Troubleshooting
Extension does not activate or function properly
This may be caused by missing system dependencies.
Required Dependency:
Microsoft Visual C++ Redistributable
Manual Test (via Command Line):
- Open Command Prompt.
- Navigate to the extension binaries folder:
cd %USERPROFILE%\.vscode\extensions\jrupar-mcieslik.ncproj-*\vscode-client\out
- Run the language server executable:
nclangsrv.exe
.
- Observe the console output for any errors or missing components.
Configuration GUI does not launch
If the configuration window fails to appear, the required .NET runtime might be missing.
Required Dependency:
.NET Framework 4.7.2 Redistributable
Manual Test:
- Go to the following path:
%USERPROFILE%\.vscode\extensions\jrupar-mcieslik.ncproj-*\vscode-client\out
- Double-click
cmtconfig.exe
.
- Look for any error messages or issues starting the tool.
👥 Contributors
Thank you for your work and contributions!
🙋♂️ Contributing & Feedback
We welcome your feedback and contributions.
- Open an issue
- Submit a pull request
- Suggest new features or improvements
📄 License
This extension is licensed under the MIT License.
You are free to use, modify, and distribute it under the terms of the license.