awesome-repositories.com
Blog
awesome-repositories.com

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

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectAboutHow we rankPressMCP server
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
marko-js avatar

marko-js/marko

0
View on GitHub↗
14,375 stars·663 forks·JavaScript·MIT·11 viewsmarkojs.com↗

Marko

Marko is a component-based web framework and HTML-based template engine used to build reactive user interfaces. It functions as a server-side rendering framework that compiles declarative templates into optimized JavaScript for efficient browser execution.

The framework utilizes virtual DOM-less rendering to map template expressions directly to DOM nodes. It employs ahead-of-time template compilation and server-side HTML streaming to send rendered fragments to the client in chunks.

The system manages user interfaces through a component-based view hierarchy with reactive data binding and fine-grained DOM patching. It covers the end-to-end process of web application development, from template compilation to the composition of reactive interfaces.

Features

  • User Interface Frameworks - Provides a comprehensive framework for building interactive and reactive web user interfaces.
  • Template Compilation - Compiles declarative HTML templates into optimized JavaScript functions during the build process to minimize runtime overhead.
  • Component Hierarchies - Organizes user interfaces into a tree of encapsulated, stateful components that manage their own logic.
  • Reactive UI Frameworks - Enables the composition of dynamic interfaces that automatically update the view when underlying state changes.
  • Reactive UI Libraries - Provides a reactive library that automatically updates the rendered display in response to data state changes.
  • Component-Based Web Frameworks - Functions as a component-based framework for building web pages using reusable, isolated units with independent logic.
  • HTML Templating Engines - Acts as an HTML-based template engine that compiles declarative files into optimized JavaScript.
  • Reactive Data Binding - Synchronizes template variables with state objects so that data modifications automatically trigger UI updates.
  • Server-Side Rendering Frameworks - Renders components on the server to improve performance and SEO before sending markup to the client.
  • DOM Patching Engines - Implements a fine-grained patching engine to update specific DOM elements without re-rendering entire component trees.
  • Direct DOM Mapping - Utilizes virtual DOM-less rendering to map template expressions directly to DOM nodes for improved efficiency.
  • HTML Streaming - Streams rendered HTML fragments to the client in chunks for faster initial content display.
  • Public Web Application Development - Provides the necessary tooling for developing high-performance, interactive public-facing web applications.
  • Template Engines - Fast, asynchronous HTML template engine.
  • Templating - HTML-based templating engine with streaming support.
  • Templating Engines - A fast, lightweight, HTML-based templating engine for Node.js and the browser with async, streaming, custom tags and CommonJS modules as compiled output.
  • Web Frameworks - Declarative, HTML-based language for building web apps.

Star history

Star history chart for marko-js/markoStar history chart for marko-js/marko

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

Frequently asked questions

What does marko-js/marko do?

Marko is a component-based web framework and HTML-based template engine used to build reactive user interfaces. It functions as a server-side rendering framework that compiles declarative templates into optimized JavaScript for efficient browser execution.

What are the main features of marko-js/marko?

The main features of marko-js/marko are: User Interface Frameworks, Template Compilation, Component Hierarchies, Reactive UI Frameworks, Reactive UI Libraries, Component-Based Web Frameworks, HTML Templating Engines, Reactive Data Binding.

What are some open-source alternatives to marko-js/marko?

Open-source alternatives to marko-js/marko include: pugjs/pug — Pug is a template engine and compiler that transforms whitespace-sensitive shorthand syntax into standard HTML. It… mde/ejs — EJS is a JavaScript templating engine used to generate HTML by embedding executable JavaScript logic and dynamic data… ripple-ts/ripple — Ripple is a full-stack TypeScript web framework and reactive UI library used for building interfaces with server-side… leptos-rs/leptos — Leptos is a full-stack Rust web framework designed for building reactive applications that share logic and types… handlebars-lang/handlebars.js — Handlebars.js is a JavaScript templating engine and logic-less template library used to generate HTML or text by… linkedin/dustjs — Dustjs is a JavaScript templating engine and asynchronous template renderer. It functions as an isomorphic HTML…

Open-source alternatives to Marko

Similar open-source projects, ranked by how many features they share with Marko.
  • pugjs/pugpugjs avatar

    pugjs/pug

    21,850View on GitHub↗

    Pug is a template engine and compiler that transforms whitespace-sensitive shorthand syntax into standard HTML. It functions as both a Node.js template engine for server-side rendering and a browser-side precompiler for client-side templating. The system converts template files into executable JavaScript functions to increase rendering speed. This allows for the generation of full HTML documents by combining dynamic data and logical structures, either on a server or as standalone JavaScript files for execution directly in the browser. The engine manages the translation process through HTML t

    JavaScript
    View on GitHub↗21,850
  • mde/ejsmde avatar

    mde/ejs

    8,105View on GitHub↗

    EJS is a JavaScript templating engine used to generate HTML by embedding executable JavaScript logic and dynamic data into template files. It functions as both a server-side template processor and a client-side rendering engine, allowing for the creation of dynamic markup in both backend and frontend environments. The engine supports the creation of modular web layouts through partial template inclusion, where smaller reusable components are inserted into parent pages. Users can modify the template syntax by defining custom delimiters to avoid conflicts with other languages. The project cove

    JavaScript
    View on GitHub↗8,105
  • ripple-ts/rippleRipple-TS avatar

    Ripple-TS/ripple

    7,379View on GitHub↗

    Ripple is a full-stack TypeScript web framework and reactive UI library used for building interfaces with server-side rendering. It organizes user interfaces into a hierarchy of reusable, scoped components with built-in state management and client-side hydration. The framework is distinguished by its fine-grained reactivity, which updates specific DOM elements without requiring full component re-renders. It integrates server-side logic and client-side components within a single TypeScript codebase, enabling a unified full-stack development workflow. The system covers a broad range of capabil

    JavaScript
    View on GitHub↗7,379
  • leptos-rs/leptosleptos-rs avatar

    leptos-rs/leptos

    20,993View on 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
    View on GitHub↗20,993
See all 30 alternatives to Marko→