awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
mimecorg avatar

mimecorg/vuido

0
View on GitHub↗
6,062 stars·229 forks·JavaScript·MIT·13 viewsvuido.mimec.org↗

Vuido

Vuido is a framework for building native desktop applications for Windows, macOS, and Linux using Vue.js components, without requiring Electron or Chromium. It maps Vue components directly to native widgets from the libui library, creating lightweight applications that run on a single-threaded event loop and compile templates at build time for optimized runtime performance.

The framework provides a complete Vue.js component-to-native bridge, enabling two-way data binding via v-model, component-based window composition, and platform-specific package generation for distributing executables. It supports standard Vue.js patterns including reactive state definition, computed derived values, lifecycle hooks, custom event emission, and dynamic component swapping, while also allowing direct access to low-level libui classes when needed.

Vuido includes a comprehensive library of native UI widgets such as buttons, text inputs, checkboxes, radio buttons, dropdowns, sliders, spinboxes, progress bars, date and time pickers, color pickers, font pickers, and multi-line text editors. It offers layout containers for vertical and horizontal arrangement, tabbed content, captioned groups, and form layouts, along with capabilities for 2D graphics drawing, file picker dialogs, and modal message boxes. The framework supports Vue.js extensions like Vuex and single-file components, and provides tooling for creating production builds and cross-platform desktop packages.

Features

  • Vue.js Desktop App Builders - Provides the core framework for building native desktop apps from Vue.js components without Electron.
  • Cross-Platform Desktop Frameworks - Builds cross-platform desktop applications for Windows, macOS, and Linux using Vue.js components.
  • Cross-Platform App Builders - Creates distributable packages for Windows, Linux, and macOS from Vue.js source code.
  • Two-Way Data Binding - Synchronizes Vue data properties with native widget values using the v-model directive.
  • GUI Library Bindings - Provides a Node.js binding to the libui native GUI library for creating cross-platform desktop interfaces.
  • Desktop Packaging - Builds distributable desktop application packages for Windows, Linux, and macOS from a single codebase.
  • Vue.js Window Creators - Defines the root container for a desktop application window that holds all other interface elements.
  • Reactive Value Declarations - Declares reactive data properties that automatically update the native UI when their values change.
  • Window Initialization Routines - Ships a framework for creating and displaying native desktop windows from Vue components.
  • Action Buttons - Renders clickable buttons that trigger actions when pressed in native desktop windows.
  • Vertical Arrangements - Arranges child components in vertical or horizontal layouts to structure the user interface.
  • Checkbox Components - Renders toggleable checkbox components for binary selection in native desktop interfaces.
  • Component Data Passing - Sends typed data from parent to child components with optional default values and required validation.
  • Component Composition - Breaks complex windows into separate child components imported and declared in parent templates.
  • Attribute Binding Directives - Attaches reactive data or expressions to widget properties via directives like v-bind.
  • Native Window Creations - Creates and displays native desktop windows from Vue components with main loop management.
  • Interactive Input Collecters - Renders interactive widgets such as buttons, text fields, and labels for user interaction and data display.
  • Component Layout Containers - Provides layout containers that arrange child components vertically or horizontally within a window.
  • Dropdown Selection Components - Presents a collapsible dropdown menu for selecting an option with two-way data binding.
  • Vue-to-Native Widget Mappings - Maps Vue components directly to libui native widgets for platform-native rendering without Electron.
  • Radio Button Components - Renders groups of radio buttons for single selection from a set of options.
  • Text Editing Components - Provides a single-line text input widget with two-way data binding support.
  • Component-to-Native Bridges - Serializes Vue component trees into native UI widgets via a JSON message bus to the libui library.
  • Desktop UI Toolkits - Offers Vue.js components that map directly to native widgets for building desktop application interfaces.
  • Conditional Rendering - Shows or hides widgets based on data properties, destroying and recreating them when conditions change.
  • User Event Handlers - Attaches event listeners to UI elements so user interactions trigger methods in the application logic.
  • Desktop UI Suites - Creates native desktop interfaces by composing reusable Vue components with layouts, containers, and interactive widgets.
  • Widget Arrangement Systems - Uses Box, Form, Group, or Tab containers to align, group, or tabulate child widgets vertically or horizontally.
  • Widget Data Bindings - Displays dynamic values inside widget labels using mustache syntax with automatic updates.
  • Component-Based Window Structures - Builds each window as a tree of Vue components, with the root defining the window and children defining layout.
  • Electron-Free Desktop Frameworks - Delivers native desktop applications using Vue.js without the overhead of Electron or Chromium.
  • Bidirectional Bindings - Synchronizes a data property with an input widget's value so changes in either are reflected automatically.
  • Node.js Desktop Frameworks - Enables direct use of Node.js file system, HTTP, and third-party packages within desktop applications.
  • Desktop Application Builders - Builds cross-platform desktop applications for Windows, macOS, and Linux using Vue.js components without Electron.
  • Desktop Frameworks - Builds lightweight, native desktop applications for Windows, macOS, and Linux using Vue.js components without requiring Electron.
  • Data Change Listeners - Triggers callbacks when specified data properties change, enabling side effects like async operations.
  • Captioned Content Groups - Provides a captioned group container for organizing related widgets in native desktop interfaces.
  • Cross-Platform Packaging Tools - Builds distributable packages for Windows, Linux, and macOS from a single codebase.
  • Desktop Application Packaging - Wraps Node.js applications into platform-specific executables for double-click desktop use.
  • Cross-Platform Executable Generators - Generates distributable executables for Windows, macOS, and Linux by wrapping the Node.js application.
  • Programmatic Canvas Drawing - Provides an API for programmatic drawing of shapes, paths, and text on a native canvas.
  • Blank Canvas Areas - Provides a blank canvas widget for custom 2D graphics drawing and mouse event handling.
  • Native Desktop Rendering - Draws custom 2D shapes, paths, and text on native desktop canvases with mouse and keyboard input support.
  • File Save Dialogs - Prompts users to choose a location for saving new or overwritten files via a native dialog.
  • Instance Method Definitions - Creates functions that can access and modify reactive data and respond to user input.
  • Lifecycle Hook Executions - Executes custom code at specific moments such as instance creation, update, or destruction.
  • Reactive Computed Values - Derives new values from existing data properties that recalculate only when dependencies change.
  • Global Component Registration - Declares components once in the main script so they can be used in any parent without repeated imports.
  • Single-Threaded Execution Models - Runs the application's main loop on a single thread, processing user input and UI updates synchronously.
  • Compile-Time Template Optimizations - Compiles Vue templates into render functions at build time to optimize runtime performance.
  • Individual Window Closers - Destroys a specific root Vue component to close its window without stopping the application.
  • Boolean Input Editors - Binds a checkbox to a boolean value using v-model, updating the state when the user checks or unchecks it.
  • Form Layout Containers - Provides a vertical form layout container with captioned fields for structured data entry.
  • Color Pickers - Opens a native color selector dialog and returns the chosen color to the application.
  • Color Selection Components - Opens a color selector dialog when clicked and binds the chosen color to a model.
  • Component Slot Systems - Places text, widgets, or other components into a child component's designated slot from the parent template.
  • Component Swapping Utilities - Replaces the active component inside a special element without closing or recreating the window.
  • Custom Event Emission - Fires named events from child components to notify parents, optionally passing data.
  • Multi-line Text Inputs - Provides a multi-line text input widget for capturing and editing long-form string content.
  • Data Entry Forms - Builds structured data-entry interfaces with text inputs, sliders, checkboxes, radio buttons, and dropdowns.
  • Date and Time Pickers - Presents a widget that lets users pick both a date and a time value from a single interface.
  • Time Pickers - Opens a time-selection interface and returns the chosen hour and minute to the application.
  • Date Picker Interfaces - Opens a calendar interface for selecting a single date from a visual picker.
  • Multiple Window Creators - Mounts additional root Vue components to display multiple windows within the same application.
  • File Pickers - Invokes native system dialogs for selecting files from the filesystem.
  • Font Pickers - Opens a native font selector dialog and returns the chosen font to the application.
  • Numeric Inputs - Provides a spinbox widget for incrementing or decrementing a numeric value.
  • Radio Groups - Presents a group of mutually exclusive radio choices where selecting one deselects the others.
  • Task Progress Bars - Displays a horizontal progress bar that indicates the completion status of a task.
  • Tabbed Content Panes - Displays child widgets in separate tabs for switching between different content sections.
  • Text Display Widgets - Renders read-only text labels on the interface without user interaction.
  • Combo Box Inputs - Provides a text input combined with a drop-down list for selecting or typing values.
  • Slider Inputs - Provides a horizontal slider widget for adjusting a numeric value within a range.
  • Visual Separators - Ships visual separator widgets that draw horizontal or vertical lines between interface elements.
  • Property Configurations - Sets properties on native widgets to control their appearance and behavior in desktop applications.
  • Desktop Application Integrations - Supports Vuex and single-file components for building desktop application interfaces.
  • Javascript Desktop Runtimes - Native desktop applications built with Vue.js.
  • VueJS - Listed in the “VueJS” section of the Awesome Ui Component Library awesome list.

Star history

Star history chart for mimecorg/vuidoStar history chart for mimecorg/vuido

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Open-source alternatives to Vuido

Similar open-source projects, ranked by how many features they share with Vuido.
  • geekyants/vue-native-coreGeekyAnts avatar

    GeekyAnts/vue-native-core

    8,281View on GitHub↗

    Vue Native is a framework that compiles Vue.js single-file components into React Native primitives, enabling developers to build native iOS and Android applications using Vue syntax. At its core, it provides a build-time compiler that transforms Vue components into React components, while hooking Vue's dependency-tracking reactivity system into React's component lifecycle to trigger re-renders when observed data changes. The framework wraps React Native's native module bridge so Vue components can access device APIs through Vue's reactivity system, and maps Vue's component syntax to React Nat

    JavaScriptandroidframeworkios
    View on GitHub↗8,281
  • facebook/reactfacebook avatar

    facebook/react

    245,669View on GitHub↗

    React is a JavaScript library for building user interfaces based on a component-driven architecture and unidirectional data flow.

    JavaScriptjavascriptuifrontend
    View on GitHub↗245,669
  • lxn/walklxn avatar

    lxn/walk

    7,063View on GitHub↗

    Walk is a comprehensive framework for building native Windows desktop applications. It functions as a GUI library and Windows API wrapper, providing a toolkit of native widgets and a declarative layout system for developing high-performance user interfaces. The project is distinguished by its data-binding framework, which uses reflection and string-based property paths to synchronize data sources with interface widgets. It also provides specialized support for high-DPI interface scaling and an optimized native message loop to reduce runtime overhead. The toolkit covers a wide range of capabi

    Godeclarativedeclarative-uigo
    View on GitHub↗7,063
  • zhuzichu520/fluentuizhuzichu520 avatar

    zhuzichu520/FluentUI

    4,421View on GitHub↗

    FluentUI is a component-based UI framework that implements Microsoft's Fluent Design System for building cross-platform desktop applications. It provides a complete set of reusable UI components and styling tools that follow the Fluent Design language, enabling developers to create consistent visual interfaces across different operating systems. The framework includes a custom window frame manager that creates frameless application windows with integrated title bars and standard window controls, styled through CSS variables. It also features a single-page application router that manages view

    C++fluentqmlqt
    View on GitHub↗4,421
See all 30 alternatives to Vuido→

Frequently asked questions

What does mimecorg/vuido do?

Vuido is a framework for building native desktop applications for Windows, macOS, and Linux using Vue.js components, without requiring Electron or Chromium. It maps Vue components directly to native widgets from the libui library, creating lightweight applications that run on a single-threaded event loop and compile templates at build time for optimized runtime performance.

What are the main features of mimecorg/vuido?

The main features of mimecorg/vuido are: Vue.js Desktop App Builders, Cross-Platform Desktop Frameworks, Cross-Platform App Builders, Two-Way Data Binding, GUI Library Bindings, Desktop Packaging, Vue.js Window Creators, Reactive Value Declarations.

What are some open-source alternatives to mimecorg/vuido?

Open-source alternatives to mimecorg/vuido include: geekyants/vue-native-core — Vue Native is a framework that compiles Vue.js single-file components into React Native primitives, enabling… facebook/react — React is a JavaScript library for building user interfaces based on a component-driven architecture and unidirectional… lxn/walk — Walk is a comprehensive framework for building native Windows desktop applications. It functions as a GUI library and… zhuzichu520/fluentui — FluentUI is a component-based UI framework that implements Microsoft's Fluent Design System for building… electron-react-boilerplate/electron-react-boilerplate — This project is a TypeScript desktop boilerplate and application template that combines Electron and React for… nodegui/react-nodegui — Build performant, native and cross-platform desktop applications with native React + powerful CSS like styling.🚀.