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
coolwanglu avatar

coolwanglu/vim.jsArchived

0
View on GitHub↗
4,446 stars·268 forks·C·21 viewscoolwanglu.github.io/vim.js/emterpreter/vim.html↗

Vim.js

vim.js is a professional modal text editor implementation designed for integration into web browsers and JavaScript-based applications. It emulates a Vim environment by providing modal editing workflows, keyboard shortcuts, and a state-machine-based input handler to toggle between command and insertion modes.

The project enables the embedding of a full-featured text editor into host applications. It facilitates browser-based development by replicating the logic and memory management of a native text editor using JavaScript objects and functions.

The editor includes capabilities for syntax highlighting based on language rules, multi-level undo via buffer-based text storage, and spell checking. It also supports filename autocompletion, external file imports from local or cloud storage, and the execution of custom JavaScript scripts to extend core functionality.

User behavior and keybindings are managed through a configuration-driven state system that persists settings via external files.

Features

  • Modal Input Systems - Implements a modal input architecture that toggles between command and insertion modes for professional editing.
  • JavaScript Editor Implementations - Provides a professional modal text editor implementation designed for integration into web browsers and JavaScript-based applications.
  • Modal Text Manipulation - Provides keyboard-driven modal text manipulation for professional editing in web-based environments.
  • Modal Editing Systems - Implements a state-machine-based input system that uses distinct modes for navigation and text manipulation.
  • In-Browser Code Editing - Provides a professional-grade code editing environment directly within a web browser.
  • Vim Emulation Layers - Implements a modal interaction layer that mimics Vim motions and operators within a JavaScript environment.
  • Logic Emulations - Replicates native C-based text editor logic and memory management using JavaScript objects and functions.
  • In-Memory Text Buffers - Uses dynamic memory structures to maintain text file state for real-time editing and multi-level undo.
  • Syntax Highlighting Editors - Implements a text editor that applies color and style to source code for improved readability.
  • Text Editing Components - Ships a high-performance text editing component with buffer management and modal manipulation.
  • JavaScript Editor Embeddings - Enables embedding a full-featured JavaScript text editor into host applications.
  • Editor Behavior Customizations - Supports customizing the behavioral logic of the editor, such as cursor movement and spellchecking.
  • Configuration Persistence - Provides mechanisms for storing user-defined settings and keybindings in local configuration files.
  • Configuration State Managers - Implements a system for loading and persisting editor configuration states from external files.
  • Extensibility Scripts - Allows the execution of custom JavaScript scripts directly from the interface to extend editor functionality.
  • Code Syntax Highlighting - Provides visual formatting of source code based on predefined language syntax rules.
  • Editor Embeddings - Allows host applications to embed the editor runtime within native desktop application windows.
  • Editors - Vim interface for the browser.
  • Rich Text Editors - JavaScript port of the Vim text editor.

Star history

Star history chart for coolwanglu/vim.jsStar history chart for coolwanglu/vim.js

How this analysis was created: This summary and feature list are AI-generated from collected project material and can contain mistakes. Stars, license and language are imported from GitHub. Inclusion does not mean that we have tested or audited this project. Check the source documentation for any feature you depend on. Learn more on our About page.

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

Projects sharing features with Vim.js

These projects share indexed features with Vim.js. Shared tags can include platform or build tooling; verify the primary use case before treating a result as a replacement.
  • securingsincity/react-acesecuringsincity avatar

    securingsincity/react-ace

    4,204View on GitHub↗

    react-ace is a React component wrapper for the Ace code editor, designed to embed feature-rich text editing and syntax highlighting into web applications. It provides a browser-based editor that applies language-specific coloring and formatting rules to source code and markup files. The project distinguishes itself through support for specialized keyboard interaction modes, including Vim and Emacs, as well as a side-by-side diff viewer for comparing different file versions. It also functions as a tool for code snippets and live autocompletions to accelerate text entry. The component covers a

    TypeScriptacecode-editorhacktoberfest
    View on GitHub↗4,204
  • martanne/vismartanne avatar

    martanne/vis

    4,634View on GitHub↗

    Vis is a terminal-based modal text editor that utilizes vi keybindings and a system of structural regular expressions. It functions as a scriptable environment where Lua is used for configuration, custom key mappings, and plugin development. The editor distinguishes itself through a syntax highlighting system based on Parsing Expression Grammars and a pattern matching engine that treats text as a structure for complex search and replace operations. It also integrates directly with the system shell, allowing users to pipe text ranges to external commands and capture the resulting output. The

    C
    View on GitHub↗4,634
  • b4winckler/macvimb4winckler avatar

    b4winckler/macvim

    5,049View on GitHub↗

    MacVim is a native Cocoa application that implements the Vim modal text editor as a graphical user interface on macOS. It integrates the editor engine directly into a native window and event loop, allowing it to operate without a terminal emulator. The project functions as both a programming text editor and a hexadecimal binary editor. It provides tools for modifying raw binary data via a visual hexadecimal grid and applying patches to binary files. The editor features modal input handling, pattern-based syntax highlighting, and rectangular block selection. Additional capabilities include mu

    C
    View on GitHub↗5,049
  • codemirror/codemirrorcodemirror avatar

    codemirror/CodeMirror

    27,246View on GitHub↗

    CodeMirror is a browser-based code editor and extensible text editor framework. It functions as a programmable interface for rendering code and text with support for numerous programming languages, serving as a reusable component for web-based integrated development environments. The project provides a syntax highlighting engine that applies visual styles to text based on programming language rules. It includes a programming API and a CSS theming system to customize the editor's appearance and extend its functionality with custom behaviors. The framework covers capabilities for embedding tex

    JavaScript
    View on GitHub↗27,246
Compare all 30 related projects→

Frequently asked questions

What does coolwanglu/vim.js do?

vim.js is a professional modal text editor implementation designed for integration into web browsers and JavaScript-based applications. It emulates a Vim environment by providing modal editing workflows, keyboard shortcuts, and a state-machine-based input handler to toggle between command and insertion modes.

What are the main features of coolwanglu/vim.js?

The main features of coolwanglu/vim.js are: Modal Input Systems, JavaScript Editor Implementations, Modal Text Manipulation, Modal Editing Systems, In-Browser Code Editing, Vim Emulation Layers, Logic Emulations, In-Memory Text Buffers.

Which projects share features with coolwanglu/vim.js?

Projects with overlapping indexed features include: securingsincity/react-ace — react-ace is a React component wrapper for the Ace code editor, designed to embed feature-rich text editing and syntax… martanne/vis — Vis is a terminal-based modal text editor that utilizes vi keybindings and a system of structural regular expressions.… b4winckler/macvim — MacVim is a native Cocoa application that implements the Vim modal text editor as a graphical user interface on macOS.… sofish/pen — Pen is a visual WYSIWYG markdown editor and live editing interface that converts markdown patterns into rich text… codemirror/codemirror — CodeMirror is a browser-based code editor and extensible text editor framework. It functions as a programmable… lapce/lapce — Lapce is a high-performance text editor built with Rust that utilizes hardware acceleration for fast rendering and…