MCPcopy
hub / github.com/marko-js/marko

github.com/marko-js/marko @5.39.7 sqlite

repository ↗ · DeepWiki ↗ · release 5.39.7 ↗ · compare 2 versions
5,131 symbols 30,730 edges 4,568 files 134 documented · 3%
README

Marko

A declarative, HTML-based language that makes building web apps fun 🔥

NPM Discord Chat Continuous Integration status Code coverage % # of monthly downloads OpenSSF Best Practices

DocsTry OnlineContributeGet Support

Intro

Marko is HTML reimagined as a language for building dynamic and reactive user interfaces. Almost any valid HTML is valid Marko, and Marko extends HTML for building modern applications more declaratively. Among these extensions are components, conditionals and loops, and a full reactivity system.

Example Component

The following renders a button and a counter of how many times the button has been pressed:

click-count.marko

// HTML + JavaScript = 💜
<let/count=0>
<button onClick() { count++ }>
  Clicked ${count} times
</button>

Getting Started

  1. npm init marko
  2. Read the docs

Community & Support

Hang out in our [Discord server](https://discord.gg/marko) to ask questions & discuss marko Keep up with the community on Bluesky at [@markojs.com](https://bsky.app/profile/markojs.com) Tweet to [@MarkoDevTeam](https://twitter.com/MarkoDevTeam) or use the [#markojs](https://twitter.com/search?q=%23markojs%20OR%20%40markodevteam&f=live) hashtag Browse the code, open issues, & make pull requests on [GitHub](https://github.com/marko-js/marko)

Contributors

Marko would not be what it is without all those who have contributed ✨

All marko-js/marko GitHub contributors

Get Involved!

Extension points exported contracts — how you extend this code

Animate (Interface)
* @see https://svgwg.org/specs/animations/#AnimateElement
packages/runtime-tags/tags-html.d.ts
TaglibLookup (Interface)
(no doc) [1 implementers]
packages/compiler/babel-utils.d.ts
Emitter (Interface)
(no doc) [1 implementers]
packages/runtime-class/index.d.ts
Sizes (Interface)
(no doc)
scripts/sizes.ts
AnimateMotion (Interface)
* @see https://svgwg.org/specs/animations/#AnimateMotionElement
packages/runtime-tags/tags-html.d.ts
AttributeDefinition (Interface)
(no doc)
packages/compiler/babel-utils.d.ts
NativeTags (Interface)
(no doc)
packages/runtime-class/tags-html.d.ts
Result (Interface)
(no doc)
scripts/sizes.ts

Core symbols most depended-on inside this repo

_scope_id
called by 2543
packages/runtime-tags/src/html/writer.ts
_html
called by 2217
packages/runtime-tags/src/dom/dom.ts
_template
called by 2128
packages/runtime-tags/src/dom/template.ts
_scope_reason
called by 2011
packages/runtime-tags/src/html/writer.ts
_el_resume
called by 1933
packages/runtime-tags/src/html/writer.ts
_script
called by 1917
packages/runtime-tags/src/dom/signals.ts
writeScope
called by 1845
packages/runtime-tags/src/html/writer.ts
w
called by 1183
packages/runtime-tags/src/dom/resume.ts

Shape

Function 4,338
Interface 429
Method 254
Class 82
Enum 28

Languages

TypeScript100%

Modules by API surface

packages/runtime-tags/tags-html.d.ts184 symbols
packages/runtime-class/tags-html.d.ts116 symbols
packages/runtime-tags/src/html/writer.ts97 symbols
packages/runtime-tags/src/html/serializer.ts94 symbols
packages/runtime-tags/src/translator/util/references.ts82 symbols
packages/runtime-class/index.d.ts46 symbols
packages/compiler/src/taglib/loader/loadTagFromProps.js41 symbols
packages/runtime-tags/src/translator/util/signals.ts38 symbols
packages/compiler/src/babel-plugin/parser.js38 symbols
packages/runtime-tags/src/dom/controllable.ts29 symbols
packages/runtime-tags/src/translator/util/sections.ts28 symbols
packages/runtime-tags/src/translator/util/optional.ts28 symbols

Used by 3 indexed graphs manifest dependencies, hub-wide

Dependencies from manifests, versioned

@babel/cli7.28.6 · 1×
@babel/code-frame7.29.0 · 1×
@babel/core7.29.0 · 1×
@babel/generator7.29.1 · 1×
@babel/parser7.29.3 · 1×
@babel/plugin-syntax-typescript7.28.6 · 1×
@babel/plugin-transform-modules-commonjs7.28.6 · 1×
@babel/plugin-transform-typescript7.28.6 · 1×
@babel/preset-env7.29.5 · 1×
@babel/preset-typescript7.28.5 · 1×
@babel/register7.29.3 · 1×
@babel/traverse7.29.0 · 1×

For agents

$ claude mcp add marko \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact