# baidu/san

A fast, portable, flexible JavaScript component framework

Repository: https://github.com/baidu/san
Canonical: https://ross.abutalabs.com/products/san
Homepage: https://baidu.github.io/san/
Language: JavaScript
License: MIT
License Family: permissive
Topics: mvvm, javascript, frontend, framework, component, san
Last push: 2026-07-15T11:59:18+00:00

## Health v2 (maintenance only)
Score: 79/100 (v2, computed 2026-09-02T17:46:02.011165+00:00)
- activity 92, release rhythm 51, longevity 100
- inputs: {"age_days": 3656, "days_push": 49, "days_rel": 244, "gap_med": 50, "n_releases_24m": 4}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 4737, forks 538 (observed 2026-08-28T04:08:57.761069+00:00)

## What it is
San is a fast, lightweight (under 17k gzipped), flexible JavaScript MVVM component framework developed by Baidu. It offers declarative HTML templates, data-driven views, componentization, server-side rendering support, and an ecosystem of companion tools including a router, store, CLI, and devtools.

## Use cases
- build a single-page web app with a lightweight MVVM framework
- create reusable UI components with data binding
- server-side render components for faster first-screen load
- reverse-parse existing HTML into components for first-screen optimization
- manage application state with a flux-style one-way data flow
- build web apps that support older browsers with broad compatibility

## When to choose
- you need a very small-footprint component framework
- your team prefers HTML-style declarative templates
- you must support legacy browsers without Proxy-based reactivity
- you want SSR with component reverse-parsing for first-screen performance
- you need freedom in module management (ESNext, AMD, or globals)

## When to avoid
- you want the largest ecosystem and community support (React/Vue)
- you rely on npm packages built specifically for React or Vue
- your team has no experience with San and hiring is a concern
- you need cutting-edge features like fine-grained signals or concurrent rendering

## Facets
- artifact type: framework
- maturity: active
- function: frontend-framework, ui-components, state-management, ssr, routing, templating
- domain: web-development, frontend
- platform: browser, cross-platform
- tags: mvvm, javascript, component-framework, data-binding, lightweight, baidu, nodejs

## Member repositories
- baidu/san (main) score 79

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:08:57.761069+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-29T18:18:59.143165+00:00, confidence not recorded.
  - readme: https://github.com/baidu/san (fetched 2026-08-28T04:08:57.761069+00:00, sha 55cd4707772a)
  - homepage: https://baidu.github.io/san/ (fetched 2026-08-29T09:02:45.716885+00:00, sha 72e988d6bf43)
- Data as of 2026-08-30T08:39:29.467469+00:00.
