About

Rubberduck is first and foremost a project aiming to bring the VBIDE functionality into this century, free of charge for all its users.

The project started in late 2014 as a C# port of a test runner tool written in VBA; it didn’t take too long to realize we could easily take the code in the editor, tokenize it, process it, analyze it, and then provide a wide array of developer tools to enhance the VBIDE experience.

Rubberduck is about learning, and paying forward: the project co-founder wrote their very first lines of C# for Rubberduck, and several contributors later did the same. Core contributors are always happy to guide new ducklings toward their first pull request!

Rubberduck is also about teaching: inspections will not just tell you that Option Explicit is missing, it will also explain why you want Option Explicit enabled everywhere. Many inspection ideas stemmed from questions frequently asked on Stack Overflow, and again explain what’s going on and why that might be a problem. If you’re new to VBA, Rubberduck inspections can teach you things about how VBA works, that many veterans took years to learn about!

The project’s blog presents new releases and upcoming features, and frequently proposes intermediate/advanced VBA topics revolving around object-oriented programming and clean code. A dedicated repository was created to host all VBA code examples from blog articles.

Rubberduck logo

EULA

There is no end user license agreement (EULA) so to speak: everything is already covered by the GPLv3 license, and there is nothing in it that is relevant for the end user to "agree" to, except perhaps this excerpt from section 15:

THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU.

Basically: we did our best and it works for us, but we cannot promise it won't break anything on your computer so you use it at your own risk - standard stuff.

The installer makes you agree to terms and conditions designed to fill up a typical amount of space, but anyone taking the time to actually read it is in for a ride. Nobody ever reads these anyway... right?

You may reverse engineer, decompile, disassemble or otherwise attempt to discover the source code, underlying ideas, underlying user interface techniques or algorithms of the Application by any means whatsoever, directly or indirectly, or disclose any of the foregoing to other parties. It'd be kinda pointless to do so though, because the source code is publicy available under GPLv3 at https://github.com/rubberduck-vba/Rubberduck. Go nuts.

Privacy Policy

Even though Rubberduck does not collect any data from its users, attention is given to avoid including any identifiable information in any data it produces, for example in log files.

Any data produced by the software belongs to its user. This ought to remain true whether or not Rubberduck ends up with any telemetry features, which it currently does not.

Personal information provided on 3rd-party platforms such as GitHub or Ko-fi, is subject to the respective privacy policies of these platforms. Personal information including full name, email, phone number, shipping address, is highly privileged and only ever disclosed to a single Rubberduck project administrator on a need-to-know basis; such information is only collected to be shared with the parties that need it for their purpose, e.g. Canada Post/USPS/Purolator.

Rubberduck logo

Attributions

Rubberduck was made possible with the combined knowledge of many people, and depends on several libraries and projects.

  •  EasyHook

    Used by the unit testing Fakes API to hook into the VBA runtime to intercept certain function calls.

  •  AvalonEdit

    Used for syntax-highlighted code in refactoring previews, for example.

  •  WPF Localization for RESX

    A piece of code specifically sublicensed for use in Rubberduck and its GPL license.

  •  Smart Indenter

    The original Smart Indenter VBIDE add-in VB6 source code that served as a reference.

Trademarks

Microsoft, Windows, Microsoft/Office 365, Excel, Access, Word, PowerPoint, Visual Basic for Applications, Visual Studio, Most Valuable Professional (MVP) Award logo, as well as other Microsoft products, services, and registered trademarks, are the property of Microsoft Corporation. Microsoft is a registered trademark of Microsoft Corporation in the United States and/or other countries.

The WordPress 'W logo with circle' is a trademark of the WordPress Foundation.

All other trademarks are the property of their respective owner.

Rubberduck logo

© 2014-2025 Rubberduck Project Contributors