awesome-repositories.com
博客
awesome-repositories.com

通过 AI 驱动的搜索,发现最优秀的开源仓库。

探索精选搜索开源替代品自托管软件博客网站地图
项目关于排名机制媒体报道MCP 服务器
法律隐私政策服务条款
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
kbrsh avatar

kbrsh/moon

0
View on GitHub↗
5,951 星标·194 分支·JavaScript·MIT·4 次浏览moonjs.org↗

Moon

Moon is a minimal reactive UI library for building user interfaces with a component composition framework, client-side routing, server-side rendering, and signals-based reactivity. It provides a virtual DOM diffing engine that computes minimal real DOM mutations, enabling efficient view updates by comparing in-memory UI representations against previous versions.

The library distinguishes itself through a signals-based reactivity system that tracks data dependencies through observable signals, triggering targeted DOM updates only when values change. It implements a state driver pattern for unidirectional data flow, where a centralized state store provides data as input and accepts changes as output. Moon also includes a client-side history router that intercepts URL changes via the History API to swap view components without reloading the page, preserving application state.

The framework supports declarative view rendering using HTML-like markup with embedded expressions for data binding and event handling, along with directive-based behavior for common UI patterns. It offers server-side string rendering that generates complete HTML strings on the server by executing components in a non-browser environment, and includes project scaffolding through a command-line tool that sets up a predefined directory structure and build configuration from a single command.

Features

  • Reactive UI Libraries - A minimal library for building user interfaces from components that automatically update when underlying data changes.
  • HTML-Like Markup Renderers - Describes UI structure directly in JavaScript using HTML-like markup with embedded expressions for data binding and event handling.
  • UI Component Compositions - Builds interfaces by nesting reusable functions that return virtual DOM trees for modular view logic.
  • Component Composition Frameworks - Nests reusable, self-contained UI pieces together to build complex interfaces from simple building blocks.
  • Reactive UI Updates - Automatically re-computes and updates the user interface in response to state changes via signals.
  • Signal-Based Reactivity - Implements observable signals that trigger targeted DOM re-renders only when their values change.
  • Client-Side Routers - Ships a client-side history router that intercepts URL changes via the History API to swap views without reloading.
  • Client-side Routing - Navigates between component-based views on the client side using URL changes without full page reloads.
  • Component Composition - Builds interfaces by nesting reusable functions that return virtual DOM trees for modular composition.
  • Declarative UI Structures - Uses HTML-like markup with embedded expressions for data binding and event handling directly in JavaScript.
  • Reactive State Management - Provides a signals-based reactivity system that automatically updates the DOM when underlying data changes.
  • Server-Side Renderers - Generates complete HTML strings on the server by executing components in a non-browser environment.
  • Server-Side Rendering - Generates complete HTML strings on the server by executing components in a non-browser environment.
  • Server-Side Rendering Engines - Generates HTML on the server for faster page loads and search engine indexing.
  • Virtual DOM Diffing - Compares in-memory UI representations to compute minimal real DOM mutations.
  • Centralized State Stores - Stores and updates application data through a centralized driver that provides data as input and accepts changes as output.
  • Driver-Based State Flows - Manages application state through a unidirectional data flow where a driver function receives new state and returns it as input.
  • Event Handling - Responds to DOM interactions like input changes and clicks by running handler functions that update state.
  • UI Directives - Ships built-in directives for common UI patterns such as conditional rendering and iteration.
  • State-Comparison Updates - Updates the DOM only where data changes by comparing previous and current states.

Star 历史

kbrsh/moon 的 Star 历史图表kbrsh/moon 的 Star 历史图表

AI 搜索

探索更多 awesome 仓库

用简单的语言描述您的需求 —— AI 将根据相关性为您从数千个精选开源项目中进行排序。

Start searching with AI

Moon 的开源替代方案

相似的开源项目,按与 Moon 的功能重合度排序。
  • leptos-rs/leptosleptos-rs 的头像

    leptos-rs/leptos

    20,993在 GitHub 上查看↗

    Leptos is a full-stack Rust web framework designed for building reactive applications that share logic and types between the server and the browser. It provides a comprehensive toolkit for developing web interfaces where specific DOM nodes update automatically in response to changes in underlying reactive signals, rather than re-rendering entire component trees. The framework distinguishes itself through a fine-grained reactivity model that tracks dependencies at the individual data point level. It utilizes compile-time template transformation to convert declarative HTML-like syntax into opti

    Rustdomfine-grainedisomorphic
    在 GitHub 上查看↗20,993
  • midudev/jscampmidudev 的头像

    midudev/jscamp

    3,811在 GitHub 上查看↗

    jscamp is a full-stack web development and education project focused on mastering JavaScript, TypeScript, and AI integration. It provides a structured curriculum and interactive exercises covering language fundamentals, frontend engineering, and backend API development. The project distinguishes itself through the implementation of autonomous AI agents capable of complex task automation, such as modifying files, managing servers, and executing API calls. It includes advanced AI development tools for conversational querying, real-time code suggestions, and automated repository analysis to gene

    JavaScriptbootcamp
    在 GitHub 上查看↗3,811
  • preactjs/preactpreactjs 的头像

    preactjs/preact

    38,701在 GitHub 上查看↗

    Preact is a lightweight declarative user interface library designed for building high-performance web applications. It utilizes a component-based architecture where interfaces are defined as functional or class-based units, relying on a virtual DOM to perform efficient state reconciliation and updates. By prioritizing a minimal footprint, the library enables developers to create modular, predictable, and testable user interfaces while maintaining compatibility with standard browser APIs. The library distinguishes itself through a reactive state engine that leverages signals to track dependenc

    JavaScriptcomponentsdomjsx
    在 GitHub 上查看↗38,701
  • ractivejs/ractiveractivejs 的头像

    ractivejs/ractive

    5,920在 GitHub 上查看↗

    Ractive is an open-source JavaScript framework for building reactive user interfaces where the DOM automatically updates when underlying data changes. It is fundamentally a declarative data binding library that synchronizes data between the model and the view, enabling two-way binding without manual DOM manipulation, and operates as a template-based component system for composing markup, styles, and logic into reusable UI components. The framework distinguishes itself through a plugin-extensible architecture that allows custom components, adaptors, and extensions to be registered without modi

    JavaScript
    在 GitHub 上查看↗5,920
查看 Moon 的所有 30 个替代方案→

常见问题解答

kbrsh/moon 是做什么的?

Moon is a minimal reactive UI library for building user interfaces with a component composition framework, client-side routing, server-side rendering, and signals-based reactivity. It provides a virtual DOM diffing engine that computes minimal real DOM mutations, enabling efficient view updates by comparing in-memory UI representations against previous versions.

kbrsh/moon 的主要功能有哪些?

kbrsh/moon 的主要功能包括:Reactive UI Libraries, HTML-Like Markup Renderers, UI Component Compositions, Component Composition Frameworks, Reactive UI Updates, Signal-Based Reactivity, Client-Side Routers, Client-side Routing。

kbrsh/moon 有哪些开源替代品?

kbrsh/moon 的开源替代品包括: leptos-rs/leptos — Leptos is a full-stack Rust web framework designed for building reactive applications that share logic and types… midudev/jscamp — jscamp is a full-stack web development and education project focused on mastering JavaScript, TypeScript, and AI… preactjs/preact — Preact is a lightweight declarative user interface library designed for building high-performance web applications. It… ractivejs/ractive — Ractive is an open-source JavaScript framework for building reactive user interfaces where the DOM automatically… trueadm/inferno — Inferno is an isomorphic JavaScript framework and virtual DOM UI library used for building user interfaces. It… tencent/omi — Omi is a web components framework, reactive UI library, and client-side routing engine. It provides a system for…