VB6 Studio Web 0.6.0 Rebuilds Visual Basic 6 in a Browser, Minus COM and OCX
Software / news
VB6 Studio Web 0.6.0 Rebuilds Visual Basic 6 in a Browser, Minus COM and OCX
Wieslaw Soltes's MIT-licensed project reads .vbp project files and exports standalone HTML, but its README rules out the native components that classic VB6 programs lean on.
A browser-based recreation of the Visual Basic 6 IDE drew 409 points and 134 comments on Hacker News, and the reason is easy to see: the form designer, toolbox and properties window are all there, running in a tab. The project is VB6 Studio Web, version 0.6.0, by Wieslaw Soltes, under the MIT licence. It had 67 GitHub stars when its page was read on Tuesday.
The README is more candid than most launch pages about what it is not. It says the project is "Not a complete, native or pixel-identical Microsoft VB6 replacement."
What it runs and what it exports
The IDE is HTML, CSS and JavaScript, drawing with WebGPU and falling back to Canvas2D. Code does not go through JavaScript eval. The README says a compiler and a cooperative virtual machine "execute VB-style source through their own instruction model." It can open original .vbp and .vbg project files, and File, then Make project.html, writes a self-contained app that embeds its own runtime so the IDE is not needed to open it.
Version 0.6.0 adds runtime MDI forms with child windows, a resource editor that imports and exports native Win32 .res files, and a debugger with statement-level stepping, all three Error Trapping modes, Run to Cursor and Set Next Statement. The README counts 37 browser control types, including TreeView, ListView, RichTextBox, grids, tabs and toolbars.
| Works in 0.6.0 | Not implemented, per the README |
|---|---|
Form designer, 37 control types, .vbp/.vbg import | COM and OCX binary loading |
| Debugger with breakpoints and caller-frame inspection | Unrestricted Edit and Continue |
| Export to a standalone HTML app | Type-library and add-in loading |
| Classes, properties, events, Currency, error handling | Native DLL execution, full Win32 parity |
The gap that matters for old projects
Much of what makes a legacy VB6 project hard to move is outside the language: the ActiveX controls and COM components it references. The README lists COM and OCX loading, type-library discovery and native DLL execution as unimplemented. A project that depends on any of them will not run here, whatever its BASIC code looks like. The same list names the native MDIForm, UserControl and UserDocument designers and report designers as unfinished.
Automatic checking is capped at 2,048 modules and 16 Mi UTF-16 source units, and the README says the checker reports "generally one primary parser error per module." For a small form-based utility, that is workable. For a large codebase, the second error in a module only appears after the first is fixed.
The README also lists a built-in coding agent that takes a ChatGPT account or an API key for OpenAI, Anthropic or Google Gemini, and an MCP server for outside agents. It does not say how the project itself was written.
What Hacker News testers found
Commenters on the thread did the testing the README cannot. The user badsectoracula reported: "You cannot click on non-visual controls (or disabled controls) to select them (e.g. timer)." Keyboard and mouse-motion events were also reported as not yet implemented.
The argument that drew the most replies was about design, not bugs. Commenter danielheath wrote: "Form builders don't work for responsive design." In that commenter's account, that is why the industry dropped them. A form on a fixed grid is the part of VB6 that the browser fits least comfortably, and this project reproduces it faithfully.
The thread also asked whether the project was largely machine-written. Commenter tech234a pointed to the developer's wider set of browser-based .NET tools as the reason to suspect it. The README gives no account of how the code was produced and says the 0.6.0 release started from the verified 0.5.0 source, with four feature worktrees implemented, tested and merged.
That sits alongside other developer-tool projects that found an audience on Hacker News, such as the Cargo early-metadata change for Rust builds and the TesterArmy e2e project. Unlike them, this one is a nostalgia project that is honest about being incomplete.
The repository's compatibility documentation is the page to read before moving anything real. The README's roadmap section lists full Win32 parity as not implemented, with no dates attached.
Sources
More in Software
- 01REA Hands Coding Agents a Disassembler, and 2,963 Stars Followed in a DayThe MIT-licensed toolkit from a developer called morluto wires Ghidra, Hopper and a JavaScript analyser into agents over MCP, and its README pitches rebuilding a feature you have only seen running.
- 02Polars 2.0 Makes Streaming the Default and Stops Promising Row OrderThe release, announced Oct. 6 by creator Ritchie Vink, adds no headline feature, but a join or group-by that used to return rows in input order may now return them in any order.
- 03Cloudflare's Web Search API Passes Through Exa, Linkup and Ceramic.ai PricesThe beta, announced Oct. 2 through AI Gateway, adds no markup, so the bill depends on which provider string a developer types and the launch post prints no price.
- 04TesterArmy's e2e Gained 1,398 Stars in a Day. Its Docs Publish No Accuracy FiguresThe Apache-2.0 framework lets an agent drive an app from a plain-English goal, then replays the recorded steps. The one independent benchmark of its decision-model option tested a different job.