Meet twinBASIC — the next evolution of classic BASIC.
Crafted from scratch for total VB6 compatibility, twinBASIC lets you open your existing projects and run them unchanged, then take them further with modern-day language features and performance gains.- True to its roots. Every VB6/VBA quirk is faithfully reproduced, so nothing gets lost in translation.
- A foundation that’s getting stronger every day. The compiler and debugger are still in active development, but each beta release brings sharper stability and more polish.
- Built for progress. Enjoy 64-bit support and continual quality-of-life enhancements that push BASIC forward without breaking what already works.
- A purpose-built in-house developed IDE. Our streamlined environment accelerates coding, debugging, and deployment—so you can ship faster.
Keep your code. Level-up your possibilities. Welcome to twinBASIC.
IDE features
- Semantic highlighting
- Real-time full project error and diagnostics panel
- Intellisense, code completion and signature help
- Goto definition
- Code folding
- Tabbed document editing
- Custom add-ins support
- Uses the modern standard LSP protocol
Debugger features
- Multi-thread debugging capability
- Callstack window
- Variables window
- Watch window
- Debug console (aka 'Immediate Window')
- Uses the modern standard DAP protocol
Compiler features
- Designed to be 100% compatible with existing VB6 and VBA code, simulating all known quirks
- Compiles to Win32 and Win64 architectures, with Mac, Linux, and Android support planned
- Supports many VB6 project types such as 'Standard EXE', 'ActiveX Control', and 'ActiveX DLL'
- Adds support for new project types, including 'Standard DLL' (non-ActiveX)
- Fully based on COM technologies, like the classic versions of Visual Basic
- Generates small executables that do not require runtime libraries or redistributable components
- Full Unicode support throughout (IDE -> parser -> compiler -> standard library)
- Supports parameterized class constructors (for non-exposed classes)
- Generics support, similar to VB.NET but more flexible
- Supports overloading, with rules consistent with VB.NET
- Multi-threading support, with a fully thread-safe standard library
- New built-in controls: WebView2 and QRCode
- New datatypes: LongLong (for both Win32 and Win64), LongPtr, Decimal
- New operators: AndAlso, OrElse, <<, >>
- New assignment operators: +=, -=, *=, \=, /=, ^=, &=, <<=, >>=
- New statements: Continue For, Continue While, Continue Do, Exit While
- Supports Return syntax, similar to VB.NET
- Per-procedure Handles/Implements event syntax, as seen in VB.NET
- DeclareWide support for using Strings in Unicode DLL calls (disables implicit ANSI conversions)
- Entire compilation process is multi-threaded for excellent performance
- Allows multiple components per source file (within Class/Module blocks)
- Brand new custom parser (written in C++), built for flexibility and high performance
- Removes many legacy limitations, such as the size of procedures and number of line continuations
- Designed for LLVM, paving the way for full optimized compilation and superior runtime performance
Built-in extension libraries
- (COMING SOON) vbWatchdog: a native implementation of vbWatchdog (ErrEx) for fantastic error handling possibilities
Visual Basic (VB) is a trademark of the Microsoft Corporation