30 open-source projects similar to choojs/choo, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best Choo alternative.
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
This project is a comprehensive sample library and implementation guide for ASP.NET Core. It provides a collection of practical examples and projects that demonstrate how to build web applications, RESTful APIs, and high-performance services. The repository focuses on a variety of architectural patterns, including the development of Minimal APIs, contract-first gRPC services, and real-time communication using WebSockets and Server-Sent Events. It includes detailed implementations for user identity and security, such as token-based authentication and CSRF protection. The codebase covers a bro
page.js is a client-side JavaScript router for single-page applications that maps URL patterns to executable functions. It functions as a navigation engine and browser history manager, implementing a middleware-based path-mapping system similar to the Express web framework. The library distinguishes itself through an Express-style router model, utilizing a middleware callback chain and a shared context object to pass data between navigation handlers. It supports advanced window management, allowing for multiple router instances to handle navigation independently across different windows or em
Inertia is a server-driven frontend framework designed to create monolithic single page applications. It acts as a state synchronization protocol and client-side routing bridge, allowing developers to build interactive experiences using modern JavaScript component libraries while keeping routing and controllers on the server. This approach eliminates the need for a separate REST or GraphQL API layer by passing data from server controllers to frontend components as props via JSON payloads. The framework distinguishes itself by utilizing adapter-based integration to link various backend environ
Choo is a functional frontend framework for building web applications. It consists of a suite of tools including a client-side router, a DOM diffing engine, and an isomorphic JavaScript library. The project utilizes an event-driven architecture to decouple business logic from rendering, coordinating state updates and view refreshes through a central event emitter. It employs isomorphic rendering to generate HTML output using a single logic path for both server-side strings and client-side DOM manipulation. The framework manages a shared state object that synchronizes data across handlers and
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
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 uni
This project is a structured architectural layer for Backbone.js that implements the model-view-controller pattern for building complex single-page applications. It serves as a view management library and application framework that organizes views and data into manageable components and regions. The framework provides a centralized event aggregator pattern to coordinate communication between decoupled application modules without direct dependencies. It also includes a configuration-based client-side routing engine that maps browser URLs to specific controller actions. The system covers front
Effector is a reactive state management library designed for building complex, event-driven applications. It functions as a data flow engine that models application logic as a directed acyclic graph, ensuring that state updates propagate automatically through interconnected nodes. By utilizing atomic state updates and declarative unit composition, the library maintains data consistency and provides a predictable execution model for managing application state. The project distinguishes itself through its framework-agnostic architecture, which decouples business logic from user interface implem
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
Nuxt is a full-stack framework for building Vue.js applications. It serves as an application orchestrator that integrates server-side rendering, static site generation, and backend API logic within a single unified project. The framework uses a file-based routing system to automatically generate application URLs based on the project's folder and file structure. It supports multi-strategy web rendering, allowing for a combination of server-side, static, and hybrid rendering techniques to optimize page load speeds and search engine visibility. The project provides automated component discovery
Riot is a component-based library for building user interfaces through modular, single-file components. It functions as a framework for creating reusable elements that combine markup, logic, and scoped styles, which are then compiled into standard JavaScript functions for browser execution. The library distinguishes itself by utilizing direct rendering, which updates the document object model by tracking state changes without the overhead of a virtual representation. It supports server-side rendering and hydration to improve initial page load performance and search engine indexing. Developers
Lit is a library for building lightweight, interoperable web components. It provides a base class that leverages native browser APIs to encapsulate state, logic, and styles, allowing developers to create custom elements that function consistently across any modern web project. The framework distinguishes itself through a reactive property system that automatically triggers efficient, batched DOM updates. By utilizing tagged template literals, it defines declarative UI structures that are compiled into optimized update instructions. Its architecture emphasizes modularity through a reactive con
Vue.js Client-Side Router is a routing library for Vue.js that synchronizes the browser URL with application state to enable single-page application navigation. It functions as a URL-to-component mapper, rendering specific components based on the current URL path and dynamic route patterns. The project serves as a browser history manager that controls how internal routes map to the browser URL using various history strategies. It also provides a navigation guard framework to execute logic and access control during route transitions. The library covers dynamic route management, programmatic U
This library is a browser history API wrapper and client-side routing state manager. It provides a programmatic interface for managing the browser session history stack and synchronizing application state changes with the URL. The project functions as a JavaScript session history manager that enables custom navigation and routing control. It handles the synchronization of client-side routing state to ensure consistent back and forward movements within the browser. The system covers broader capabilities including browser session history management and general JavaScript navigation control.
Inferno is a virtual DOM UI library and high-performance DOM renderer used for building component-based user interfaces. It functions as a server-side rendering engine and a client-side framework that synchronizes application state with the visual interface through a declarative structure. The project distinguishes itself as a React-compatible UI framework, providing a compatibility layer that allows components designed for other reactive environments to run without modification. Its capability surface covers virtual DOM management, including node diffing and reconciliation, and a full serve
Vue.js Client-Side Router is a routing library that maps browser URLs to Vue.js components to enable the creation of single-page applications. It functions as a navigation engine that manages browser history and URL state to allow page transitions without full browser reloads. The system utilizes a nested route manager to render hierarchical views that match complex URL structures. It includes navigation guard middleware to intercept, validate, or redirect route transitions before components are rendered. A client-side history handler synchronizes application state with the browser URL using
Fuelux is a JavaScript UI framework and front-end component library used to build consistent, unified user interfaces. It provides a collection of lightweight controls and CSS extensions designed to ensure visual and functional consistency across different web views. The project employs a modular frontend architecture, organizing functionality into independent JavaScript control modules. This design allows the framework to remain lightweight and extendable while decoupling functional behavior from visual CSS definitions. The framework handles interface development through component-based sta
React is a JavaScript library for building user interfaces from encapsulated, reusable components. It renders views declaratively, automatically updating only the parts of the interface that change when underlying data shifts, while leaving stable sections untouched. Its rendering engine breaks work into incremental, prioritised units that can pause, resume, or abort without blocking the main thread. A diffing algorithm computes minimal changes between staged UI trees, and core rendering logic remains decoupled from any specific output target. State and side-effect logic attach to functional
Vue is a progressive, component-based JavaScript framework designed for building reactive user interfaces and single-page applications. It centers on a declarative template system that transforms HTML into efficient render functions, allowing developers to organize complex interfaces into isolated, reusable units that synchronize automatically with application state. The framework distinguishes itself through a dependency-tracking reactivity system that monitors data access during rendering to trigger precise updates. It provides a flexible architecture that supports both incremental adoption
Evergreen is a React UI component library and design system framework. It provides a collection of pre-styled, accessible interface elements used to build consistent web applications. The library functions as a server-side rendered UI kit, allowing components to generate HTML on the server to improve page load speeds and search engine visibility. It includes a centralized styling layer for managing colors, typography, and spacing through custom UI theming. The framework covers accessible web design and enterprise interface design, utilizing a token-based styling system to maintain a uniform
Vercel is a cloud platform for building, deploying, and scaling web applications. It provides a unified infrastructure that automates the build process by detecting project frameworks and distributing static and dynamic content through a global content delivery network. The platform executes application logic using serverless functions that scale automatically based on real-time traffic demand. The platform distinguishes itself through a centralized AI gateway that proxies requests to multiple model providers, enabling standardized authentication, observability, and cost tracking. It supports
This project is a functional programming compiler and JavaScript transpiler that transforms a statically typed language into optimized JavaScript for web browsers. It serves as a frontend architecture framework, providing a static type system and a package manager that enforces semantic versioning. The compiler uses a type-checking engine with automatic type inference to prevent runtime errors and guide code refactoring. It implements a structural pattern for managing application state and rendering user interfaces through a virtual DOM, utilizing immutable data and purity-based state transit
go-app is a WebAssembly frontend framework and UI library for building progressive web apps using the Go programming language. It enables the execution of Go code directly in the browser to manage application logic and client-side views. The framework provides a component-based system for creating reusable interface elements with declarative syntax and automatic state synchronization. It includes a client-side router that maps URL paths to specific interface components to enable navigation within a single-page application. The project covers general frontend development capabilities, includi
Sapper is a universal web application framework and server-side rendering framework for Svelte. It enables the development of applications that render views on the server for fast initial loads and hydrate them on the client for subsequent interactivity. The project features a file-based routing engine that maps URL paths to components based on the file system structure. It also functions as a static site generator, exporting production-ready HTML, CSS, and JavaScript files for hosting in environments without a live server. The framework covers full-stack development capabilities, including
Webstudio is a visual CMS and website builder that provides a visual development environment for designing and publishing websites. It functions as an AI-powered design tool, a REST and GraphQL API client, and an atomic CSS compiler. The platform distinguishes itself through generative AI capabilities for creating layout variants and refining visual styles from text prompts. It integrates a headless CMS workflow that maps external data sources to visual components and utilizes a specialized compiler to convert design tokens into deduplicated atomic CSS for optimized page load speeds. The sys
React is a JavaScript library for building user interfaces based on a component-driven architecture and unidirectional data flow.
San is an isomorphic JavaScript framework and single-page application toolkit used for building user interfaces with reusable components. It functions as a reactive UI library that synchronizes application state with the interface through data binding and declarative templates. The framework is distinguished by its support for both server-side HTML generation and client-side hydration to improve initial load performance and search engine optimization. It employs a specialized template-to-array compilation process to compress template structures and reduce network costs. The project provides
This project is a starter template and boilerplate for building isomorphic web applications using React, Redux, and Express. It functions as a server-side rendering framework that generates HTML on the server and rehydrates it on the client to improve search engine optimization and initial page load speeds. The project is distinguished by its focus on developer experience, featuring a configuration for hot module replacement. This allows for the real-time updating of the user interface and application state during development without requiring a full browser refresh. The framework provides c
Ant Design Vue is a comprehensive UI component library and enterprise design system for Vue. It provides a collection of reusable user interface elements designed specifically for building professional web applications and complex business software. The project functions as a server-side rendering framework, enabling the generation of HTML on the server to increase initial page load speeds and improve search engine visibility. It is designed for the implementation of corporate design systems and the construction of data-heavy internal tools, such as admin dashboards. The library covers broad