This is the repo for Vue 2. For Vue 3, go to https://github.com/vuejs/core

Evan You f1179ace81 tests for $ event methods 12 anni fa
dist 6bc19e6e66 make all unit tests run in real browsers 12 anni fa
examples 2232cf2885 $index for each items 12 anni fa
src a21e8907d1 implement $ event methods, optimize for minification 12 anni fa
test f1179ace81 tests for $ event methods 12 anni fa
.gitignore 6bc19e6e66 make all unit tests run in real browsers 12 anni fa
.jshintrc a5e27b1174 naive implementation 12 anni fa
.npmignore 498778ec23 0.3.2 - make it actually work for Browserify 12 anni fa
Gruntfile.js 1e827e87aa compiler clean up, vm & partial API, jshint test files 12 anni fa
LICENSE.md 75fc96a357 license 12 anni fa
README.md 6fcce9752a readme 12 anni fa
TODO.md 98d1108dd1 detach container before batch DOM updates for sd-each 12 anni fa
bower.json 498778ec23 0.3.2 - make it actually work for Browserify 12 anni fa
component.json 4003fe2b07 implement new API per spec 12 anni fa
package.json e77edeecee update deps 12 anni fa

README.md

Seed.js

Mini MVVM framework

[ WARNING pre-alpha status - tests not complete! ]

Features

  • <10kb gzipped, no dependency.
  • DOM based templates with two-way data binding.
  • Precise and efficient DOM manipulation with granularity down to a TextNode.
  • POJSO (Plain Old JavaScript Objects) Models that can be shared across ViewModels with arbitrary levels of nesting.
  • Auto dependency extraction for computed properties.
  • Auto event delegation on repeated items.
  • Flexible API that allows easy encapsulation of components.
  • Supports partials, transitions and nested ViewModels.
  • Plays well with module systems. Primarily Component based, but can also be used with Browserify, as a CommonJS/AMD module or as a standalone library.

Browser Support

  • Chrome 8+
  • Firefix 3.6+
  • Safari 5.1+
  • IE9+ (IE9 needs classList polyfill)
  • Opera 11.6+
  • Android browser 3.0+
  • iOS Safari 5.0+

Installation

Component

$ component install yyx990803/seed

Browserify

$ npm install seed-mvvm

Bower

$ bower install seed

Module Loaders, e.g. RequireJS, SeaJS

Built versions in /dist or installed via Bower can be used directly as a CommonJS or AMD module.

Standalone

Simply include a built version in /dist or installed via Bower with a script tag. seed will be registered as a global variable. You can also use it directly over Browserify CDN at http://wzrd.in/standalone/seed-mvvm

Development

First, install dependencies:

$ npm install

To watch and auto-build dev version during development:

$ grunt watch

To test:

$ grunt test

To build:

$ grunt

Quickstart

Simplest possible example:

HTML

<div id="demo">
    <p sd-text="hello"></p>
</div>

JavaScript

new seed.ViewModel({
    el: '#demo',
    data: {
        hello: 'Hello World!'
    }
})

License

MIT