awesome-repositories.com
المدونة
awesome-repositories.com

اكتشف أفضل مستودعات المصادر المفتوحة باستخدام بحث مدعوم بالذكاء الاصطناعي.

استكشفعمليات بحث منسقةبدائل مفتوحة المصدربرمجيات ذاتية الاستضافةالمدونةخريطة الموقع
المشروعحولكيفية ترتيب النتائجالصحافةخادم MCP
قانونيالخصوصيةالشروط
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
O

omcljs/om

0
View on GitHub↗
6,631 نجوم·352 تفرعات·Clojure·2 مشاهدات

Om

Om is a frontend state management library and reactive user interface framework that integrates ClojureScript functional programming with the React virtual DOM rendering engine. It provides a bridge to build responsive web interfaces where visual elements automatically update when underlying application data changes.

The project centers on a normalized state store that flattens complex data structures into a relational format. This data is accessed through a reader-based querying system, which decouples the user interface from the state by allowing components to declare specific data requirements that are resolved through a centralized read function.

State is managed via atomic mutations and transactions, ensuring that global application state transitions trigger targeted re-renders of dependent components. The framework also covers client-server data synchronization, identity-based data resolution, and the ability to render components to strings for server-side content delivery.

Features

  • ClojureScript-React Bridges - Integrates ClojureScript functional programming models with the React rendering engine to build reactive user interfaces.
  • Reader-Based State Querying - Evaluates specific expressions to extract targeted pieces of application state using a dedicated reading function.
  • Frontend State Normalization - Flattens complex nested data structures into a relational format for efficient storage and retrieval within the application state.
  • Data Value Normalization - Flattens complex data structures into a relational format and reconstructs them into trees for the interface.
  • Expression-Based Data Querying - Evaluates specific expressions to extract targeted pieces of application state using a dedicated reading function.
  • Frontend State Management - Implements a centralized state management architecture for handling data flow and synchronization in the browser.
  • State Mutations - Implements atomic state mutations to ensure global application state transitions trigger targeted re-renders of dependent components.
  • Atomic State Mutations - Implements atomic state mutations to ensure global application state transitions trigger targeted re-renders of dependent components.
  • Store Normalization Architectures - Maintains application data in a flat map using unique identities to prevent duplication and simplify updates.
  • Declarative Data Fetching - Specifies the exact data a component needs and manages the parameters used to fetch those updates dynamically.
  • Functional Reactive Programming Frameworks - Combines functional programming patterns with a reactive rendering engine to automatically update the user interface.
  • Identity-Based Data Resolution - Transforms flat data structures into hierarchical trees by resolving references between entities during the rendering phase.
  • Reader-Based Querying - Decouples the user interface from state by allowing components to declare data requirements resolved through a centralized read function.
  • State-to-UI Mapping - Decouples state from the visual layer by transforming raw application state into formatted data for UI display.
  • Global State Managers - Stores shared data in a central location so any component can access it regardless of its position in the tree.
  • Reactive UI Frameworks - Provides a framework for building interfaces that automatically update their visual state in response to data changes.
  • UI Components - Enables the creation of reusable UI components that encapsulate their own data requirements and identity resolution.
  • Virtual DOM Reconciliation - Maps a functional component tree to a real document object model using a diffing engine to update only changed elements.
  • User Interface Frameworks - Provides a functional API for interacting with a virtual DOM to create responsive web user interfaces.
  • Client-Server State Synchronization - Manages the synchronization and coherence between remote server state and local client caches.
  • Transactional Updates - Applies a group of data changes as a single unit to trigger updates across all dependent interface elements.
  • Dynamic Query Parameterization - Allows the parameters of a data request to be changed during execution to update displayed information.
  • Functional Components - Combines pure functional declarations with stateful lifecycle methods to build a reactive user interface hierarchy.
  • Data Merging - Combines new data fragments into the current application state and signals all affected components to refresh.
  • Client-Server State Synchronization - Coordinates data requests and updates using a reconciliation process that aligns local state with remote data sources.
  • Component State Management - Provides methods for managing component-level data and scheduling visual refreshes.
  • React Interface - Powerful interface for building complex React-based applications.

سجل النجوم

مخطط تاريخ النجوم لـ omcljs/omمخطط تاريخ النجوم لـ omcljs/om

بحث بالذكاء الاصطناعي

استكشف المزيد من المستودعات الرائعة

صف ما تحتاجه بلغة بسيطة — وسيقوم الذكاء الاصطناعي بترتيب آلاف المشاريع مفتوحة المصدر المنسقة حسب الصلة.

Start searching with AI

بدائل مفتوحة المصدر لـ Om

مشاريع مفتوحة المصدر مشابهة، مرتبة حسب عدد الميزات المشتركة مع Om.
  • day8/re-frameالصورة الرمزية لـ day8

    day8/re-frame

    5,532عرض على GitHub↗

    re-frame is a functional framework for building single-page applications in ClojureScript. It provides a centralized, immutable database that serves as the single source of truth for the entire application state, enforcing a strict unidirectional data flow where events trigger state transitions and subsequent view updates. The framework distinguishes itself through a reactive signal graph and an interceptor-based middleware pipeline. By treating application logic as a sequence of data-driven events and declarative side effects, it decouples business logic from the view layer. This architectur

    Clojureclojurescriptre-framereact
    عرض على GitHub↗5,532
  • reagent-project/reagentالصورة الرمزية لـ reagent-project

    reagent-project/reagent

    4,872عرض على GitHub↗

    Reagent is a framework for building web user interfaces using ClojureScript and React.js. It enables a functional programming approach to declarative UI design, where HTML structures and component hierarchies are defined using vector-based Hiccup syntax instead of JSX. The project differentiates itself through a reactive state management system based on atoms. It tracks which components dereference specific state atoms to trigger automatic re-renders and provides state cursors to isolate updates to specific paths of a larger state atom. It also includes utilities for wrapping native JavaScrip

    Clojureclojureclojurescriptfrontend
    عرض على GitHub↗4,872
  • facebook/reactالصورة الرمزية لـ facebook

    facebook/react

    245,669عرض على GitHub↗

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

    JavaScriptjavascriptuifrontend
    عرض على GitHub↗245,669
  • reactive/data-clientالصورة الرمزية لـ reactive

    reactive/data-client

    2,031عرض على GitHub↗

    Data-client is an asynchronous state management library designed to synchronize server data with frontend applications. It functions as a normalized cache manager that maps complex API responses into structured, relational entities, ensuring data consistency across the entire application. By providing a unified communication layer, the library supports both REST and GraphQL, allowing developers to bind network data directly to user interface components through declarative hooks. The library distinguishes itself through a robust architecture for optimistic user interface development, where loc

    TypeScriptexpofetchhooks
    عرض على GitHub↗2,031
عرض جميع البدائل الـ 30 لـ Om→

الأسئلة الشائعة

ما هي وظيفة omcljs/om؟

Om is a frontend state management library and reactive user interface framework that integrates ClojureScript functional programming with the React virtual DOM rendering engine. It provides a bridge to build responsive web interfaces where visual elements automatically update when underlying application data changes.

ما هي الميزات الرئيسية لـ omcljs/om؟

الميزات الرئيسية لـ omcljs/om هي: ClojureScript-React Bridges, Reader-Based State Querying, Frontend State Normalization, Data Value Normalization, Expression-Based Data Querying, Frontend State Management, State Mutations, Atomic State Mutations.

ما هي البدائل مفتوحة المصدر لـ omcljs/om؟

تشمل البدائل مفتوحة المصدر لـ omcljs/om: day8/re-frame — re-frame is a functional framework for building single-page applications in ClojureScript. It provides a centralized,… reagent-project/reagent — Reagent is a framework for building web user interfaces using ClojureScript and React.js. It enables a functional… facebook/react — React is a JavaScript library for building user interfaces based on a component-driven architecture and unidirectional… reactive/data-client — Data-client is an asynchronous state management library designed to synchronize server data with frontend… frejs/fre — This project is a concurrent UI library and virtual DOM framework. It functions as a state management system and… learnapollo/learnapollo — This project is an interactive learning resource and tutorial for implementing the Apollo GraphQL client. It provides…