├── ember-v2.13.0
├── app
│ ├── models
│ │ └── .gitkeep
│ ├── routes
│ │ └── .gitkeep
│ ├── styles
│ │ └── .gitkeep
│ ├── components
│ │ ├── .gitkeep
│ │ └── my-table.js
│ ├── controllers
│ │ └── .gitkeep
│ ├── helpers
│ │ ├── .gitkeep
│ │ └── eq.js
│ ├── templates
│ │ ├── components
│ │ │ └── .gitkeep
│ │ └── index.hbs
│ ├── resolver.js
│ ├── router.js
│ ├── app.js
│ └── index.html
├── tests
│ ├── unit
│ │ └── .gitkeep
│ ├── integration
│ │ └── .gitkeep
│ ├── test-helper.js
│ ├── helpers
│ │ ├── destroy-app.js
│ │ ├── resolver.js
│ │ ├── start-app.js
│ │ └── module-for-acceptance.js
│ ├── .jshintrc
│ └── index.html
├── vendor
│ └── .gitkeep
├── .watchmanconfig
├── .bowerrc
├── public
│ ├── robots.txt
│ └── crossdomain.xml
├── bower.json
├── testem.js
├── .ember-cli
├── .gitignore
├── .travis.yml
├── .editorconfig
├── .jshintrc
└── ember-cli-build.js
├── marko-v4.3.0
├── .gitignore
├── src
│ ├── client.js
│ └── main
│ │ └── components
│ │ └── row.marko
├── index.html
└── package.json
├── polymer-v1.7.0
├── .gitignore
├── polymer.json
├── bower.json
├── index.html
└── package.json
├── binding.scala-v10.0.1
├── .gitignore
├── project
│ ├── build.properties
│ └── plugins.sbt
├── build.sbt
├── js
│ └── build.sbt
├── package.json
└── src
│ └── main
│ └── assets
│ └── index.html
├── riot-v3.5.0
├── .babelrc
├── src
│ └── main.es6.js
├── package.json
├── index.html
└── webpack.config.js
├── Datum-v0.8.0
├── .babelrc
├── package.json
└── webpack.config.js
├── dio-v3.0.5
├── .babelrc
├── index.html
├── webpack.config.js
└── package.json
├── glimmer-v0.3.10
├── src
│ ├── ui
│ │ ├── styles
│ │ │ └── app.scss
│ │ ├── components
│ │ │ ├── eq
│ │ │ │ └── helper.ts
│ │ │ └── if
│ │ │ │ └── helper.ts
│ │ └── index.html
│ ├── index.ts
│ └── main.ts
├── public
│ └── robots.txt
├── config
│ ├── environment.js
│ ├── module-map.d.ts
│ └── resolver-configuration.d.ts
├── tsconfig.json
├── .editorconfig
├── README.md
├── package.json
└── ember-cli-build.js
├── knockout-v3.4.1
├── .babelrc
├── package.json
└── webpack.config.js
├── marionette-v3.3.1
├── .babelrc
├── package.json
└── webpack.config.js
├── ractive-edge
├── .babelrc
├── index.html
├── package.json
└── webpack.config.js
├── vanillajs-keyed
├── .babelrc
├── webpack.config.js
└── package.json
├── vue-v2.3.3-keyed
├── .babelrc
├── src
│ └── main.es6.js
├── index.html
├── package.json
└── webpack.config.js
├── vanillajs-non-keyed
├── .babelrc
├── webpack.config.js
└── package.json
├── vue-v2.3.3-non-keyed
├── .babelrc
├── src
│ └── main.es6.js
├── index.html
├── package.json
└── webpack.config.js
├── angular-v1.6.3-keyed
├── .babelrc
├── webpack.config.js
├── src
│ └── main.js
└── package.json
├── preact-v7.1.0
├── .babelrc
├── index.html
├── webpack.config.js
├── package.json
└── src
│ └── Row.jsx
├── ractive-v0.8.12-keyed
├── .babelrc
├── index.html
├── package.json
└── webpack.config.js
├── favicon.ico
├── ractive-v0.8.12-non-keyed
├── .babelrc
├── index.html
├── package.json
└── webpack.config.js
├── react-lite-v0.15.30
├── .babelrc
├── src
│ ├── main.es6.js
│ └── Row.jsx
├── index.html
├── webpack.config.js
└── package.json
├── react-v15.5.4-keyed
├── .babelrc
├── src
│ ├── main.es6.js
│ └── Row.jsx
├── index.html
├── package.json
└── webpack.config.js
├── react-v15.5.4-non-keyed
├── .babelrc
├── src
│ ├── main.es6.js
│ └── Row.jsx
├── index.html
├── package.json
└── webpack.config.js
├── bobril-v7.1.2
├── .vscode
│ └── settings.json
├── index.html
└── tsconfig.json
├── mithril-v1.1.1
├── .babelrc
├── src
│ └── main.es6.js
├── index.html
├── package.json
└── webpack.config.js
├── react-v15.5.4-redux-v3.6.0
├── .babelrc
├── index.html
├── src
│ └── main.es6.js
├── webpack.config.js
└── package.json
├── vidom-v0.9.8
├── .babelrc
├── src
│ └── main.es6.js
├── index.html
├── package.json
└── webpack.config.js
├── simulacra-v2.1.1
├── .babelrc
├── webpack.config.js
└── package.json
├── css
├── currentStyle.css
├── useOriginalBootstrap.css
├── bootstrap
│ ├── fonts
│ │ ├── glyphicons-halflings-regular.eot
│ │ ├── glyphicons-halflings-regular.ttf
│ │ ├── glyphicons-halflings-regular.woff
│ │ └── glyphicons-halflings-regular.woff2
│ ├── grunt
│ │ ├── .jshintrc
│ │ └── bs-commonjs-generator.js
│ ├── dist
│ │ ├── fonts
│ │ │ ├── glyphicons-halflings-regular.eot
│ │ │ ├── glyphicons-halflings-regular.ttf
│ │ │ ├── glyphicons-halflings-regular.woff
│ │ │ └── glyphicons-halflings-regular.woff2
│ │ └── js
│ │ │ └── npm.js
│ ├── less
│ │ ├── mixins
│ │ │ ├── center-block.less
│ │ │ ├── size.less
│ │ │ ├── opacity.less
│ │ │ ├── text-emphasis.less
│ │ │ ├── text-overflow.less
│ │ │ ├── background-variant.less
│ │ │ ├── tab-focus.less
│ │ │ ├── resize.less
│ │ │ ├── labels.less
│ │ │ ├── progress-bar.less
│ │ │ ├── reset-filter.less
│ │ │ ├── nav-divider.less
│ │ │ ├── alerts.less
│ │ │ ├── nav-vertical-align.less
│ │ │ ├── responsive-visibility.less
│ │ │ ├── border-radius.less
│ │ │ ├── reset-text.less
│ │ │ ├── pagination.less
│ │ │ ├── panels.less
│ │ │ ├── hide-text.less
│ │ │ ├── list-group.less
│ │ │ ├── clearfix.less
│ │ │ ├── table-row.less
│ │ │ └── image.less
│ │ ├── wells.less
│ │ ├── breadcrumbs.less
│ │ ├── responsive-embed.less
│ │ ├── component-animations.less
│ │ ├── close.less
│ │ ├── thumbnails.less
│ │ ├── utilities.less
│ │ ├── pager.less
│ │ ├── media.less
│ │ ├── mixins.less
│ │ └── labels.less
│ ├── CHANGELOG.md
│ └── LICENSE
└── main.css
├── aurelia-v1.1.0
├── favicon.ico
├── src
│ └── main.js
├── jsconfig.json
├── index.html
└── .babelrc
├── elm-v0.18.0
├── .gitignore
├── index.html
├── elm-package.json
└── package.json
├── .travis.yml
├── angular-v4.1.2-keyed
├── .gitignore
├── src
│ ├── main.aot.ts
│ └── main.jit.ts
├── index.jit.html
├── index.html
├── rollup.config.aot.js
├── rollup.config.jit.js
├── tsconfig.json
├── closure.conf
└── package.json
├── angular-v4.1.2-non-keyed
├── .gitignore
├── src
│ ├── main.aot.ts
│ └── main.jit.ts
├── index.jit.html
├── index.html
├── rollup.config.aot.js
├── rollup.config.jit.js
├── tsconfig.json
├── closure.conf
└── package.json
├── rx-domh-v0.0.2-rxjs-v5.3.0
├── .babelrc
├── index.html
├── package.json
└── webpack.config.js
├── react-v15.5.4-mobX-v3.1.9
├── .babelrc
├── index.html
├── webpack.config.js
├── src
│ └── Row.jsx
└── package.json
├── inferno-v3.1.2-keyed
├── src
│ └── main.es6.js
├── .babelrc
├── index.html
├── package.json
└── webpack.config.js
├── inferno-v3.1.2-non-keyed
├── src
│ └── main.es6.js
├── .babelrc
├── index.html
├── package.json
└── webpack.config.js
├── ivi-v0.7.0
├── .gitignore
├── index.html
└── package.json
├── kivi-v1.0.0-rc2
├── .gitignore
├── index.html
├── tsconfig.json
└── package.json
├── svelte-v1.8.1
├── src
│ └── main.es6.js
├── index.html
├── rollup.config.js
└── package.json
├── cyclejs-dom-v17.1.0
├── .babelrc
├── index.html
├── package.json
└── webpack.config.js
├── angular-v2.4.9-keyed
├── typings
│ ├── index.d.ts
│ └── globals
│ │ ├── node
│ │ └── typings.json
│ │ ├── core-js
│ │ └── typings.json
│ │ └── jasmine
│ │ └── typings.json
├── typings.json
├── src
│ ├── main.aot.ts
│ └── main.jit.ts
├── index.html
├── tsconfig.json
└── package.json
├── angular-v2.4.9-non-keyed
├── typings
│ ├── index.d.ts
│ └── globals
│ │ ├── node
│ │ └── typings.json
│ │ ├── core-js
│ │ └── typings.json
│ │ └── jasmine
│ │ └── typings.json
├── typings.json
├── src
│ ├── main.aot.ts
│ └── main.jit.ts
├── index.html
├── tsconfig.json
└── package.json
├── slim-js-v2.8.20
├── .babelrc
├── index.html
└── package.json
├── surplus-v0.4.0
├── src
│ └── main.ts
├── webpack.config.js
├── index.html
├── tsconfig.json
└── package.json
├── plastiq-v1.33.0
├── index.html
├── package.json
└── webpack.config.js
├── pico-dom-v0.18.0
├── index.html
├── src
│ ├── time.js
│ └── main.js
└── package.json
├── domvm-v2.1.4-keyed
├── index.html
├── build.js
└── package.json
├── stem-v0.2.70
├── .babelrc
├── .gitignore
├── index.html
├── src
│ ├── rollup.config.js
│ └── Row.jsx
├── package.json
└── README.md
├── domvm-v2.1.4-non-keyed
├── index.html
├── build.js
└── package.json
├── hyperapp-v0.9.1
├── index.html
├── rollup.config.js
├── src
│ └── rowsView.js
└── package.json
├── choo-v5.4.0
├── index.html
├── package.json
└── src
│ └── rowsView.js
├── tsers-v1.0.0
├── index.html
└── package.json
├── webdriver-ts
├── src
│ └── createIndex.ts
├── tsconfig.json
├── README.txt
├── package.json
└── index.dot
├── webdriver-java
├── src
│ └── main
│ │ └── java
│ │ └── net
│ │ └── stefankrause
│ │ └── Framework.java
└── package.json
├── nx-v1.0.0-beta.2.0.1-keyed
├── package.json
└── src
│ ├── timer.js
│ └── randomSentence.js
├── nx-v1.0.0-beta.2.0.1-non-keyed
├── package.json
└── src
│ ├── timer.js
│ └── randomSentence.js
├── cleanup.sh
├── install.js
├── package.json
└── .gitignore
/ember-v2.13.0/app/models/.gitkeep:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/ember-v2.13.0/app/routes/.gitkeep:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/ember-v2.13.0/app/styles/.gitkeep:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/ember-v2.13.0/tests/unit/.gitkeep:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/ember-v2.13.0/vendor/.gitkeep:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/marko-v4.3.0/.gitignore:
--------------------------------------------------------------------------------
1 | *.marko.js
--------------------------------------------------------------------------------
/ember-v2.13.0/app/components/.gitkeep:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/ember-v2.13.0/app/controllers/.gitkeep:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/ember-v2.13.0/app/helpers/.gitkeep:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/polymer-v1.7.0/.gitignore:
--------------------------------------------------------------------------------
1 | build/
2 |
--------------------------------------------------------------------------------
/ember-v2.13.0/tests/integration/.gitkeep:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/ember-v2.13.0/app/templates/components/.gitkeep:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/binding.scala-v10.0.1/.gitignore:
--------------------------------------------------------------------------------
1 | target/
2 | local.sbt
--------------------------------------------------------------------------------
/riot-v3.5.0/.babelrc:
--------------------------------------------------------------------------------
1 | {
2 | "presets": ["es2015-riot"]
3 | }
--------------------------------------------------------------------------------
/Datum-v0.8.0/.babelrc:
--------------------------------------------------------------------------------
1 | {
2 | "presets" : [ "babel-preset-es2015"]
3 | }
--------------------------------------------------------------------------------
/binding.scala-v10.0.1/project/build.properties:
--------------------------------------------------------------------------------
1 | sbt.version=0.13.13
2 |
--------------------------------------------------------------------------------
/dio-v3.0.5/.babelrc:
--------------------------------------------------------------------------------
1 | {
2 | "presets" : [ "babel-preset-es2015"]
3 | }
--------------------------------------------------------------------------------
/glimmer-v0.3.10/src/ui/styles/app.scss:
--------------------------------------------------------------------------------
1 | h1 {
2 | color: #444;
3 | }
4 |
--------------------------------------------------------------------------------
/ember-v2.13.0/.watchmanconfig:
--------------------------------------------------------------------------------
1 | {
2 | "ignore_dirs": ["tmp", "dist"]
3 | }
4 |
--------------------------------------------------------------------------------
/knockout-v3.4.1/.babelrc:
--------------------------------------------------------------------------------
1 | {
2 | "presets" : [ "babel-preset-es2015"]
3 | }
--------------------------------------------------------------------------------
/marionette-v3.3.1/.babelrc:
--------------------------------------------------------------------------------
1 | {
2 | "presets" : [ "babel-preset-es2015"]
3 | }
--------------------------------------------------------------------------------
/ractive-edge/.babelrc:
--------------------------------------------------------------------------------
1 | {
2 | presets: [ "es2015"],
3 | plugins: []
4 | }
--------------------------------------------------------------------------------
/vanillajs-keyed/.babelrc:
--------------------------------------------------------------------------------
1 | {
2 | "presets" : [ "babel-preset-es2015"]
3 | }
--------------------------------------------------------------------------------
/vue-v2.3.3-keyed/.babelrc:
--------------------------------------------------------------------------------
1 | {
2 | "presets": ["es2015", "stage-0"]
3 | }
4 |
--------------------------------------------------------------------------------
/vanillajs-non-keyed/.babelrc:
--------------------------------------------------------------------------------
1 | {
2 | "presets" : [ "babel-preset-es2015"]
3 | }
--------------------------------------------------------------------------------
/vue-v2.3.3-non-keyed/.babelrc:
--------------------------------------------------------------------------------
1 | {
2 | "presets": ["es2015", "stage-0"]
3 | }
4 |
--------------------------------------------------------------------------------
/angular-v1.6.3-keyed/.babelrc:
--------------------------------------------------------------------------------
1 | {
2 | "presets": [
3 | "es2015"
4 | ]
5 | }
--------------------------------------------------------------------------------
/preact-v7.1.0/.babelrc:
--------------------------------------------------------------------------------
1 | {
2 | presets: [ "es2015", "react"],
3 | plugins: []
4 | }
--------------------------------------------------------------------------------
/ractive-v0.8.12-keyed/.babelrc:
--------------------------------------------------------------------------------
1 | {
2 | presets: [ "es2015"],
3 | plugins: []
4 | }
--------------------------------------------------------------------------------
/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sveltejs/js-framework-benchmark/master/favicon.ico
--------------------------------------------------------------------------------
/ractive-v0.8.12-non-keyed/.babelrc:
--------------------------------------------------------------------------------
1 | {
2 | presets: [ "es2015"],
3 | plugins: []
4 | }
--------------------------------------------------------------------------------
/ember-v2.13.0/.bowerrc:
--------------------------------------------------------------------------------
1 | {
2 | "directory": "bower_components",
3 | "analytics": false
4 | }
5 |
--------------------------------------------------------------------------------
/ember-v2.13.0/app/templates/index.hbs:
--------------------------------------------------------------------------------
1 |
2 | {{my-table}}
3 |
4 |
--------------------------------------------------------------------------------
/ember-v2.13.0/public/robots.txt:
--------------------------------------------------------------------------------
1 | # http://www.robotstxt.org
2 | User-agent: *
3 | Disallow:
4 |
--------------------------------------------------------------------------------
/glimmer-v0.3.10/public/robots.txt:
--------------------------------------------------------------------------------
1 | # http://www.robotstxt.org
2 | User-agent: *
3 | Disallow:
4 |
--------------------------------------------------------------------------------
/react-lite-v0.15.30/.babelrc:
--------------------------------------------------------------------------------
1 | {
2 | presets: [ "es2015", "react"],
3 | plugins: []
4 | }
--------------------------------------------------------------------------------
/react-v15.5.4-keyed/.babelrc:
--------------------------------------------------------------------------------
1 | {
2 | presets: [ "es2015", "react"],
3 | plugins: []
4 | }
--------------------------------------------------------------------------------
/react-v15.5.4-non-keyed/.babelrc:
--------------------------------------------------------------------------------
1 | {
2 | presets: [ "es2015", "react"],
3 | plugins: []
4 | }
--------------------------------------------------------------------------------
/bobril-v7.1.2/.vscode/settings.json:
--------------------------------------------------------------------------------
1 | {
2 | "typescript.tsdk": "./node_modules/typescript/lib"
3 | }
--------------------------------------------------------------------------------
/mithril-v1.1.1/.babelrc:
--------------------------------------------------------------------------------
1 | {
2 | presets: [ "es2015"],
3 | plugins: ["transform-react-jsx"]
4 | }
--------------------------------------------------------------------------------
/react-v15.5.4-redux-v3.6.0/.babelrc:
--------------------------------------------------------------------------------
1 | {
2 | presets: [ "es2015", "react"],
3 | plugins: []
4 | }
--------------------------------------------------------------------------------
/vidom-v0.9.8/.babelrc:
--------------------------------------------------------------------------------
1 | {
2 | presets: [ "es2015", "stage-0" ],
3 | plugins: ["vidom-jsx"]
4 | }
--------------------------------------------------------------------------------
/vidom-v0.9.8/src/main.es6.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | var Controller = require('./controller');
4 |
5 |
--------------------------------------------------------------------------------
/ember-v2.13.0/app/resolver.js:
--------------------------------------------------------------------------------
1 | import Resolver from 'ember-resolver';
2 |
3 | export default Resolver;
4 |
--------------------------------------------------------------------------------
/simulacra-v2.1.1/.babelrc:
--------------------------------------------------------------------------------
1 | {
2 | "presets": [
3 | "es2015"
4 | ],
5 | "plugins": [
6 | ]
7 | }
--------------------------------------------------------------------------------
/glimmer-v0.3.10/src/ui/components/eq/helper.ts:
--------------------------------------------------------------------------------
1 | export default function eq([a, b]) {
2 | return a === b;
3 | }
--------------------------------------------------------------------------------
/polymer-v1.7.0/polymer.json:
--------------------------------------------------------------------------------
1 | {
2 | "entrypoint": "index.html",
3 | "shell": "src/main-element.html"
4 | }
5 |
--------------------------------------------------------------------------------
/css/currentStyle.css:
--------------------------------------------------------------------------------
1 | @import url("/css/bootstrap/dist/css/bootstrap.min.css");
2 | @import url("/css/main.css");
3 |
--------------------------------------------------------------------------------
/marko-v4.3.0/src/client.js:
--------------------------------------------------------------------------------
1 | var main = require('./main');
2 |
3 | main.renderSync()
4 | .appendTo(document.body);
--------------------------------------------------------------------------------
/aurelia-v1.1.0/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sveltejs/js-framework-benchmark/master/aurelia-v1.1.0/favicon.ico
--------------------------------------------------------------------------------
/css/useOriginalBootstrap.css:
--------------------------------------------------------------------------------
1 | @import url("/css/bootstrap/dist/css/bootstrap.min.css");
2 | @import url("/css/main.css");
3 |
--------------------------------------------------------------------------------
/elm-v0.18.0/.gitignore:
--------------------------------------------------------------------------------
1 | # elm-package generated files
2 | elm-stuff/
3 |
4 | # elm-repl generated files
5 | repl-temp-*
6 |
7 |
--------------------------------------------------------------------------------
/.travis.yml:
--------------------------------------------------------------------------------
1 | language: node_js
2 | node_js:
3 | - "node"
4 | install:
5 | - npm install
6 | script:
7 | - npm run build-prod
--------------------------------------------------------------------------------
/angular-v4.1.2-keyed/.gitignore:
--------------------------------------------------------------------------------
1 | dist/
2 | lib/
3 | node_modules/
4 | src/app.ngfactory.ts
5 | src/app.ngsummery.json
6 | tmp/
7 |
--------------------------------------------------------------------------------
/angular-v4.1.2-non-keyed/.gitignore:
--------------------------------------------------------------------------------
1 | dist/
2 | lib/
3 | node_modules/
4 | src/app.ngfactory.ts
5 | src/app.ngsummery.json
6 | tmp/
7 |
--------------------------------------------------------------------------------
/rx-domh-v0.0.2-rxjs-v5.3.0/.babelrc:
--------------------------------------------------------------------------------
1 | {
2 | "presets": [
3 | "es2015",
4 | "react"
5 | ],
6 | "plugins": []
7 | }
--------------------------------------------------------------------------------
/glimmer-v0.3.10/src/ui/components/if/helper.ts:
--------------------------------------------------------------------------------
1 | export default function _if([test, truthy, falsy]) {
2 | return test ? truthy : falsy;
3 | }
--------------------------------------------------------------------------------
/react-v15.5.4-mobX-v3.1.9/.babelrc:
--------------------------------------------------------------------------------
1 | {
2 | presets: [ "es2015", "stage-0", "react"],
3 | plugins: ["transform-decorators-legacy"]
4 | }
--------------------------------------------------------------------------------
/inferno-v3.1.2-keyed/src/main.es6.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | import Inferno from "inferno";
4 | import {Controller} from './controller';
5 |
6 |
--------------------------------------------------------------------------------
/inferno-v3.1.2-non-keyed/src/main.es6.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | import Inferno from "inferno";
4 | import {Controller} from './controller';
5 |
6 |
--------------------------------------------------------------------------------
/ivi-v0.7.0/.gitignore:
--------------------------------------------------------------------------------
1 | build
2 | dist
3 |
4 | node_modules
5 |
6 | .DS_Store
7 | .idea
8 | .vscode
9 | .npm-debug
10 | npm-debug.log
11 |
--------------------------------------------------------------------------------
/kivi-v1.0.0-rc2/.gitignore:
--------------------------------------------------------------------------------
1 | build
2 | dist
3 |
4 | node_modules
5 |
6 | .DS_Store
7 | .idea
8 | .vscode
9 | .npm-debug
10 | npm-debug.log
11 |
--------------------------------------------------------------------------------
/svelte-v1.8.1/src/main.es6.js:
--------------------------------------------------------------------------------
1 | import Main from './Main.html';
2 |
3 | window.s = new Main({
4 | target: document.querySelector( '#main' )
5 | });
6 |
--------------------------------------------------------------------------------
/ember-v2.13.0/bower.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "ember-temp",
3 | "dependencies": {
4 | "ember": "2.10.0-beta.3",
5 | "ember-cli-shims": "0.1.3"
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/polymer-v1.7.0/bower.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "polymer-temp",
3 | "dependencies": {
4 | "polymer": "1.7.0",
5 | "webcomponentsjs": "^0.7.22"
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/riot-v3.5.0/src/main.es6.js:
--------------------------------------------------------------------------------
1 | import riot from 'riot'
2 | import Store from './store'
3 | import './app.html'
4 |
5 | riot.mount('app', {
6 | store: new Store()
7 | });
--------------------------------------------------------------------------------
/vue-v2.3.3-keyed/src/main.es6.js:
--------------------------------------------------------------------------------
1 | import Vue from 'vue'
2 | import App from './App.vue'
3 |
4 | new Vue({
5 | el: '#main',
6 | render: h => h(App)
7 | })
8 |
--------------------------------------------------------------------------------
/css/bootstrap/fonts/glyphicons-halflings-regular.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sveltejs/js-framework-benchmark/master/css/bootstrap/fonts/glyphicons-halflings-regular.eot
--------------------------------------------------------------------------------
/css/bootstrap/fonts/glyphicons-halflings-regular.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sveltejs/js-framework-benchmark/master/css/bootstrap/fonts/glyphicons-halflings-regular.ttf
--------------------------------------------------------------------------------
/ember-v2.13.0/app/helpers/eq.js:
--------------------------------------------------------------------------------
1 | import Ember from 'ember';
2 |
3 | export default Ember.Helper.helper(function(params) {
4 | return params[0] === params[1];
5 | });
6 |
--------------------------------------------------------------------------------
/ember-v2.13.0/tests/test-helper.js:
--------------------------------------------------------------------------------
1 | import resolver from './helpers/resolver';
2 | import {
3 | setResolver
4 | } from 'ember-qunit';
5 |
6 | setResolver(resolver);
7 |
--------------------------------------------------------------------------------
/vue-v2.3.3-non-keyed/src/main.es6.js:
--------------------------------------------------------------------------------
1 | import Vue from 'vue'
2 | import App from './App.vue'
3 |
4 | new Vue({
5 | el: '#main',
6 | render: h => h(App)
7 | })
8 |
--------------------------------------------------------------------------------
/css/bootstrap/fonts/glyphicons-halflings-regular.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sveltejs/js-framework-benchmark/master/css/bootstrap/fonts/glyphicons-halflings-regular.woff
--------------------------------------------------------------------------------
/css/bootstrap/fonts/glyphicons-halflings-regular.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sveltejs/js-framework-benchmark/master/css/bootstrap/fonts/glyphicons-halflings-regular.woff2
--------------------------------------------------------------------------------
/css/bootstrap/grunt/.jshintrc:
--------------------------------------------------------------------------------
1 | {
2 | "extends" : "../js/.jshintrc",
3 | "asi" : false,
4 | "browser" : false,
5 | "es3" : false,
6 | "node" : true
7 | }
8 |
--------------------------------------------------------------------------------
/css/bootstrap/dist/fonts/glyphicons-halflings-regular.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sveltejs/js-framework-benchmark/master/css/bootstrap/dist/fonts/glyphicons-halflings-regular.eot
--------------------------------------------------------------------------------
/css/bootstrap/dist/fonts/glyphicons-halflings-regular.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sveltejs/js-framework-benchmark/master/css/bootstrap/dist/fonts/glyphicons-halflings-regular.ttf
--------------------------------------------------------------------------------
/cyclejs-dom-v17.1.0/.babelrc:
--------------------------------------------------------------------------------
1 | {
2 | "presets": [
3 | "es2015"
4 | ],
5 | "plugins": [
6 | "syntax-jsx",
7 | ["transform-react-jsx", {"pragma": "html"}]
8 | ]
9 | }
--------------------------------------------------------------------------------
/ember-v2.13.0/tests/helpers/destroy-app.js:
--------------------------------------------------------------------------------
1 | import Ember from 'ember';
2 |
3 | export default function destroyApp(application) {
4 | Ember.run(application, 'destroy');
5 | }
6 |
--------------------------------------------------------------------------------
/css/bootstrap/dist/fonts/glyphicons-halflings-regular.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sveltejs/js-framework-benchmark/master/css/bootstrap/dist/fonts/glyphicons-halflings-regular.woff
--------------------------------------------------------------------------------
/css/bootstrap/dist/fonts/glyphicons-halflings-regular.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sveltejs/js-framework-benchmark/master/css/bootstrap/dist/fonts/glyphicons-halflings-regular.woff2
--------------------------------------------------------------------------------
/css/bootstrap/less/mixins/center-block.less:
--------------------------------------------------------------------------------
1 | // Center-align a block level element
2 |
3 | .center-block() {
4 | display: block;
5 | margin-left: auto;
6 | margin-right: auto;
7 | }
8 |
--------------------------------------------------------------------------------
/inferno-v3.1.2-keyed/.babelrc:
--------------------------------------------------------------------------------
1 | {
2 | "presets": [ "es2015", "stage-0" ],
3 | "plugins": ["babel-plugin-syntax-jsx", ["babel-plugin-inferno", {"inline": true, "preclone": true}]]
4 | }
--------------------------------------------------------------------------------
/inferno-v3.1.2-non-keyed/.babelrc:
--------------------------------------------------------------------------------
1 | {
2 | "presets": [ "es2015", "stage-0" ],
3 | "plugins": ["babel-plugin-syntax-jsx", ["babel-plugin-inferno", {"inline": true, "preclone": true}]]
4 | }
--------------------------------------------------------------------------------
/angular-v2.4.9-keyed/typings/index.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | ///
3 | ///
4 |
--------------------------------------------------------------------------------
/angular-v2.4.9-non-keyed/typings/index.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | ///
3 | ///
4 |
--------------------------------------------------------------------------------
/css/bootstrap/less/mixins/size.less:
--------------------------------------------------------------------------------
1 | // Sizing shortcuts
2 |
3 | .size(@width; @height) {
4 | width: @width;
5 | height: @height;
6 | }
7 |
8 | .square(@size) {
9 | .size(@size; @size);
10 | }
11 |
--------------------------------------------------------------------------------
/css/bootstrap/less/mixins/opacity.less:
--------------------------------------------------------------------------------
1 | // Opacity
2 |
3 | .opacity(@opacity) {
4 | opacity: @opacity;
5 | // IE8 filter
6 | @opacity-ie: (@opacity * 100);
7 | filter: ~"alpha(opacity=@{opacity-ie})";
8 | }
9 |
--------------------------------------------------------------------------------
/css/bootstrap/less/mixins/text-emphasis.less:
--------------------------------------------------------------------------------
1 | // Typography
2 |
3 | .text-emphasis-variant(@color) {
4 | color: @color;
5 | a&:hover,
6 | a&:focus {
7 | color: darken(@color, 10%);
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/aurelia-v1.1.0/src/main.js:
--------------------------------------------------------------------------------
1 | export async function configure(aurelia) {
2 | aurelia.use
3 | .defaultBindingLanguage()
4 | .defaultResources();
5 |
6 | await aurelia.start();
7 | aurelia.setRoot('app');
8 | }
--------------------------------------------------------------------------------
/css/bootstrap/less/mixins/text-overflow.less:
--------------------------------------------------------------------------------
1 | // Text overflow
2 | // Requires inline-block or block for proper styling
3 |
4 | .text-overflow() {
5 | overflow: hidden;
6 | text-overflow: ellipsis;
7 | white-space: nowrap;
8 | }
9 |
--------------------------------------------------------------------------------
/glimmer-v0.3.10/config/environment.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | module.exports = function(environment) {
4 | let ENV = {
5 | modulePrefix: 'glimmer-app',
6 | environment: environment
7 | };
8 |
9 | return ENV;
10 | };
11 |
--------------------------------------------------------------------------------
/mithril-v1.1.1/src/main.es6.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | /** @jsx m */
3 | var m = require('mithril')
4 | //controller
5 | var { Controller } = require('./controller');
6 |
7 | //initialize
8 | m.mount(document.getElementById("main"), Controller);
--------------------------------------------------------------------------------
/css/bootstrap/less/mixins/background-variant.less:
--------------------------------------------------------------------------------
1 | // Contextual backgrounds
2 |
3 | .bg-variant(@color) {
4 | background-color: @color;
5 | a&:hover,
6 | a&:focus {
7 | background-color: darken(@color, 10%);
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/css/bootstrap/less/mixins/tab-focus.less:
--------------------------------------------------------------------------------
1 | // WebKit-style focus
2 |
3 | .tab-focus() {
4 | // Default
5 | outline: thin dotted;
6 | // WebKit
7 | outline: 5px auto -webkit-focus-ring-color;
8 | outline-offset: -2px;
9 | }
10 |
--------------------------------------------------------------------------------
/aurelia-v1.1.0/jsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "compilerOptions": {
3 | "target": "es2015",
4 | "lib": ["es2017", "dom"],
5 | "experimentalDecorators": true
6 | },
7 | "exclude": [
8 | "node_modules",
9 | "dist"
10 | ]
11 | }
12 |
--------------------------------------------------------------------------------
/css/bootstrap/less/mixins/resize.less:
--------------------------------------------------------------------------------
1 | // Resize anything
2 |
3 | .resizable(@direction) {
4 | resize: @direction; // Options: horizontal, vertical, both
5 | overflow: auto; // Per CSS3 UI, `resize` only applies when `overflow` isn't `visible`
6 | }
7 |
--------------------------------------------------------------------------------
/react-lite-v0.15.30/src/main.es6.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | let React = require('react');
4 | let ReactDOM = require('react-dom');
5 | let {Main} = require('./Main');
6 |
7 | ReactDOM.render(React.createElement(Main, {}), document.getElementById('main'));
--------------------------------------------------------------------------------
/react-v15.5.4-keyed/src/main.es6.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | let React = require('react');
4 | let ReactDOM = require('react-dom');
5 | let {Main} = require('./Main');
6 |
7 | ReactDOM.render(React.createElement(Main, {}), document.getElementById('main'));
--------------------------------------------------------------------------------
/react-v15.5.4-non-keyed/src/main.es6.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | let React = require('react');
4 | let ReactDOM = require('react-dom');
5 | let {Main} = require('./Main');
6 |
7 | ReactDOM.render(React.createElement(Main, {}), document.getElementById('main'));
--------------------------------------------------------------------------------
/slim-js-v2.8.20/.babelrc:
--------------------------------------------------------------------------------
1 | {
2 | "presets": ["es2015"],
3 | "plugins": [
4 | "transform-decorators-legacy",
5 | "transform-decorators",
6 | "transform-custom-element-classes",
7 | "transform-es2015-classes"]
8 | }
9 |
--------------------------------------------------------------------------------
/css/bootstrap/less/mixins/labels.less:
--------------------------------------------------------------------------------
1 | // Labels
2 |
3 | .label-variant(@color) {
4 | background-color: @color;
5 |
6 | &[href] {
7 | &:hover,
8 | &:focus {
9 | background-color: darken(@color, 10%);
10 | }
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/angular-v2.4.9-keyed/typings.json:
--------------------------------------------------------------------------------
1 | {
2 | "globalDependencies": {
3 | "core-js": "registry:dt/core-js#0.0.0+20160725163759",
4 | "jasmine": "registry:dt/jasmine#2.2.0+20160621224255",
5 | "node": "registry:dt/node#6.0.0+20160830141956"
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/angular-v2.4.9-non-keyed/typings.json:
--------------------------------------------------------------------------------
1 | {
2 | "globalDependencies": {
3 | "core-js": "registry:dt/core-js#0.0.0+20160725163759",
4 | "jasmine": "registry:dt/jasmine#2.2.0+20160621224255",
5 | "node": "registry:dt/node#6.0.0+20160830141956"
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/binding.scala-v10.0.1/project/plugins.sbt:
--------------------------------------------------------------------------------
1 | addSbtPlugin("com.thoughtworks.sbt-best-practice" % "sbt-best-practice" % "latest.release")
2 |
3 | addSbtPlugin("com.vmunier" % "sbt-web-scalajs" % "1.0.1")
4 |
5 | addSbtPlugin("org.scala-js" % "sbt-scalajs" % "0.6.13")
6 |
--------------------------------------------------------------------------------
/binding.scala-v10.0.1/build.sbt:
--------------------------------------------------------------------------------
1 | enablePlugins(SbtWeb)
2 |
3 | lazy val js = project
4 |
5 | scalaJSProjects += js
6 |
7 | pipelineStages in Assets += scalaJSPipeline
8 |
9 | scalaVersion in Global := "2.11.8"
10 |
11 | scalacOptions in Global += "-optimise"
12 |
--------------------------------------------------------------------------------
/css/bootstrap/less/mixins/progress-bar.less:
--------------------------------------------------------------------------------
1 | // Progress bars
2 |
3 | .progress-bar-variant(@color) {
4 | background-color: @color;
5 |
6 | // Deprecated parent class requirement as of v3.2.0
7 | .progress-striped & {
8 | #gradient > .striped();
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/aurelia-v1.1.0/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Aurelia v1.1.0
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
--------------------------------------------------------------------------------
/surplus-v0.4.0/src/main.ts:
--------------------------------------------------------------------------------
1 | import { Store } from './store';
2 | import { App } from './controller';
3 | import { AppView } from './view';
4 | import * as S from 's-js';
5 |
6 | var view = S.root(() => AppView(new App(new Store()))) ;
7 | document.getElementById('main')!.appendChild(view);
--------------------------------------------------------------------------------
/binding.scala-v10.0.1/js/build.sbt:
--------------------------------------------------------------------------------
1 | enablePlugins(ScalaJSPlugin, ScalaJSWeb)
2 |
3 | libraryDependencies += "com.thoughtworks.binding" %%% "dom" % "10.0.1"
4 |
5 | addCompilerPlugin("org.scalamacros" % "paradise" % "2.1.0" cross CrossVersion.full)
6 |
7 | persistLauncher in Compile := true
8 |
--------------------------------------------------------------------------------
/angular-v4.1.2-keyed/src/main.aot.ts:
--------------------------------------------------------------------------------
1 | import { platformBrowser } from '@angular/platform-browser';
2 | import { enableProdMode } from '@angular/core';
3 | import { AppModuleNgFactory } from './app.ngfactory';
4 | enableProdMode();
5 | platformBrowser().bootstrapModuleFactory(AppModuleNgFactory);
6 |
--------------------------------------------------------------------------------
/angular-v4.1.2-non-keyed/src/main.aot.ts:
--------------------------------------------------------------------------------
1 | import { platformBrowser } from '@angular/platform-browser';
2 | import { enableProdMode } from '@angular/core';
3 | import { AppModuleNgFactory } from './app.ngfactory';
4 | enableProdMode();
5 | platformBrowser().bootstrapModuleFactory(AppModuleNgFactory);
6 |
--------------------------------------------------------------------------------
/plastiq-v1.33.0/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | plastiq v1.33.0
6 |
7 |
8 |
9 |
10 |
11 |
12 |
--------------------------------------------------------------------------------
/bobril-v7.1.2/index.html:
--------------------------------------------------------------------------------
1 | Bobril v7.1.2
--------------------------------------------------------------------------------
/ember-v2.13.0/app/router.js:
--------------------------------------------------------------------------------
1 | import Ember from 'ember';
2 | import config from './config/environment';
3 |
4 | const Router = Ember.Router.extend({
5 | location: config.locationType,
6 | rootURL: config.rootURL
7 | });
8 |
9 | Router.map(function() {
10 | });
11 |
12 | export default Router;
13 |
--------------------------------------------------------------------------------
/pico-dom-v0.18.0/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | picoDOM v0.18.0
6 |
7 |
8 |
9 |
10 |
11 |
12 |
--------------------------------------------------------------------------------
/domvm-v2.1.4-keyed/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | domvm v2.1.4-keyed
6 |
7 |
8 |
9 |
10 |
11 |
12 |
--------------------------------------------------------------------------------
/stem-v0.2.70/.babelrc:
--------------------------------------------------------------------------------
1 | {
2 | "plugins": [
3 | "external-helpers",
4 | "transform-decorators-legacy",
5 | "transform-class-properties",
6 | ["transform-react-jsx", { "pragma": "UI.createElement" }],
7 | ],
8 | "presets": [ ["es2015", {"modules": false}]]
9 | }
10 |
--------------------------------------------------------------------------------
/css/bootstrap/less/mixins/reset-filter.less:
--------------------------------------------------------------------------------
1 | // Reset filters for IE
2 | //
3 | // When you need to remove a gradient background, do not forget to use this to reset
4 | // the IE filter for IE9 and below.
5 |
6 | .reset-filter() {
7 | filter: e(%("progid:DXImageTransform.Microsoft.gradient(enabled = false)"));
8 | }
9 |
--------------------------------------------------------------------------------
/domvm-v2.1.4-non-keyed/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | domvm v2.1.4-non-keyed
6 |
7 |
8 |
9 |
10 |
11 |
12 |
--------------------------------------------------------------------------------
/hyperapp-v0.9.1/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | HyperApp v0.9.1
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
--------------------------------------------------------------------------------
/css/bootstrap/less/mixins/nav-divider.less:
--------------------------------------------------------------------------------
1 | // Horizontal dividers
2 | //
3 | // Dividers (basically an hr) within dropdowns and nav lists
4 |
5 | .nav-divider(@color: #e5e5e5) {
6 | height: 1px;
7 | margin: ((@line-height-computed / 2) - 1) 0;
8 | overflow: hidden;
9 | background-color: @color;
10 | }
11 |
--------------------------------------------------------------------------------
/ember-v2.13.0/testem.js:
--------------------------------------------------------------------------------
1 | /*jshint node:true*/
2 | module.exports = {
3 | "framework": "qunit",
4 | "test_page": "tests/index.html?hidepassed",
5 | "disable_watching": true,
6 | "launch_in_ci": [
7 | "PhantomJS"
8 | ],
9 | "launch_in_dev": [
10 | "PhantomJS",
11 | "Chrome"
12 | ]
13 | };
14 |
--------------------------------------------------------------------------------
/ivi-v0.7.0/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | ivi v0.7.0
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/choo-v5.4.0/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Choo v5.4.0
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/mithril-v1.1.1/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Mithril v1.1.1
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/preact-v7.1.0/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | preact v7.1.0
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/tsers-v1.0.0/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | TSERS v1.0.0
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/vidom-v0.9.8/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | vidom v0.9.8
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/kivi-v1.0.0-rc2/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | kivi v1.0.0-rc0
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/marko-v4.3.0/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Marko 4.3.0
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
--------------------------------------------------------------------------------
/ractive-edge/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Ractive edge
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/svelte-v1.8.1/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Svelte v1.8.1
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/vue-v2.3.3-keyed/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Vue.js v2.3.3
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/vue-v2.3.3-non-keyed/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Vue.js v2.3.3
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/inferno-v3.1.2-keyed/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Inferno v3.1.2
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/inferno-v3.1.2-non-keyed/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Inferno v3.1.2
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/react-lite-v0.15.30/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | react-lite v0.15.30
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/react-v15.5.4-keyed/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | React v15.5.4
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/cyclejs-dom-v17.1.0/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Cycle.js dom@17.1.0
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/ractive-v0.8.12-keyed/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Ractive v0.8.12
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/react-v15.5.4-non-keyed/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | React v15.5.4
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/ember-v2.13.0/.ember-cli:
--------------------------------------------------------------------------------
1 | {
2 | /**
3 | Ember CLI sends analytics information by default. The data is completely
4 | anonymous, but there are times when you might want to disable this behavior.
5 |
6 | Setting `disableAnalytics` to true will prevent any data from being sent.
7 | */
8 | "disableAnalytics": false
9 | }
10 |
--------------------------------------------------------------------------------
/ember-v2.13.0/tests/helpers/resolver.js:
--------------------------------------------------------------------------------
1 | import Resolver from '../../resolver';
2 | import config from '../../config/environment';
3 |
4 | const resolver = Resolver.create();
5 |
6 | resolver.namespace = {
7 | modulePrefix: config.modulePrefix,
8 | podModulePrefix: config.podModulePrefix
9 | };
10 |
11 | export default resolver;
12 |
--------------------------------------------------------------------------------
/ractive-v0.8.12-non-keyed/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Ractive v0.8.12
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/ember-v2.13.0/.gitignore:
--------------------------------------------------------------------------------
1 | # See http://help.github.com/ignore-files/ for more about ignoring files.
2 |
3 | # compiled output
4 | /dist
5 | /tmp
6 |
7 | # dependencies
8 | /node_modules
9 | /bower_components
10 |
11 | # misc
12 | /.sass-cache
13 | /connect.lock
14 | /coverage/*
15 | /libpeerconnection.log
16 | npm-debug.log*
17 | testem.log
18 |
--------------------------------------------------------------------------------
/react-v15.5.4-mobX-v3.1.9/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | React v15.5.4 + Mobx 3.1.9
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/surplus-v0.4.0/webpack.config.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | module.exports = {
4 | entry: './src/main.ts',
5 | output: {
6 | filename: './dist/main.js'
7 | },
8 | resolve: {
9 | extensions: ['.ts', '.tsx', '.js']
10 | },
11 | module: {
12 | rules: [
13 | { test: /\.tsx?$/, loader: 'surplus-loader!ts-loader' },
14 | ]
15 | }
16 | };
--------------------------------------------------------------------------------
/react-v15.5.4-redux-v3.6.0/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | React v15.4.2 Redux v3.6.0
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/rx-domh-v0.0.2-rxjs-v5.3.0/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | rx-domh v0.0.2 and rxjs v5.3.0
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/angular-v2.4.9-keyed/src/main.aot.ts:
--------------------------------------------------------------------------------
1 | import 'zone.js/dist/zone';
2 | import 'core-js/es7/reflect';
3 | import { platformBrowser } from '@angular/platform-browser';
4 | import { enableProdMode } from '@angular/core';
5 | import { AppModuleNgFactory } from './app.ngfactory';
6 | enableProdMode();
7 | platformBrowser().bootstrapModuleFactory(AppModuleNgFactory);
8 |
--------------------------------------------------------------------------------
/css/bootstrap/less/mixins/alerts.less:
--------------------------------------------------------------------------------
1 | // Alerts
2 |
3 | .alert-variant(@background; @border; @text-color) {
4 | background-color: @background;
5 | border-color: @border;
6 | color: @text-color;
7 |
8 | hr {
9 | border-top-color: darken(@border, 5%);
10 | }
11 | .alert-link {
12 | color: darken(@text-color, 10%);
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/glimmer-v0.3.10/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "compilerOptions": {
3 | "target": "es6",
4 | "module": "es2015",
5 | "inlineSourceMap": true,
6 | "inlineSources": true,
7 | "moduleResolution": "node",
8 | "experimentalDecorators": true
9 | },
10 | "exclude": [
11 | "node_modules",
12 | "tmp",
13 | "dist"
14 | ]
15 | }
16 |
--------------------------------------------------------------------------------
/angular-v2.4.9-non-keyed/src/main.aot.ts:
--------------------------------------------------------------------------------
1 | import 'zone.js/dist/zone';
2 | import 'core-js/es7/reflect';
3 | import { platformBrowser } from '@angular/platform-browser';
4 | import { enableProdMode } from '@angular/core';
5 | import { AppModuleNgFactory } from './app.ngfactory';
6 | enableProdMode();
7 | platformBrowser().bootstrapModuleFactory(AppModuleNgFactory);
8 |
--------------------------------------------------------------------------------
/binding.scala-v10.0.1/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "js-framework-benchmark-binding.scala",
3 | "version": "1.0.0",
4 | "description": "Benchmark for Binding.scala",
5 | "scripts": {
6 | "build-prod": "sbt web-stage"
7 | },
8 | "devDependencies": {
9 | "sbt-bin": "0.1.2"
10 | },
11 | "author": "杨博 (Yang Bo) "
12 | }
13 |
--------------------------------------------------------------------------------
/binding.scala-v10.0.1/src/main/assets/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Binding.scala v10.0.1
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/angular-v2.4.9-keyed/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Angular v2.4.9
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
--------------------------------------------------------------------------------
/angular-v2.4.9-non-keyed/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Angular v2.4.9
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
--------------------------------------------------------------------------------
/glimmer-v0.3.10/config/module-map.d.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * This is just a placeholder file to keep TypeScript aware editors happy. At build time,
3 | * it will be replaced with a complete map of resolvable module paths => rolled up contents.
4 | */
5 |
6 | export interface Dict {
7 | [index: string]: T;
8 | }
9 |
10 | declare let map: Dict;
11 | export default map;
12 |
--------------------------------------------------------------------------------
/webdriver-ts/src/createIndex.ts:
--------------------------------------------------------------------------------
1 | import * as fs from 'fs';
2 | import {JSONResult, config, frameworks} from './common'
3 | import {BenchmarkType, Benchmark, benchmarks} from './benchmarks'
4 |
5 | const dots = require('dot').process({
6 | path: './'
7 | });
8 |
9 | fs.writeFileSync('../index.html', dots.index({
10 | frameworks
11 | }), {
12 | encoding: 'utf8'
13 | })
14 |
--------------------------------------------------------------------------------
/angular-v2.4.9-keyed/src/main.jit.ts:
--------------------------------------------------------------------------------
1 | //we only need reflect in JIT mode
2 | import 'core-js/es7/reflect';
3 | import 'zone.js/dist/zone';
4 | import { platformBrowserDynamic } from '@angular/platform-browser-dynamic';
5 | import { enableProdMode } from '@angular/core';
6 | import { AppModule } from './app';
7 | enableProdMode();
8 | platformBrowserDynamic().bootstrapModule(AppModule);
9 |
--------------------------------------------------------------------------------
/angular-v4.1.2-keyed/src/main.jit.ts:
--------------------------------------------------------------------------------
1 | //we only need reflect in JIT mode
2 | import 'core-js/es7/reflect';
3 | import 'zone.js/dist/zone';
4 | import { platformBrowserDynamic } from '@angular/platform-browser-dynamic';
5 | import { enableProdMode } from '@angular/core';
6 | import { AppModule } from './app';
7 | enableProdMode();
8 | platformBrowserDynamic().bootstrapModule(AppModule);
9 |
--------------------------------------------------------------------------------
/angular-v2.4.9-non-keyed/src/main.jit.ts:
--------------------------------------------------------------------------------
1 | //we only need reflect in JIT mode
2 | import 'core-js/es7/reflect';
3 | import 'zone.js/dist/zone';
4 | import { platformBrowserDynamic } from '@angular/platform-browser-dynamic';
5 | import { enableProdMode } from '@angular/core';
6 | import { AppModule } from './app';
7 | enableProdMode();
8 | platformBrowserDynamic().bootstrapModule(AppModule);
9 |
--------------------------------------------------------------------------------
/angular-v4.1.2-non-keyed/src/main.jit.ts:
--------------------------------------------------------------------------------
1 | //we only need reflect in JIT mode
2 | import 'core-js/es7/reflect';
3 | import 'zone.js/dist/zone';
4 | import { platformBrowserDynamic } from '@angular/platform-browser-dynamic';
5 | import { enableProdMode } from '@angular/core';
6 | import { AppModule } from './app';
7 | enableProdMode();
8 | platformBrowserDynamic().bootstrapModule(AppModule);
9 |
--------------------------------------------------------------------------------
/angular-v1.6.3-keyed/webpack.config.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | var path = require('path')
3 |
4 | module.exports = {
5 | entry: {
6 | main: './src/main'
7 | },
8 | output: {
9 | path: './dist',
10 | filename: 'main.js'
11 | },
12 | module: {
13 | rules: [
14 | {
15 | test: /.js$/,
16 | loader: 'babel-loader'
17 | }
18 | ]
19 | }
20 | };
--------------------------------------------------------------------------------
/slim-js-v2.8.20/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Slim.js
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/angular-v4.1.2-keyed/index.jit.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Angular v4.0.0-rc (JIT)
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
--------------------------------------------------------------------------------
/angular-v4.1.2-non-keyed/index.jit.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Angular v4.0.0-rc (JIT)
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
--------------------------------------------------------------------------------
/bobril-v7.1.2/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "compilerOptions": {
3 | "target": "es6",
4 | "module": "commonjs",
5 | "moduleResolution": "node",
6 | "jsx": "react",
7 | "reactNamespace": "b"
8 | },
9 | "compileOnSave": false,
10 | "files": [
11 | "node_modules/bobril/jsx.d.ts",
12 | "src/app.ts",
13 | "src/store.ts"
14 | ]
15 | }
--------------------------------------------------------------------------------
/surplus-v0.4.0/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Surplus 0.4.0
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
--------------------------------------------------------------------------------
/surplus-v0.4.0/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "compilerOptions": {
3 | "outDir": "./dist/",
4 | "sourceMap": true,
5 | "noImplicitAny": true,
6 | "noImplicitThis": true,
7 | "strictNullChecks": true,
8 | "module": "commonjs",
9 | "target": "es5",
10 | "jsx": "preserve"
11 | },
12 | "files": [
13 | "src/main.ts"
14 | ]
15 | }
--------------------------------------------------------------------------------
/stem-v0.2.70/.gitignore:
--------------------------------------------------------------------------------
1 | # Ignored extensions
2 | *.log
3 | *.swo
4 | *.swp
5 | *.vi
6 | *.zip
7 | *.pyc
8 | *~
9 |
10 | # OS or IDE folders
11 | ._*
12 | .cache
13 | .DS_Store
14 | .idea
15 | .project
16 | .settings
17 | .tmproj
18 | *.esproj
19 | *.sublime-project
20 | *.sublime-workspace
21 | nbproject
22 | Thumbs.db
23 |
24 | # Other folders to ignore
25 | node_modules
26 | src/bundle.js
27 |
28 |
--------------------------------------------------------------------------------
/webdriver-java/src/main/java/net/stefankrause/Framework.java:
--------------------------------------------------------------------------------
1 | package net.stefankrause;
2 |
3 | public final class Framework {
4 | public final String framework;
5 | public final String url;
6 |
7 | public Framework(String name) {
8 | this.framework = name;
9 | this.url = name;
10 | }
11 | public Framework(String framework, String url) {
12 | this.framework = framework;
13 | this.url = url;
14 | }
15 | }
--------------------------------------------------------------------------------
/elm-v0.18.0/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Elm v0.18.0
6 |
7 |
8 |
9 |
10 |
11 |
14 |
15 |
16 |
--------------------------------------------------------------------------------
/react-v15.5.4-redux-v3.6.0/src/main.es6.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | import React from "react";
4 | import Controller from './controller';
5 |
6 | import ReactDOM from 'react-dom';
7 | import store from './store';
8 | import {Provider} from 'react-redux';
9 |
10 | ReactDOM.render(
11 | (
12 |
13 |
14 |
15 | ),
16 | document.getElementById("main")
17 | );
18 |
--------------------------------------------------------------------------------
/angular-v2.4.9-keyed/typings/globals/node/typings.json:
--------------------------------------------------------------------------------
1 | {
2 | "resolution": "main",
3 | "tree": {
4 | "src": "https://raw.githubusercontent.com/DefinitelyTyped/DefinitelyTyped/67827a1e39dc91bf66a79b04f36e9eb85e075e10/node/node.d.ts",
5 | "raw": "registry:dt/node#6.0.0+20160830141956",
6 | "typings": "https://raw.githubusercontent.com/DefinitelyTyped/DefinitelyTyped/67827a1e39dc91bf66a79b04f36e9eb85e075e10/node/node.d.ts"
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/angular-v2.4.9-non-keyed/typings/globals/node/typings.json:
--------------------------------------------------------------------------------
1 | {
2 | "resolution": "main",
3 | "tree": {
4 | "src": "https://raw.githubusercontent.com/DefinitelyTyped/DefinitelyTyped/67827a1e39dc91bf66a79b04f36e9eb85e075e10/node/node.d.ts",
5 | "raw": "registry:dt/node#6.0.0+20160830141956",
6 | "typings": "https://raw.githubusercontent.com/DefinitelyTyped/DefinitelyTyped/67827a1e39dc91bf66a79b04f36e9eb85e075e10/node/node.d.ts"
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/css/bootstrap/less/mixins/nav-vertical-align.less:
--------------------------------------------------------------------------------
1 | // Navbar vertical align
2 | //
3 | // Vertically center elements in the navbar.
4 | // Example: an element has a height of 30px, so write out `.navbar-vertical-align(30px);` to calculate the appropriate top margin.
5 |
6 | .navbar-vertical-align(@element-height) {
7 | margin-top: ((@navbar-height - @element-height) / 2);
8 | margin-bottom: ((@navbar-height - @element-height) / 2);
9 | }
10 |
--------------------------------------------------------------------------------
/hyperapp-v0.9.1/rollup.config.js:
--------------------------------------------------------------------------------
1 | import babel from "rollup-plugin-babel"
2 | import resolve from "rollup-plugin-node-resolve"
3 | import uglify from "rollup-plugin-uglify"
4 |
5 | export default {
6 | plugins: [
7 | babel({
8 | babelrc: false,
9 | presets: ["es2015-rollup"],
10 | plugins: [
11 | ["transform-react-jsx", { pragma: "h" }]
12 | ]
13 | }),
14 | resolve({
15 | jsnext: true
16 | }),
17 | uglify()
18 | ]
19 | }
--------------------------------------------------------------------------------
/css/bootstrap/CHANGELOG.md:
--------------------------------------------------------------------------------
1 | Bootstrap uses [GitHub's Releases feature](https://github.com/blog/1547-release-your-software) for its changelogs.
2 |
3 | See [the Releases section of our GitHub project](https://github.com/twbs/bootstrap/releases) for changelogs for each release version of Bootstrap.
4 |
5 | Release announcement posts on [the official Bootstrap blog](http://blog.getbootstrap.com) contain summaries of the most noteworthy changes made in each release.
6 |
--------------------------------------------------------------------------------
/angular-v2.4.9-keyed/typings/globals/core-js/typings.json:
--------------------------------------------------------------------------------
1 | {
2 | "resolution": "main",
3 | "tree": {
4 | "src": "https://raw.githubusercontent.com/DefinitelyTyped/DefinitelyTyped/25e18b592470e3dddccc826fde2bb8e7610ef863/core-js/core-js.d.ts",
5 | "raw": "registry:dt/core-js#0.0.0+20160725163759",
6 | "typings": "https://raw.githubusercontent.com/DefinitelyTyped/DefinitelyTyped/25e18b592470e3dddccc826fde2bb8e7610ef863/core-js/core-js.d.ts"
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/angular-v2.4.9-keyed/typings/globals/jasmine/typings.json:
--------------------------------------------------------------------------------
1 | {
2 | "resolution": "main",
3 | "tree": {
4 | "src": "https://raw.githubusercontent.com/DefinitelyTyped/DefinitelyTyped/c49913aa9ea419ea46c1c684e488cf2a10303b1a/jasmine/jasmine.d.ts",
5 | "raw": "registry:dt/jasmine#2.2.0+20160621224255",
6 | "typings": "https://raw.githubusercontent.com/DefinitelyTyped/DefinitelyTyped/c49913aa9ea419ea46c1c684e488cf2a10303b1a/jasmine/jasmine.d.ts"
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/nx-v1.0.0-beta.2.0.1-keyed/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "js-framework-benchmark-nx",
3 | "version": "1.0.0",
4 | "description": "Benchmark for NX framework",
5 | "scripts": {
6 | "build-dev": "webpack ./src/app.js dist/main.js",
7 | "build-prod": "webpack ./src/app.js dist/main.js"
8 | },
9 | "devDependencies": {
10 | "webpack": "2.5.1"
11 | },
12 | "dependencies": {
13 | "@nx-js/framework": "^1.0.0-beta.1.1.0"
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/svelte-v1.8.1/rollup.config.js:
--------------------------------------------------------------------------------
1 | import svelte from 'rollup-plugin-svelte';
2 | import buble from 'rollup-plugin-buble';
3 | import uglify from 'rollup-plugin-uglify';
4 |
5 | const plugins = [
6 | svelte(),
7 | buble()
8 | ];
9 |
10 | if ( process.env.production ) {
11 | plugins.push( uglify() );
12 | }
13 |
14 | export default {
15 | entry: 'src/main.es6.js',
16 | dest: 'dist/main.js',
17 | format: 'iife',
18 | plugins
19 | };
20 |
--------------------------------------------------------------------------------
/angular-v2.4.9-non-keyed/typings/globals/core-js/typings.json:
--------------------------------------------------------------------------------
1 | {
2 | "resolution": "main",
3 | "tree": {
4 | "src": "https://raw.githubusercontent.com/DefinitelyTyped/DefinitelyTyped/25e18b592470e3dddccc826fde2bb8e7610ef863/core-js/core-js.d.ts",
5 | "raw": "registry:dt/core-js#0.0.0+20160725163759",
6 | "typings": "https://raw.githubusercontent.com/DefinitelyTyped/DefinitelyTyped/25e18b592470e3dddccc826fde2bb8e7610ef863/core-js/core-js.d.ts"
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/angular-v2.4.9-non-keyed/typings/globals/jasmine/typings.json:
--------------------------------------------------------------------------------
1 | {
2 | "resolution": "main",
3 | "tree": {
4 | "src": "https://raw.githubusercontent.com/DefinitelyTyped/DefinitelyTyped/c49913aa9ea419ea46c1c684e488cf2a10303b1a/jasmine/jasmine.d.ts",
5 | "raw": "registry:dt/jasmine#2.2.0+20160621224255",
6 | "typings": "https://raw.githubusercontent.com/DefinitelyTyped/DefinitelyTyped/c49913aa9ea419ea46c1c684e488cf2a10303b1a/jasmine/jasmine.d.ts"
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/css/bootstrap/less/mixins/responsive-visibility.less:
--------------------------------------------------------------------------------
1 | // Responsive utilities
2 |
3 | //
4 | // More easily include all the states for responsive-utilities.less.
5 | .responsive-visibility() {
6 | display: block !important;
7 | table& { display: table !important; }
8 | tr& { display: table-row !important; }
9 | th&,
10 | td& { display: table-cell !important; }
11 | }
12 |
13 | .responsive-invisibility() {
14 | display: none !important;
15 | }
16 |
--------------------------------------------------------------------------------
/kivi-v1.0.0-rc2/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "compilerOptions": {
3 | "target": "es6",
4 | "lib": ["es6", "dom"],
5 | "outDir": "build/es6",
6 | "noImplicitAny": true,
7 | "noImplicitReturns": true,
8 | "noImplicitThis": true,
9 | "noUnusedLocals": true,
10 | "strictNullChecks": true,
11 | "removeComments": false,
12 | "moduleResolution": "node"
13 | },
14 | "files": [
15 | "main.ts"
16 | ],
17 | "compileOnSave": false
18 | }
--------------------------------------------------------------------------------
/nx-v1.0.0-beta.2.0.1-non-keyed/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "js-framework-benchmark-nx",
3 | "version": "1.0.0",
4 | "description": "Benchmark for NX framework",
5 | "scripts": {
6 | "build-dev": "webpack ./src/app.js dist/main.js",
7 | "build-prod": "webpack ./src/app.js dist/main.js"
8 | },
9 | "devDependencies": {
10 | "webpack": "1.14.0"
11 | },
12 | "dependencies": {
13 | "@nx-js/framework": "^1.0.0-beta.1.1.0"
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/angular-v4.1.2-keyed/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Angular v4.1.2 (AOT)
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
--------------------------------------------------------------------------------
/ember-v2.13.0/.travis.yml:
--------------------------------------------------------------------------------
1 | ---
2 | language: node_js
3 | node_js:
4 | - "4"
5 |
6 | sudo: false
7 |
8 | cache:
9 | directories:
10 | - node_modules
11 |
12 | before_install:
13 | - npm config set spin false
14 | - npm install -g bower
15 | - bower --version
16 | - npm install phantomjs-prebuilt
17 | - node_modules/phantomjs-prebuilt/bin/phantomjs --version
18 |
19 | install:
20 | - npm install
21 | - bower install
22 |
23 | script:
24 | - npm test
25 |
--------------------------------------------------------------------------------
/glimmer-v0.3.10/config/resolver-configuration.d.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * This is just a placeholder file to keep TypeScript aware editors happy. At build time,
3 | * it will be replaced with a resolver configuration composed from your application's
4 | * `config/environment.js` (and supplemented with default settings as possible).
5 | */
6 |
7 | import { ResolverConfiguration } from '@glimmer/resolver';
8 | declare var _default: ResolverConfiguration;
9 | export default _default;
10 |
--------------------------------------------------------------------------------
/angular-v4.1.2-non-keyed/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Angular v4.1.2 (AOT)
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
--------------------------------------------------------------------------------
/domvm-v2.1.4-keyed/build.js:
--------------------------------------------------------------------------------
1 | const rollup = require('rollup').rollup;
2 | const buble = require('rollup-plugin-buble');
3 | const uglify = require('rollup-plugin-uglify');
4 | const commonjs = require('rollup-plugin-commonjs');
5 |
6 | rollup({
7 | entry: 'src/main.es6.js',
8 | plugins: [
9 | commonjs(),
10 | buble(),
11 | uglify(),
12 | ]
13 | }).then(bundle => bundle.write({
14 | dest: 'dist/bundle.js',
15 | format: 'iife'
16 | })).catch(err => console.log(err.stack));
--------------------------------------------------------------------------------
/domvm-v2.1.4-non-keyed/build.js:
--------------------------------------------------------------------------------
1 | const rollup = require('rollup').rollup;
2 | const buble = require('rollup-plugin-buble');
3 | const uglify = require('rollup-plugin-uglify');
4 | const commonjs = require('rollup-plugin-commonjs');
5 |
6 | rollup({
7 | entry: 'src/main.es6.js',
8 | plugins: [
9 | commonjs(),
10 | buble(),
11 | uglify(),
12 | ]
13 | }).then(bundle => bundle.write({
14 | dest: 'dist/bundle.js',
15 | format: 'iife'
16 | })).catch(err => console.log(err.stack));
--------------------------------------------------------------------------------
/ember-v2.13.0/.editorconfig:
--------------------------------------------------------------------------------
1 | # EditorConfig helps developers define and maintain consistent
2 | # coding styles between different editors and IDEs
3 | # editorconfig.org
4 |
5 | root = true
6 |
7 |
8 | [*]
9 | end_of_line = lf
10 | charset = utf-8
11 | trim_trailing_whitespace = true
12 | insert_final_newline = true
13 | indent_style = space
14 | indent_size = 2
15 |
16 | [*.hbs]
17 | insert_final_newline = false
18 |
19 | [*.{diff,md}]
20 | trim_trailing_whitespace = false
21 |
--------------------------------------------------------------------------------
/glimmer-v0.3.10/.editorconfig:
--------------------------------------------------------------------------------
1 | # EditorConfig helps developers define and maintain consistent
2 | # coding styles between different editors and IDEs
3 | # editorconfig.org
4 |
5 | root = true
6 |
7 |
8 | [*]
9 | end_of_line = lf
10 | charset = utf-8
11 | trim_trailing_whitespace = true
12 | insert_final_newline = true
13 | indent_style = space
14 | indent_size = 2
15 |
16 | [*.hbs]
17 | insert_final_newline = false
18 |
19 | [*.{diff,md}]
20 | trim_trailing_whitespace = false
21 |
--------------------------------------------------------------------------------
/css/main.css:
--------------------------------------------------------------------------------
1 | body {
2 | padding: 10px 0 0 0;
3 | margin: 0;
4 | overflow-y: scroll;
5 | }
6 | #duration {
7 | padding-top: 0px;
8 | }
9 | .jumbotron {
10 | padding-top:10px;
11 | padding-bottom:10px;
12 | }
13 | .test-data a {
14 | display: block;
15 | }
16 | .preloadicon {
17 | position: absolute;
18 | top:-20px;
19 | left:-20px;
20 | }
21 | .col-sm-6.smallpad {
22 | padding: 5px;
23 | }
24 | .jumbotron .row h1 {
25 | font-size: 40px;
26 | }
--------------------------------------------------------------------------------
/angular-v1.6.3-keyed/src/main.js:
--------------------------------------------------------------------------------
1 | import { default as jQuery } from 'jquery';
2 | import { default as angular } from 'angular';
3 | import { HomeController } from './home.controller';
4 |
5 | angular
6 | .module('app', [])
7 | .config(['$compileProvider', function ($compileProvider) {
8 | $compileProvider.debugInfoEnabled(false);
9 | }])
10 | .run(() => {
11 | console.info(angular.version.full);
12 | })
13 | .controller('HomeController', HomeController);
--------------------------------------------------------------------------------
/stem-v0.2.70/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Stem v0.2.70
6 |
7 |
8 |
9 |
12 |
13 |
14 |
15 |
16 |
--------------------------------------------------------------------------------
/angular-v2.4.9-keyed/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "compilerOptions": {
3 | "target": "es5",
4 | "module": "es2015",
5 | "moduleResolution": "node",
6 | "sourceMap": true,
7 | "emitDecoratorMetadata": true,
8 | "experimentalDecorators": true,
9 | "removeComments": false,
10 | "noImplicitAny": true,
11 | "suppressImplicitAnyIndexErrors": true,
12 | "outDir": "lib"
13 | },
14 | "angularCompilerOptions": {
15 | "skipMetadataEmit": true
16 | }
17 |
18 |
19 | }
20 |
--------------------------------------------------------------------------------
/angular-v2.4.9-non-keyed/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "compilerOptions": {
3 | "target": "es5",
4 | "module": "es2015",
5 | "moduleResolution": "node",
6 | "sourceMap": true,
7 | "emitDecoratorMetadata": true,
8 | "experimentalDecorators": true,
9 | "removeComments": false,
10 | "noImplicitAny": true,
11 | "suppressImplicitAnyIndexErrors": true,
12 | "outDir": "lib"
13 | },
14 | "angularCompilerOptions": {
15 | "skipMetadataEmit": true
16 | }
17 |
18 |
19 | }
20 |
--------------------------------------------------------------------------------
/dio-v3.0.5/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | dio v3.0.5
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/angular-v4.1.2-keyed/rollup.config.aot.js:
--------------------------------------------------------------------------------
1 | import nodeResolve from 'rollup-plugin-node-resolve'
2 | import commonjs from 'rollup-plugin-commonjs';
3 | import uglify from 'rollup-plugin-uglify'
4 |
5 | export default {
6 | entry: 'tmp/main.aot.js',
7 | dest: 'dist/main.aot.js',
8 | sourceMap: false,
9 | format: 'iife',
10 | moduleName: 'ng4App',
11 | plugins: [
12 | nodeResolve({
13 | jsnext: true,
14 | module: true
15 | }),
16 | commonjs(),
17 | uglify()
18 | ]
19 | }
--------------------------------------------------------------------------------
/angular-v4.1.2-keyed/rollup.config.jit.js:
--------------------------------------------------------------------------------
1 | import nodeResolve from 'rollup-plugin-node-resolve'
2 | import commonjs from 'rollup-plugin-commonjs';
3 | import uglify from 'rollup-plugin-uglify'
4 |
5 | export default {
6 | entry: 'tmp/main.jit.js',
7 | dest: 'dist/main.jit.js',
8 | sourceMap: false,
9 | format: 'iife',
10 | moduleName: 'ng4App',
11 | plugins: [
12 | nodeResolve({
13 | jsnext: true,
14 | module: true
15 | }),
16 | commonjs(),
17 | uglify()
18 | ]
19 | }
--------------------------------------------------------------------------------
/ember-v2.13.0/app/app.js:
--------------------------------------------------------------------------------
1 | import Ember from 'ember';
2 | import Resolver from './resolver';
3 | import loadInitializers from 'ember-load-initializers';
4 | import config from './config/environment';
5 |
6 | let App;
7 |
8 | Ember.MODEL_FACTORY_INJECTIONS = true;
9 |
10 | App = Ember.Application.extend({
11 | modulePrefix: config.modulePrefix,
12 | podModulePrefix: config.podModulePrefix,
13 | Resolver
14 | });
15 |
16 | loadInitializers(App, config.modulePrefix);
17 |
18 | export default App;
19 |
--------------------------------------------------------------------------------
/angular-v4.1.2-non-keyed/rollup.config.aot.js:
--------------------------------------------------------------------------------
1 | import nodeResolve from 'rollup-plugin-node-resolve'
2 | import commonjs from 'rollup-plugin-commonjs';
3 | import uglify from 'rollup-plugin-uglify'
4 |
5 | export default {
6 | entry: 'tmp/main.aot.js',
7 | dest: 'dist/main.aot.js',
8 | sourceMap: false,
9 | format: 'iife',
10 | moduleName: 'ng4App',
11 | plugins: [
12 | nodeResolve({
13 | jsnext: true,
14 | module: true
15 | }),
16 | commonjs(),
17 | uglify()
18 | ]
19 | }
--------------------------------------------------------------------------------
/angular-v4.1.2-non-keyed/rollup.config.jit.js:
--------------------------------------------------------------------------------
1 | import nodeResolve from 'rollup-plugin-node-resolve'
2 | import commonjs from 'rollup-plugin-commonjs';
3 | import uglify from 'rollup-plugin-uglify'
4 |
5 | export default {
6 | entry: 'tmp/main.jit.js',
7 | dest: 'dist/main.jit.js',
8 | sourceMap: false,
9 | format: 'iife',
10 | moduleName: 'ng4App',
11 | plugins: [
12 | nodeResolve({
13 | jsnext: true,
14 | module: true
15 | }),
16 | commonjs(),
17 | uglify()
18 | ]
19 | }
--------------------------------------------------------------------------------
/riot-v3.5.0/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "js-framework-benchmark-riot",
3 | "version": "1.0.0",
4 | "description": "Benchmark for riot framework",
5 | "scripts": {
6 | "build-dev": "webpack -w -d",
7 | "build-prod": "webpack -p"
8 | },
9 | "devDependencies": {
10 | "babel-core": "6.24.1",
11 | "babel-loader": "7.0.0",
12 | "babel-preset-es2015-riot": "1.1.0",
13 | "tag-loader": "0.3.0",
14 | "webpack": "2.5.1"
15 | },
16 | "dependencies": {
17 | "riot": "3.5.0"
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/css/bootstrap/dist/js/npm.js:
--------------------------------------------------------------------------------
1 | // This file is autogenerated via the `commonjs` Grunt task. You can require() this file in a CommonJS environment.
2 | require('../../js/transition.js')
3 | require('../../js/alert.js')
4 | require('../../js/button.js')
5 | require('../../js/carousel.js')
6 | require('../../js/collapse.js')
7 | require('../../js/dropdown.js')
8 | require('../../js/modal.js')
9 | require('../../js/tooltip.js')
10 | require('../../js/popover.js')
11 | require('../../js/scrollspy.js')
12 | require('../../js/tab.js')
13 | require('../../js/affix.js')
--------------------------------------------------------------------------------
/nx-v1.0.0-beta.2.0.1-keyed/src/timer.js:
--------------------------------------------------------------------------------
1 | 'use strict'
2 |
3 | let startTime
4 | let lastMeasure
5 |
6 | function startMeasure (name) {
7 | startTime = performance.now()
8 | lastMeasure = name
9 | }
10 |
11 | function stopMeasure () {
12 | let last = lastMeasure
13 | if (lastMeasure) {
14 | window.setTimeout(() => {
15 | lastMeasure = null
16 | let stop = performance.now()
17 | console.log(last + " took " + (stop - startTime))
18 | })
19 | }
20 | }
21 |
22 | module.exports = {
23 | startMeasure,
24 | stopMeasure
25 | }
26 |
--------------------------------------------------------------------------------
/nx-v1.0.0-beta.2.0.1-non-keyed/src/timer.js:
--------------------------------------------------------------------------------
1 | 'use strict'
2 |
3 | let startTime
4 | let lastMeasure
5 |
6 | function startMeasure (name) {
7 | startTime = performance.now()
8 | lastMeasure = name
9 | }
10 |
11 | function stopMeasure () {
12 | let last = lastMeasure
13 | if (lastMeasure) {
14 | window.setTimeout(() => {
15 | lastMeasure = null
16 | let stop = performance.now()
17 | console.log(last + " took " + (stop - startTime))
18 | })
19 | }
20 | }
21 |
22 | module.exports = {
23 | startMeasure,
24 | stopMeasure
25 | }
26 |
--------------------------------------------------------------------------------
/pico-dom-v0.18.0/src/time.js:
--------------------------------------------------------------------------------
1 | /*eslint indent:0, quotes:0, no-console:0*/
2 | var startTime
3 | var lastMeasure
4 |
5 | module.exports = {
6 | start: function startMeasure(name) {
7 | startTime = performance.now()
8 | lastMeasure = name
9 | },
10 | stop: function stopMeasure() {
11 | var last = lastMeasure
12 | if (lastMeasure) {
13 | window.setTimeout(function () {
14 | lastMeasure = null
15 | var stop = performance.now()
16 | console.log(last+" took "+(stop-startTime))
17 | }, 0)
18 | }
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/polymer-v1.7.0/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Polymer v1.7.0
6 |
7 |
8 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
--------------------------------------------------------------------------------
/css/bootstrap/less/mixins/border-radius.less:
--------------------------------------------------------------------------------
1 | // Single side border-radius
2 |
3 | .border-top-radius(@radius) {
4 | border-top-right-radius: @radius;
5 | border-top-left-radius: @radius;
6 | }
7 | .border-right-radius(@radius) {
8 | border-bottom-right-radius: @radius;
9 | border-top-right-radius: @radius;
10 | }
11 | .border-bottom-radius(@radius) {
12 | border-bottom-right-radius: @radius;
13 | border-bottom-left-radius: @radius;
14 | }
15 | .border-left-radius(@radius) {
16 | border-bottom-left-radius: @radius;
17 | border-top-left-radius: @radius;
18 | }
19 |
--------------------------------------------------------------------------------
/css/bootstrap/less/mixins/reset-text.less:
--------------------------------------------------------------------------------
1 | .reset-text() {
2 | font-family: @font-family-base;
3 | // We deliberately do NOT reset font-size.
4 | font-style: normal;
5 | font-weight: normal;
6 | letter-spacing: normal;
7 | line-break: auto;
8 | line-height: @line-height-base;
9 | text-align: left; // Fallback for where `start` is not supported
10 | text-align: start;
11 | text-decoration: none;
12 | text-shadow: none;
13 | text-transform: none;
14 | white-space: normal;
15 | word-break: normal;
16 | word-spacing: normal;
17 | word-wrap: normal;
18 | }
19 |
--------------------------------------------------------------------------------
/glimmer-v0.3.10/src/index.ts:
--------------------------------------------------------------------------------
1 | import App from './main';
2 | import { ComponentManager, setPropertyDidChange } from '@glimmer/component';
3 |
4 | const app = new App();
5 | const containerElement = document.getElementById('app');
6 |
7 | setPropertyDidChange(() => {
8 | app.scheduleRerender();
9 | });
10 |
11 | app.registerInitializer({
12 | initialize(registry) {
13 | registry.register(`component-manager:/${app.rootName}/component-managers/main`, ComponentManager)
14 | }
15 | });
16 |
17 | app.renderComponent('my-table', containerElement, null);
18 |
19 | app.boot();
20 |
--------------------------------------------------------------------------------
/domvm-v2.1.4-keyed/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "js-framework-benchmark-domvm-keyed",
3 | "version": "2.1.4-keyed",
4 | "description": "Benchmark for domvm framework (keyed)",
5 | "scripts": {
6 | "build-dev": "node build.js",
7 | "build-prod": "node build.js"
8 | },
9 | "devDependencies": {
10 | "rollup": "*",
11 | "rollup-plugin-buble": "*",
12 | "rollup-plugin-commonjs": "*",
13 | "rollup-plugin-uglify": "*"
14 | },
15 | "dependencies": {
16 | "domvm": "git://github.com/leeoniya/domvm.git#eeb3690109fc6515b462bfaef2f81dbcb68a827a"
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/ember-v2.13.0/tests/helpers/start-app.js:
--------------------------------------------------------------------------------
1 | import Ember from 'ember';
2 | import Application from '../../app';
3 | import config from '../../config/environment';
4 |
5 | export default function startApp(attrs) {
6 | let application;
7 |
8 | let attributes = Ember.merge({}, config.APP);
9 | attributes = Ember.merge(attributes, attrs); // use defaults, but you can override;
10 |
11 | Ember.run(() => {
12 | application = Application.create(attributes);
13 | application.setupForTesting();
14 | application.injectTestHelpers();
15 | });
16 |
17 | return application;
18 | }
19 |
--------------------------------------------------------------------------------
/knockout-v3.4.1/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "js-framework-benchmark-knockoutjs",
3 | "version": "1.0.0",
4 | "description": "Knockout v3.4 demo",
5 | "scripts": {
6 | "build-dev": "webpack -w -d -c webpack.config.js",
7 | "build-prod": "webpack -p -c webpack.config.js"
8 | },
9 | "author": "Stefan Krause",
10 | "license": "Apache-2.0",
11 | "devDependencies": {
12 | "babel-core": "6.18.2",
13 | "babel-loader": "6.2.8",
14 | "babel-preset-es2015": "6.18.0",
15 | "webpack": "1.13.3"
16 | },
17 | "dependencies": {
18 | "knockout": "3.4.1"
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/domvm-v2.1.4-non-keyed/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "js-framework-benchmark-domvm-non-keyed",
3 | "version": "2.1.4-non-keyed",
4 | "description": "Benchmark for domvm framework (non-keyed)",
5 | "scripts": {
6 | "build-dev": "node build.js",
7 | "build-prod": "node build.js"
8 | },
9 | "devDependencies": {
10 | "rollup": "*",
11 | "rollup-plugin-buble": "*",
12 | "rollup-plugin-commonjs": "*",
13 | "rollup-plugin-uglify": "*"
14 | },
15 | "dependencies": {
16 | "domvm": "git://github.com/leeoniya/domvm.git#eeb3690109fc6515b462bfaef2f81dbcb68a827a"
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/Datum-v0.8.0/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "js-framework-benchmark-Datumjs",
3 | "version": "1.0.0",
4 | "description": "Benchmark for Datum v0.8",
5 | "scripts": {
6 | "build-dev": "webpack -w -d -c webpack.config.js",
7 | "build-prod": "webpack -p -c webpack.config.js"
8 | },
9 | "contributors": ["Stefan Krause", "Martin Rixham"],
10 | "license": "Apache-2.0",
11 | "devDependencies": {
12 | "babel-core": "6.18.2",
13 | "babel-loader": "6.2.8",
14 | "babel-preset-es2015": "6.18.0",
15 | "webpack": "1.13.3"
16 | },
17 | "dependencies": {
18 | "Datum": "0.8.0"
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/mithril-v1.1.1/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "js-framework-benchmark-mithrill-1.0.0-alpha",
3 | "version": "1.0.0",
4 | "description": "Benchmark for Mithrill 1.0.0 framework",
5 | "scripts": {
6 | "build-dev": "webpack -w -d",
7 | "build-prod": "webpack -p"
8 | },
9 | "devDependencies": {
10 | "babel-core": "6.24.1",
11 | "babel-loader": "7.0.0",
12 | "babel-plugin-transform-react-jsx": "6.24.1",
13 | "babel-preset-es2015": "6.24.1",
14 | "babel-preset-react": "6.24.1",
15 | "webpack": "2.4.1"
16 | },
17 | "dependencies": {
18 | "mithril": "^1.1.1"
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/plastiq-v1.33.0/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "js-framework-benchmark-plastiq",
3 | "version": "1.0.0",
4 | "description": "Benchmark for plastiq framework",
5 | "scripts": {
6 | "build-dev": "webpack -w -d -c webpack.config.js",
7 | "build-prod": "webpack -p -c webpack.config.js"
8 | },
9 | "devDependencies": {
10 | "babel-core": "6.14.0",
11 | "babel-loader": "6.2.5",
12 | "babel-preset-es2015": "6.14.0",
13 | "babel-preset-react": "6.11.1",
14 | "webpack": "1.13.2",
15 | "jsx-loader": "0.13.2"
16 | },
17 | "dependencies": {
18 | "plastiq": "1.33.0"
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/rx-domh-v0.0.2-rxjs-v5.3.0/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "js-framework-benchmark-rx-domh",
3 | "version": "1.0.0",
4 | "description": "Benchmark for rx-domh framework",
5 | "scripts": {
6 | "build-dev": "webpack -w -d -c webpack.config.js",
7 | "build-prod": "webpack -p -d -c webpack.config.js"
8 | },
9 | "devDependencies": {
10 | "babel-core": "6.18.2",
11 | "babel-loader": "6.2.8",
12 | "babel-preset-es2015": "6.18.0",
13 | "babel-preset-react": "6.16.0",
14 | "webpack": "1.13.3"
15 | },
16 | "dependencies": {
17 | "rx-domh": "0.0.2",
18 | "rxjs": "5.3.0"
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/css/bootstrap/less/mixins/pagination.less:
--------------------------------------------------------------------------------
1 | // Pagination
2 |
3 | .pagination-size(@padding-vertical; @padding-horizontal; @font-size; @line-height; @border-radius) {
4 | > li {
5 | > a,
6 | > span {
7 | padding: @padding-vertical @padding-horizontal;
8 | font-size: @font-size;
9 | line-height: @line-height;
10 | }
11 | &:first-child {
12 | > a,
13 | > span {
14 | .border-left-radius(@border-radius);
15 | }
16 | }
17 | &:last-child {
18 | > a,
19 | > span {
20 | .border-right-radius(@border-radius);
21 | }
22 | }
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/elm-v0.18.0/elm-package.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": "1.0.0",
3 | "summary": "helpful summary of your project, less than 80 characters",
4 | "repository": "https://github.com/user/project.git",
5 | "license": "BSD3",
6 | "source-directories": [
7 | "."
8 | ],
9 | "exposed-modules": [],
10 | "dependencies": {
11 | "elm-community/array-extra": "1.0.2 <= v < 2.0.0",
12 | "elm-lang/core": "5.0.0 <= v < 6.0.0",
13 | "elm-lang/html": "2.0.0 <= v < 3.0.0",
14 | "mgold/elm-random-pcg": "4.0.2 <= v < 5.0.0"
15 | },
16 | "elm-version": "0.18.0 <= v < 0.19.0"
17 | }
18 |
--------------------------------------------------------------------------------
/glimmer-v0.3.10/src/main.ts:
--------------------------------------------------------------------------------
1 | import Application from '@glimmer/application';
2 | import Resolver, { ResolverConfiguration, BasicModuleRegistry } from '@glimmer/resolver';
3 | import moduleMap from '../config/module-map';
4 | import resolverConfiguration from '../config/resolver-configuration';
5 |
6 | export default class App extends Application {
7 | constructor() {
8 | let moduleRegistry = new BasicModuleRegistry(moduleMap);
9 | let resolver = new Resolver(resolverConfiguration, moduleRegistry);
10 |
11 | super({
12 | rootName: resolverConfiguration.app.rootName,
13 | resolver
14 | });
15 | }
16 | }
--------------------------------------------------------------------------------
/angular-v4.1.2-keyed/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "compilerOptions": {
3 | "target": "es2015",
4 | "module": "es2015",
5 | "moduleResolution": "node",
6 | "sourceMap": true,
7 | "emitDecoratorMetadata": true,
8 | "experimentalDecorators": true,
9 | "lib": [
10 | "es2015",
11 | "dom"
12 | ],
13 | "noImplicitAny": true,
14 | "suppressImplicitAnyIndexErrors": true,
15 | "outDir": "tmp"
16 | },
17 | "angularCompilerOptions": {
18 | "annotationsAs": "static fields",
19 | "annotateForClosureCompiler": true
20 | },
21 | "exclude": [
22 | "node_modules",
23 | "tmp",
24 | "dist"
25 | ]
26 | }
--------------------------------------------------------------------------------
/angular-v4.1.2-non-keyed/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "compilerOptions": {
3 | "target": "es2015",
4 | "module": "es2015",
5 | "moduleResolution": "node",
6 | "sourceMap": true,
7 | "emitDecoratorMetadata": true,
8 | "experimentalDecorators": true,
9 | "lib": [
10 | "es2015",
11 | "dom"
12 | ],
13 | "noImplicitAny": true,
14 | "suppressImplicitAnyIndexErrors": true,
15 | "outDir": "tmp"
16 | },
17 | "angularCompilerOptions": {
18 | "annotationsAs": "static fields",
19 | "annotateForClosureCompiler": true
20 | },
21 | "exclude": [
22 | "node_modules",
23 | "tmp",
24 | "dist"
25 | ]
26 | }
--------------------------------------------------------------------------------
/marionette-v3.3.1/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "js-framework-benchmark-marionette",
3 | "version": "1.0.0",
4 | "description": "Marionette v3.1.0 demo",
5 | "main": "index.js",
6 | "scripts": {
7 | "build-dev": "webpack -w -d",
8 | "build-prod": "webpack -p"
9 | },
10 | "devDependencies": {
11 | "babel-core": "6.24.1",
12 | "babel-loader": "7.0.0",
13 | "babel-preset-es2015": "6.24.1",
14 | "webpack": "2.5.1"
15 | },
16 | "dependencies": {
17 | "backbone": "1.3.3",
18 | "backbone.marionette": "3.3.1",
19 | "backbone.radio": "2.0.0",
20 | "jquery": "3.2.1",
21 | "underscore": "1.8.3"
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/cleanup.sh:
--------------------------------------------------------------------------------
1 | rm -r angular/node_modules
2 | rm -r angular2/node_modules
3 | rm -r aurelia/node_modules
4 | rm -r aurelia/jspm_packages
5 | rm -r elm/elm-stuff
6 | rm -r elm/elm-node_modules
7 | rm -r ember/node_modules
8 | rm -r ember/bower_components
9 | rm -r mithril/node_modules
10 | rm -r ractive/node_modules
11 | rm -r react/node_modules
12 | rm -r tests/node_modules
13 | rm -r node_modules
14 |
15 | rm -r angular/dist
16 | rm angular2/app/app.js*
17 | rm -r aurelia/dist/*
18 | rm -r elm/dist
19 | rm -r ember/dist
20 | rm -r mithril/dist
21 | rm -r ractive/dist
22 | rm -r react/dist
23 | rm -r vidom/dist
24 | rm -r vue/dist
25 |
26 | rm -r webdriver-ts/node_modules
--------------------------------------------------------------------------------
/hyperapp-v0.9.1/src/rowsView.js:
--------------------------------------------------------------------------------
1 | import { h } from "hyperapp"
2 |
3 | export default ({ state, actions }) => state.data.map(({ id, label }, i) =>
4 |
5 | | {id} |
6 |
7 | actions.select({ id })}>{label}
8 | |
9 |
10 | actions.delete({ id })}>
11 |
12 |
13 |
14 | |
15 | |
16 |
17 | )
18 |
--------------------------------------------------------------------------------
/webdriver-java/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "js-framework-benchmark-angular-testrunner",
3 | "version": "1.0.0",
4 | "description": "Simple Benchmark for Javascript client side rendering",
5 | "scripts": {
6 | "postinstall": "mvn package",
7 | "selenium": "mvn package exec:java && node makeTable.js"
8 | },
9 | "author": "Stefan Krause",
10 | "license": "ISC",
11 | "repository": {
12 | "type": "git",
13 | "url": "https://github.com/krausest/js-framework-benchmark.git"
14 | },
15 | "dependencies": {
16 | "chromedriver": "^2.24.1",
17 | "dot": "^1.0.0",
18 | "lodash": "^4.0.0",
19 | "rgba-convert": "^0.3.0"
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/css/bootstrap/less/mixins/panels.less:
--------------------------------------------------------------------------------
1 | // Panels
2 |
3 | .panel-variant(@border; @heading-text-color; @heading-bg-color; @heading-border) {
4 | border-color: @border;
5 |
6 | & > .panel-heading {
7 | color: @heading-text-color;
8 | background-color: @heading-bg-color;
9 | border-color: @heading-border;
10 |
11 | + .panel-collapse > .panel-body {
12 | border-top-color: @border;
13 | }
14 | .badge {
15 | color: @heading-bg-color;
16 | background-color: @heading-text-color;
17 | }
18 | }
19 | & > .panel-footer {
20 | + .panel-collapse > .panel-body {
21 | border-bottom-color: @border;
22 | }
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/ember-v2.13.0/public/crossdomain.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
15 |
16 |
--------------------------------------------------------------------------------
/css/bootstrap/less/wells.less:
--------------------------------------------------------------------------------
1 | //
2 | // Wells
3 | // --------------------------------------------------
4 |
5 |
6 | // Base class
7 | .well {
8 | min-height: 20px;
9 | padding: 19px;
10 | margin-bottom: 20px;
11 | background-color: @well-bg;
12 | border: 1px solid @well-border;
13 | border-radius: @border-radius-base;
14 | .box-shadow(inset 0 1px 1px rgba(0,0,0,.05));
15 | blockquote {
16 | border-color: #ddd;
17 | border-color: rgba(0,0,0,.15);
18 | }
19 | }
20 |
21 | // Sizes
22 | .well-lg {
23 | padding: 24px;
24 | border-radius: @border-radius-large;
25 | }
26 | .well-sm {
27 | padding: 9px;
28 | border-radius: @border-radius-small;
29 | }
30 |
--------------------------------------------------------------------------------
/ember-v2.13.0/.jshintrc:
--------------------------------------------------------------------------------
1 | {
2 | "predef": [
3 | "document",
4 | "window",
5 | "-Promise"
6 | ],
7 | "browser": true,
8 | "boss": true,
9 | "curly": true,
10 | "debug": false,
11 | "devel": true,
12 | "eqeqeq": true,
13 | "evil": true,
14 | "forin": false,
15 | "immed": false,
16 | "laxbreak": false,
17 | "newcap": true,
18 | "noarg": true,
19 | "noempty": false,
20 | "nonew": false,
21 | "nomen": false,
22 | "onevar": false,
23 | "plusplus": false,
24 | "regexp": false,
25 | "undef": true,
26 | "sub": true,
27 | "strict": false,
28 | "white": false,
29 | "eqnull": true,
30 | "esversion": 6,
31 | "unused": true
32 | }
33 |
--------------------------------------------------------------------------------
/dio-v3.0.5/webpack.config.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | var cache = {};
4 | var loaders = [
5 | {
6 | test: /\.js$/,
7 | loader: 'babel-loader'
8 | },
9 | {
10 | test: /\.css$/,
11 | loader: 'style-loader!css-loader'
12 | }
13 | ];
14 | var extensions = [
15 | '', '.js', '.jsx', '.es6.js'
16 | ];
17 |
18 | module.exports = [{
19 | cache: cache,
20 | module: {
21 | loaders: loaders
22 | },
23 | entry: {
24 | main: './src/main.js',
25 | },
26 | output: {
27 | path: './dist',
28 | filename: '[name].js'
29 | },
30 | resolve: {
31 | extensions: extensions,
32 | root: [
33 | __dirname,
34 | __dirname + '/src'
35 | ],
36 | alias: {
37 | }
38 | }
39 | }];
--------------------------------------------------------------------------------
/css/bootstrap/less/mixins/hide-text.less:
--------------------------------------------------------------------------------
1 | // CSS image replacement
2 | //
3 | // Heads up! v3 launched with only `.hide-text()`, but per our pattern for
4 | // mixins being reused as classes with the same name, this doesn't hold up. As
5 | // of v3.0.1 we have added `.text-hide()` and deprecated `.hide-text()`.
6 | //
7 | // Source: https://github.com/h5bp/html5-boilerplate/commit/aa0396eae757
8 |
9 | // Deprecated as of v3.0.1 (has been removed in v4)
10 | .hide-text() {
11 | font: ~"0/0" a;
12 | color: transparent;
13 | text-shadow: none;
14 | background-color: transparent;
15 | border: 0;
16 | }
17 |
18 | // New mixin to use as of v3.0.1
19 | .text-hide() {
20 | .hide-text();
21 | }
22 |
--------------------------------------------------------------------------------
/elm-v0.18.0/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "js-framework-benchmark-elm",
3 | "version": "1.0.0",
4 | "description": "Elm demo",
5 | "main": "index.js",
6 | "scripts": {
7 | "postinstall" : "elm-package install -y",
8 | "build-prod": "elm-make src/Main.elm --output=dist/main.js"
9 | },
10 | "keywords": [
11 | "elm"
12 | ],
13 | "author": "Eduard Kyvenko ",
14 | "license": "ISC",
15 | "homepage": "https://github.com/krausest/js-framework-benchmark",
16 | "repository": {
17 | "type": "git",
18 | "url": "https://github.com/krausest/js-framework-benchmark.git"
19 | },
20 | "devDependencies": {
21 | "elm": "0.18.0"
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/pico-dom-v0.18.0/src/main.js:
--------------------------------------------------------------------------------
1 | /*eslint indent:0 quotes:0*/
2 | var el = require('pico-dom').element,
3 | menu = require('./menu'),
4 | table = require('./table'),
5 | Store = require('./store')
6 |
7 | var title = 'picoDOM v0.18.0',
8 | store = new Store()
9 |
10 | el(document.body,
11 | el('div#main',
12 | el('div.container',
13 | el('div.jumbotron',
14 | el('div.row',
15 | el('div.col-md-6',
16 | el('h1', title)
17 | ),
18 | el('div.col-md-6', menu)
19 | )
20 | ),
21 | table,
22 | el('span.preloadicon.glyphicon.glyphicon-remove[aria-hidden]')
23 | )
24 | )
25 | )
26 | menu.update(store)
27 |
--------------------------------------------------------------------------------
/glimmer-v0.3.10/src/ui/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | Hello Glimmer
7 |
8 |
9 |
10 | {{content-for "head"}}
11 |
12 |
13 |
14 | {{content-for "head-footer"}}
15 |
16 |
17 | {{content-for "body"}}
18 |
19 |
20 |
21 |
22 | {{content-for "body-footer"}}
23 |
24 |
25 |
--------------------------------------------------------------------------------
/cyclejs-dom-v17.1.0/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "js-framework-benchmark-cyclejs",
3 | "version": "1.0.0",
4 | "description": "Benchmark for Cycle.js framework",
5 | "scripts": {
6 | "build-dev": "webpack -w -d",
7 | "build-prod": "webpack -p"
8 | },
9 | "devDependencies": {
10 | "babel-core": "6.24.1",
11 | "babel-loader": "7.0.0",
12 | "babel-plugin-transform-react-jsx": "6.24.1",
13 | "babel-preset-es2015": "6.24.1",
14 | "babel-preset-stage-0": "6.24.1",
15 | "webpack": "2.5.1"
16 | },
17 | "dependencies": {
18 | "@cycle/dom": "17.1.0",
19 | "@cycle/xstream-run": "4.2.0",
20 | "snabbdom-jsx": "0.3.1",
21 | "xstream": "10.8.0"
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/css/bootstrap/less/mixins/list-group.less:
--------------------------------------------------------------------------------
1 | // List Groups
2 |
3 | .list-group-item-variant(@state; @background; @color) {
4 | .list-group-item-@{state} {
5 | color: @color;
6 | background-color: @background;
7 |
8 | a&,
9 | button& {
10 | color: @color;
11 |
12 | .list-group-item-heading {
13 | color: inherit;
14 | }
15 |
16 | &:hover,
17 | &:focus {
18 | color: @color;
19 | background-color: darken(@background, 5%);
20 | }
21 | &.active,
22 | &.active:hover,
23 | &.active:focus {
24 | color: #fff;
25 | background-color: @color;
26 | border-color: @color;
27 | }
28 | }
29 | }
30 | }
31 |
--------------------------------------------------------------------------------
/webdriver-ts/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "compilerOptions": {
3 | "outDir": "./dist/",
4 | "sourceMap": true,
5 | "noImplicitAny": true,
6 | "module": "commonjs",
7 | "moduleResolution": "node",
8 | "target": "es6",
9 | "noLib": false,
10 | "allowJs": false
11 | },
12 | "files": [
13 | "./src/common.ts",
14 | "./src/benchmarks.ts",
15 | "./src/webdriverAccess.ts",
16 | "./src/benchmarkRunner.ts",
17 | "./src/createResultTable.ts",
18 | "./src/createIndex.ts",
19 | "./src/runCheck.ts",
20 | "./src/nonKeyed.ts"
21 | ],
22 | "exclude": [
23 | "node_modules"
24 | ]
25 | }
26 |
--------------------------------------------------------------------------------
/tsers-v1.0.0/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "js-framework-benchmark-tsers",
3 | "version": "1.0.0",
4 | "description": "Benchmark for TSERS framework",
5 | "scripts": {
6 | "build-dev": "webpack -w -d -c webpack.config.js",
7 | "build-prod": "webpack -p -c webpack.config.js"
8 | },
9 | "devDependencies": {
10 | "babel-core": "6.10.4",
11 | "babel-loader": "6.2.4",
12 | "babel-plugin-transform-react-jsx": "6.8.0",
13 | "babel-preset-es2015": "6.9.0",
14 | "babel-preset-stage-0": "6.5.0",
15 | "webpack": "1.13.1"
16 | },
17 | "dependencies": {
18 | "@tsers/core": "1.0.0",
19 | "@tsers/model": "1.0.0",
20 | "@tsers/react": "1.1.0",
21 | "rx": "4.1.0"
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/ember-v2.13.0/app/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | Ember v2.13.0
7 |
8 |
9 |
10 | {{content-for "head"}}
11 |
12 |
13 |
14 | {{content-for "head-footer"}}
15 |
16 |
17 | {{content-for "body"}}
18 |
19 |
20 |
21 |
22 | {{content-for "body-footer"}}
23 |
24 |
25 |
--------------------------------------------------------------------------------
/webdriver-ts/README.txt:
--------------------------------------------------------------------------------
1 | Typescript Benchmark driver
2 | ===========================
3 |
4 | This is the indentended replacement for the java-webdriver.
5 |
6 | Compile with:
7 | npm install
8 | npm run compile
9 |
10 | Run with:
11 | npm run selenium
12 | You can optionally pass a list of frameworks or benchmarks that should be run.
13 | npm run selenium -- --framework ang,bobril --benchmark run
14 | runs all frameworks that contain the string ang or bobril and all benchmarks whose name contains run
15 |
16 | Create the result table:
17 | npm run results
18 | http://localhost:8080/webdriver-ts/table.html
19 |
20 |
21 | TODOs:
22 | * Convert makeTable.js to Typescript
23 | * Extract benchmark names and description to common module
--------------------------------------------------------------------------------
/css/bootstrap/less/mixins/clearfix.less:
--------------------------------------------------------------------------------
1 | // Clearfix
2 | //
3 | // For modern browsers
4 | // 1. The space content is one way to avoid an Opera bug when the
5 | // contenteditable attribute is included anywhere else in the document.
6 | // Otherwise it causes space to appear at the top and bottom of elements
7 | // that are clearfixed.
8 | // 2. The use of `table` rather than `block` is only necessary if using
9 | // `:before` to contain the top-margins of child elements.
10 | //
11 | // Source: http://nicolasgallagher.com/micro-clearfix-hack/
12 |
13 | .clearfix() {
14 | &:before,
15 | &:after {
16 | content: " "; // 1
17 | display: table; // 2
18 | }
19 | &:after {
20 | clear: both;
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/marko-v4.3.0/src/main/components/row.marko:
--------------------------------------------------------------------------------
1 | class {
2 | select() {
3 | this.emit('select', this.input.item);
4 | }
5 |
6 | delete() {
7 | this.emit('delete', this.input.item);
8 | }
9 | }
10 |
11 | $ var item = input.item;
12 |
13 |
14 | | ${item.id} |
15 |
16 | ${item.label}
17 | |
18 |
19 |
20 |
22 |
23 | |
24 | |
25 |
--------------------------------------------------------------------------------
/css/bootstrap/less/breadcrumbs.less:
--------------------------------------------------------------------------------
1 | //
2 | // Breadcrumbs
3 | // --------------------------------------------------
4 |
5 |
6 | .breadcrumb {
7 | padding: @breadcrumb-padding-vertical @breadcrumb-padding-horizontal;
8 | margin-bottom: @line-height-computed;
9 | list-style: none;
10 | background-color: @breadcrumb-bg;
11 | border-radius: @border-radius-base;
12 |
13 | > li {
14 | display: inline-block;
15 |
16 | + li:before {
17 | content: "@{breadcrumb-separator}\00a0"; // Unicode space added since inline-block means non-collapsing white-space
18 | padding: 0 5px;
19 | color: @breadcrumb-color;
20 | }
21 | }
22 |
23 | > .active {
24 | color: @breadcrumb-active-color;
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/css/bootstrap/less/responsive-embed.less:
--------------------------------------------------------------------------------
1 | // Embeds responsive
2 | //
3 | // Credit: Nicolas Gallagher and SUIT CSS.
4 |
5 | .embed-responsive {
6 | position: relative;
7 | display: block;
8 | height: 0;
9 | padding: 0;
10 | overflow: hidden;
11 |
12 | .embed-responsive-item,
13 | iframe,
14 | embed,
15 | object,
16 | video {
17 | position: absolute;
18 | top: 0;
19 | left: 0;
20 | bottom: 0;
21 | height: 100%;
22 | width: 100%;
23 | border: 0;
24 | }
25 | }
26 |
27 | // Modifier class for 16:9 aspect ratio
28 | .embed-responsive-16by9 {
29 | padding-bottom: 56.25%;
30 | }
31 |
32 | // Modifier class for 4:3 aspect ratio
33 | .embed-responsive-4by3 {
34 | padding-bottom: 75%;
35 | }
36 |
--------------------------------------------------------------------------------
/polymer-v1.7.0/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "js-framework-benchmark-polymer",
3 | "version": "1.0.0",
4 | "description": "Boilerplate for Polymer",
5 | "scripts": {
6 | "postinstall": "bower install",
7 | "build-dev": "polymer build",
8 | "build-prod": "polymer build"
9 | },
10 | "keywords": [
11 | "polymer"
12 | ],
13 | "author": "Tristan Rice",
14 | "license": "Apache-2.0",
15 | "homepage": "https://github.com/krausest/js-framework-benchmark",
16 | "repository": {
17 | "type": "git",
18 | "url": "https://github.com/krausest/js-framework-benchmark.git"
19 | },
20 | "devDependencies": {
21 | "bower": "^1.7.9",
22 | "polymer-cli": "^0.16.0"
23 | },
24 | "dependencies": {}
25 | }
26 |
--------------------------------------------------------------------------------
/install.js:
--------------------------------------------------------------------------------
1 | var _ = require('lodash');
2 | var exec = require('child_process').execSync;
3 | var fs = require('fs');
4 | var commandExists = require('command-exists');
5 |
6 | var installCommand = 'npm install';
7 |
8 | var excludedDirectories = ['css', 'dist','node_modules','webdriver-java'];
9 |
10 | commandExists('yarn', function(err, commandExists) {
11 |
12 | installCommand = commandExists ? 'yarn' : 'npm install';
13 |
14 | _.each(fs.readdirSync('.'), function(name) {
15 | if(fs.statSync(name).isDirectory() && name[0] !== '.' && excludedDirectories.indexOf(name)==-1) {
16 | console.log("Executing "+installCommand+" in "+name);
17 | exec(installCommand, {
18 | cwd: name,
19 | stdio: 'inherit'
20 | });
21 | }
22 | });
23 | });
24 |
--------------------------------------------------------------------------------
/ember-v2.13.0/tests/helpers/module-for-acceptance.js:
--------------------------------------------------------------------------------
1 | import { module } from 'qunit';
2 | import Ember from 'ember';
3 | import startApp from '../helpers/start-app';
4 | import destroyApp from '../helpers/destroy-app';
5 |
6 | const { RSVP: { Promise } } = Ember;
7 |
8 | export default function(name, options = {}) {
9 | module(name, {
10 | beforeEach() {
11 | this.application = startApp();
12 |
13 | if (options.beforeEach) {
14 | return options.beforeEach.apply(this, arguments);
15 | }
16 | },
17 |
18 | afterEach() {
19 | let afterEach = options.afterEach && options.afterEach.apply(this, arguments);
20 | return Promise.resolve(afterEach).then(() => destroyApp(this.application));
21 | }
22 | });
23 | }
24 |
--------------------------------------------------------------------------------
/vanillajs-keyed/webpack.config.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | var path = require('path')
3 | var cache = {};
4 | var loaders = [
5 | {
6 | test: /\.js$/,
7 | loader: 'babel-loader'
8 | },
9 | {
10 | test: /\.css$/,
11 | loader: 'style-loader!css-loader'
12 | }
13 | ];
14 | var extensions = [
15 | '.js', '.jsx', '.es6.js'
16 | ];
17 |
18 | module.exports = [{
19 | cache: cache,
20 | module: {
21 | loaders: loaders
22 | },
23 | entry: {
24 | main: './src/Main.js',
25 | },
26 | output: {
27 | path: path.resolve(__dirname, "dist"),
28 | filename: '[name].js'
29 | },
30 | resolve: {
31 | extensions: extensions,
32 | modules: [
33 | __dirname,
34 | path.resolve(__dirname, "src"),
35 | "node_modules"
36 | ],
37 | alias: {
38 | }
39 | }
40 | }];
--------------------------------------------------------------------------------
/pico-dom-v0.18.0/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "js-framework-benchmark-pico-dom-0.17.0",
3 | "version": "0.1.0",
4 | "description": "Benchmark for picoDom 0.17.0",
5 | "scripts": {
6 | "build-dev": "webpack -w -d --entry ./src/main.js --output-filename ./dist/main.js",
7 | "build-prod": "webpack -p --entry ./src/main.js --output-filename ./dist/main.js"
8 | },
9 | "author": "Hugo Villeneuve",
10 | "license": "Apache-2.0",
11 | "homepage": "https://github.com/krausest/js-framework-benchmark",
12 | "repository": {
13 | "type": "git",
14 | "url": "https://github.com/krausest/js-framework-benchmark.git"
15 | },
16 | "devDependencies": {
17 | "webpack": "^2.3.3"
18 | },
19 | "dependencies": {
20 | "pico-dom": "0.18.0"
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/svelte-v1.8.1/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "js-framework-benchmark-svelte",
3 | "version": "1.0.0",
4 | "description": "Boilerplate for Svelte",
5 | "scripts": {
6 | "build-dev": "rollup -c -w",
7 | "build-prod": "rollup -c --environment production"
8 | },
9 | "keywords": [
10 | "svelte"
11 | ],
12 | "author": "Stefan Krause",
13 | "license": "Apache-2.0",
14 | "homepage": "https://github.com/krausest/js-framework-benchmark",
15 | "repository": {
16 | "type": "git",
17 | "url": "https://github.com/krausest/js-framework-benchmark.git"
18 | },
19 | "devDependencies": {
20 | "rollup": "0.41.6",
21 | "rollup-plugin-buble": "0.15.0",
22 | "rollup-plugin-svelte": "1.8.1",
23 | "rollup-plugin-uglify": "1.0.2"
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/vanillajs-non-keyed/webpack.config.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | var path = require('path')
3 | var cache = {};
4 | var loaders = [
5 | {
6 | test: /\.js$/,
7 | loader: 'babel-loader'
8 | },
9 | {
10 | test: /\.css$/,
11 | loader: 'style-loader!css-loader'
12 | }
13 | ];
14 | var extensions = [
15 | '.js', '.jsx', '.es6.js'
16 | ];
17 |
18 | module.exports = [{
19 | cache: cache,
20 | module: {
21 | loaders: loaders
22 | },
23 | entry: {
24 | main: './src/Main.js',
25 | },
26 | output: {
27 | path: path.resolve(__dirname, "dist"),
28 | filename: '[name].js'
29 | },
30 | resolve: {
31 | extensions: extensions,
32 | modules: [
33 | __dirname,
34 | path.resolve(__dirname, "src"),
35 | "node_modules"
36 | ],
37 | alias: {
38 | }
39 | }
40 | }];
--------------------------------------------------------------------------------
/riot-v3.5.0/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | riot v3.5.0
6 |
7 |
8 |
9 |
10 |
29 |
30 |
31 |
32 |
--------------------------------------------------------------------------------
/stem-v0.2.70/src/rollup.config.js:
--------------------------------------------------------------------------------
1 | import babel from 'rollup-plugin-babel';
2 | import uglify from 'rollup-plugin-uglify';
3 | import includePaths from "rollup-plugin-includepaths";
4 |
5 | let includePathOptions = {
6 | extensions: [".es6.js", ".jsx"],
7 | paths: [
8 | "../node_modules/stem-core/src",
9 | "../node_modules/stem-core/src/state",
10 | "../node_modules/stem-core/src/base",
11 | "../node_modules/stem-core/src/ui",
12 | ]
13 | };
14 |
15 | export default {
16 | entry: "Main.jsx",
17 | format: "umd",
18 | moduleId: "bundle",
19 | moduleName: "bundle",
20 | plugins: [
21 | includePaths(includePathOptions),
22 | babel(),
23 | //uglify(),
24 | ],
25 | dest: "bundle.js"
26 | };
27 |
--------------------------------------------------------------------------------
/vanillajs-keyed/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "js-framework-benchmark-vanillajs",
3 | "version": "1.1.1",
4 | "description": "Vanilla.JS demo",
5 | "main": "index.js",
6 | "scripts": {
7 | "build-dev": "webpack -w -d",
8 | "build-prod": "webpack -p"
9 | },
10 | "keywords": [
11 | "react",
12 | "webpack"
13 | ],
14 | "author": "Stefan Krause",
15 | "license": "Apache-2.0",
16 | "homepage": "https://github.com/krausest/js-framework-benchmark",
17 | "repository": {
18 | "type": "git",
19 | "url": "https://github.com/krausest/js-framework-benchmark.git"
20 | },
21 | "devDependencies": {
22 | "babel-core": "6.24.1",
23 | "babel-loader": "7.0.0",
24 | "babel-preset-es2015": "6.24.1",
25 | "webpack": "2.5.1"
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/Datum-v0.8.0/webpack.config.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | var cache = {};
4 | var loaders = [
5 | {
6 | test: /\.js$/,
7 | loader: 'babel-loader',
8 | exclude: /node_modules/
9 | },
10 | {
11 | test: /\.css$/,
12 | loader: 'style-loader!css-loader'
13 | }
14 | ];
15 | var extensions = [
16 | '', '.js', '.jsx', '.es6.js'
17 | ];
18 |
19 | module.exports = [{
20 | cache: cache,
21 | module: {
22 | loaders: loaders
23 | },
24 | entry: {
25 | main: './src/Main.js',
26 | },
27 | output: {
28 | path: './dist',
29 | filename: '[name].js'
30 | },
31 | resolve: {
32 | extensions: extensions,
33 | root: [
34 | __dirname,
35 | __dirname + '/src'
36 | ],
37 | alias: {
38 | "Datum": __dirname+"/node_modules/Datum/target/Datum.js"
39 | }
40 | }
41 | }];
42 |
--------------------------------------------------------------------------------
/vanillajs-non-keyed/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "js-framework-benchmark-vanillajs",
3 | "version": "1.1.1",
4 | "description": "Vanilla.JS demo",
5 | "main": "index.js",
6 | "scripts": {
7 | "build-dev": "webpack -w -d",
8 | "build-prod": "webpack -p"
9 | },
10 | "keywords": [
11 | "react",
12 | "webpack"
13 | ],
14 | "author": "Stefan Krause",
15 | "license": "Apache-2.0",
16 | "homepage": "https://github.com/krausest/js-framework-benchmark",
17 | "repository": {
18 | "type": "git",
19 | "url": "https://github.com/krausest/js-framework-benchmark.git"
20 | },
21 | "devDependencies": {
22 | "babel-core": "6.24.1",
23 | "babel-loader": "7.0.0",
24 | "babel-preset-es2015": "6.24.1",
25 | "webpack": "2.5.1"
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/ractive-edge/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "js-framework-benchmark-ractive",
3 | "version": "1.0.0",
4 | "description": "Boilerplate for Ractive.js",
5 | "scripts": {
6 | "build-dev": "webpack -w -d",
7 | "build-prod": "webpack -p"
8 | },
9 | "keywords": [
10 | "ractive"
11 | ],
12 | "author": "Stefan Krause",
13 | "license": "Apache-2.0",
14 | "homepage": "https://github.com/krausest/js-framework-benchmark",
15 | "repository": {
16 | "type": "git",
17 | "url": "https://github.com/krausest/js-framework-benchmark.git"
18 | },
19 | "devDependencies": {
20 | "babel-core": "6.24.1",
21 | "babel-loader": "7.0.0",
22 | "babel-preset-es2015": "6.24.1",
23 | "webpack": "2.5.1"
24 | },
25 | "dependencies": {
26 | "ractive": "edge"
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/knockout-v3.4.1/webpack.config.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | var cache = {};
4 | var loaders = [
5 | {
6 | test: /\.js$/,
7 | loader: 'babel-loader',
8 | exclude: /node_modules/
9 | },
10 | {
11 | test: /\.css$/,
12 | loader: 'style-loader!css-loader'
13 | }
14 | ];
15 | var extensions = [
16 | '', '.js', '.jsx', '.es6.js'
17 | ];
18 |
19 | module.exports = [{
20 | cache: cache,
21 | module: {
22 | loaders: loaders
23 | },
24 | entry: {
25 | main: './src/Main.js',
26 | },
27 | output: {
28 | path: './dist',
29 | filename: '[name].js'
30 | },
31 | resolve: {
32 | extensions: extensions,
33 | root: [
34 | __dirname,
35 | __dirname + '/src'
36 | ],
37 | alias: {
38 | "knockout": __dirname+"/node_modules/knockout/build/output/knockout-latest.js",
39 | }
40 | }
41 | }];
--------------------------------------------------------------------------------
/simulacra-v2.1.1/webpack.config.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | var path = require('path')
3 |
4 | var cache = {};
5 | var loaders = [
6 | {
7 | test: /\.es6\.js$/,
8 | loader: 'babel-loader',
9 | exclude: [/node_modules/, '.'],
10 | query: {
11 | presets: ['es2015', 'stage-0']
12 | }
13 | }
14 | ];
15 | var extensions = [
16 | '.js', '.es6.js'
17 | ];
18 |
19 | module.exports = [{
20 | cache: cache,
21 | module: {
22 | loaders: loaders
23 | },
24 | entry: './src/main',
25 | output: {
26 | path: path.resolve(__dirname, "dist"),
27 | filename: 'main.js',
28 | sourceMapFilename: "main.map",
29 | },
30 | resolve: {
31 | extensions: extensions,
32 | modules: [
33 | __dirname,
34 | path.resolve(__dirname, "src"),
35 | "node_modules"
36 | ],
37 | alias: {
38 | }
39 | }
40 | }];
--------------------------------------------------------------------------------
/marionette-v3.3.1/webpack.config.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | var path = require('path')
3 |
4 | var cache = {};
5 | var loaders = [
6 | {
7 | test: /\.js$/,
8 | loader: 'babel-loader',
9 | exclude: /node_modules/
10 | },
11 | {
12 | test: /\.css$/,
13 | loader: 'style-loader!css-loader'
14 | }
15 | ];
16 | var extensions = [
17 | '.js', '.jsx', '.es6.js'
18 | ];
19 |
20 | module.exports = [{
21 | cache: cache,
22 | module: {
23 | loaders: loaders
24 | },
25 | entry: {
26 | main: './src/Main.js',
27 | },
28 | output: {
29 | path: path.resolve(__dirname, "dist"),
30 | filename: '[name].js'
31 | },
32 | resolve: {
33 | modules: [
34 | __dirname,
35 | path.resolve(__dirname, "src"),
36 | "node_modules"
37 | ],
38 | extensions: extensions,
39 | alias: {
40 | }
41 | }
42 | }];
--------------------------------------------------------------------------------
/ractive-v0.8.12-keyed/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "js-framework-benchmark-ractive",
3 | "version": "1.0.0",
4 | "description": "Boilerplate for Ractive.js",
5 | "scripts": {
6 | "build-dev": "webpack -w -d",
7 | "build-prod": "webpack -p"
8 | },
9 | "keywords": [
10 | "ractive"
11 | ],
12 | "author": "Stefan Krause",
13 | "license": "Apache-2.0",
14 | "homepage": "https://github.com/krausest/js-framework-benchmark",
15 | "repository": {
16 | "type": "git",
17 | "url": "https://github.com/krausest/js-framework-benchmark.git"
18 | },
19 | "devDependencies": {
20 | "babel-core": "6.24.1",
21 | "babel-loader": "7.0.0",
22 | "babel-preset-es2015": "6.24.1",
23 | "webpack": "2.5.1"
24 | },
25 | "dependencies": {
26 | "ractive": "0.8.12"
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/ractive-v0.8.12-non-keyed/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "js-framework-benchmark-ractive",
3 | "version": "1.0.0",
4 | "description": "Boilerplate for Ractive.js",
5 | "scripts": {
6 | "build-dev": "webpack -w -d",
7 | "build-prod": "webpack -p"
8 | },
9 | "keywords": [
10 | "ractive"
11 | ],
12 | "author": "Stefan Krause",
13 | "license": "Apache-2.0",
14 | "homepage": "https://github.com/krausest/js-framework-benchmark",
15 | "repository": {
16 | "type": "git",
17 | "url": "https://github.com/krausest/js-framework-benchmark.git"
18 | },
19 | "devDependencies": {
20 | "babel-core": "6.24.1",
21 | "babel-loader": "7.0.0",
22 | "babel-preset-es2015": "6.24.1",
23 | "webpack": "2.5.1"
24 | },
25 | "dependencies": {
26 | "ractive": "0.8.12"
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/plastiq-v1.33.0/webpack.config.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | var cache = {};
4 | var loaders = [
5 | {
6 | test: /\.es6\.jsx?$/,
7 | loader: 'babel-loader',
8 | exclude: /node_modules/,
9 | query: {
10 | presets: ['es2015', 'react']
11 | }
12 | },
13 | {
14 | test: /\.css$/,
15 | loader: 'style-loader!css-loader'
16 | }
17 | ];
18 | var extensions = [
19 | '', '.js', '.es6.jsx', '.es6.js'
20 | ];
21 |
22 | module.exports = [{
23 | cache: cache,
24 | module: {
25 | loaders: loaders
26 | },
27 | entry: {
28 | main: './src/entry/main',
29 | },
30 | output: {
31 | path: './dist',
32 | filename: '[name].js',
33 | sourceMapFilename: "[file].map",
34 | },
35 | resolve: {
36 | extensions: extensions,
37 | root: [
38 | __dirname,
39 | __dirname + '/src'
40 | ]
41 | }
42 | }];
43 |
--------------------------------------------------------------------------------
/angular-v1.6.3-keyed/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "js-framework-benchmark-angular",
3 | "version": "1.0.0",
4 | "description": "Boilerplate for Angular.js",
5 | "scripts": {
6 | "build-dev": "webpack -w",
7 | "build-prod": "webpack -p"
8 | },
9 | "keywords": [
10 | "angular"
11 | ],
12 | "author": "Stefan Krause",
13 | "license": "Apache-2.0",
14 | "homepage": "https://github.com/krausest/js-framework-benchmark",
15 | "repository": {
16 | "type": "git",
17 | "url": "https://github.com/krausest/js-framework-benchmark.git"
18 | },
19 | "devDependencies": {
20 | "babel-core": "6.24.0",
21 | "babel-loader": "6.4.1",
22 | "babel-preset-es2015": "6.24.0",
23 | "webpack": "2.2.1"
24 | },
25 | "dependencies": {
26 | "angular": "1.6.3",
27 | "jquery": "3.2.1"
28 | }
29 | }
30 |
--------------------------------------------------------------------------------
/rx-domh-v0.0.2-rxjs-v5.3.0/webpack.config.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | require("babel-plugin-syntax-jsx")
3 |
4 | var cache = {};
5 | var loaders = [
6 | {
7 | test: /\.jsx?$/,
8 | loader: 'babel-loader'
9 | },
10 | {
11 | test: /\.es6\.js$/,
12 | loader: 'babel-loader'
13 | },
14 | {
15 | test: /\.css$/,
16 | loader: 'style-loader!css-loader'
17 | }
18 | ];
19 | var extensions = [
20 | '', '.js', '.jsx', '.es6.js', '.msx'
21 | ];
22 |
23 | module.exports = [{
24 | cache: cache,
25 | module: {
26 | loaders: loaders
27 | },
28 | entry: {
29 | main: './src/main.js',
30 | },
31 | output: {
32 | path: './dist',
33 | filename: '[name].js',
34 | sourceMapFilename: "[file].map",
35 | },
36 | resolve: {
37 | extensions: extensions,
38 | root: [
39 | __dirname,
40 | __dirname + '/src'
41 | ]
42 | }
43 | }];
--------------------------------------------------------------------------------
/dio-v3.0.5/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "js-framework-benchmark-dio-2.0.0",
3 | "version": "2.0.0",
4 | "description": "Benchmark for DIO 2.0.0 framework",
5 | "scripts": {
6 | "build-dev": "webpack -w -d -c webpack.config.js",
7 | "build-prod": "webpack -p -c webpack.config.js"
8 | },
9 | "author": "Sultan Tarimo",
10 | "license": "Apache-2.0",
11 | "homepage": "https://github.com/krausest/js-framework-benchmark",
12 | "repository": {
13 | "type": "git",
14 | "url": "https://github.com/krausest/js-framework-benchmark.git"
15 | },
16 | "devDependencies": {
17 | "babel-core": "6.18.2",
18 | "babel-loader": "6.2.8",
19 | "babel-preset-es2015": "6.18.0",
20 | "imports-loader": "^0.6.5",
21 | "webpack": "1.13.3"
22 | },
23 | "dependencies": {
24 | "dio.js": "^3.0.5"
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/css/bootstrap/less/component-animations.less:
--------------------------------------------------------------------------------
1 | //
2 | // Component animations
3 | // --------------------------------------------------
4 |
5 | // Heads up!
6 | //
7 | // We don't use the `.opacity()` mixin here since it causes a bug with text
8 | // fields in IE7-8. Source: https://github.com/twbs/bootstrap/pull/3552.
9 |
10 | .fade {
11 | opacity: 0;
12 | .transition(opacity .15s linear);
13 | &.in {
14 | opacity: 1;
15 | }
16 | }
17 |
18 | .collapse {
19 | display: none;
20 |
21 | &.in { display: block; }
22 | tr&.in { display: table-row; }
23 | tbody&.in { display: table-row-group; }
24 | }
25 |
26 | .collapsing {
27 | position: relative;
28 | height: 0;
29 | overflow: hidden;
30 | .transition-property(~"height, visibility");
31 | .transition-duration(.35s);
32 | .transition-timing-function(ease);
33 | }
34 |
--------------------------------------------------------------------------------
/css/bootstrap/less/mixins/table-row.less:
--------------------------------------------------------------------------------
1 | // Tables
2 |
3 | .table-row-variant(@state; @background) {
4 | // Exact selectors below required to override `.table-striped` and prevent
5 | // inheritance to nested tables.
6 | .table > thead > tr,
7 | .table > tbody > tr,
8 | .table > tfoot > tr {
9 | > td.@{state},
10 | > th.@{state},
11 | &.@{state} > td,
12 | &.@{state} > th {
13 | background-color: @background;
14 | }
15 | }
16 |
17 | // Hover states for `.table-hover`
18 | // Note: this is not available for cells or rows within `thead` or `tfoot`.
19 | .table-hover > tbody > tr {
20 | > td.@{state}:hover,
21 | > th.@{state}:hover,
22 | &.@{state}:hover > td,
23 | &:hover > .@{state},
24 | &.@{state}:hover > th {
25 | background-color: darken(@background, 5%);
26 | }
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/simulacra-v2.1.1/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "js-framework-benchmark-simulacra",
3 | "version": "1.0.0",
4 | "description": "Benchmark for simulacra.js",
5 | "scripts": {
6 | "build-dev": "webpack -w -d",
7 | "build-prod": "webpack -p"
8 | },
9 | "keywords": [
10 | "simulacra"
11 | ],
12 | "author": "Stefan Krause",
13 | "license": "Apache-2.0",
14 | "homepage": "https://github.com/krausest/js-framework-benchmark",
15 | "repository": {
16 | "type": "git",
17 | "url": "https://github.com/krausest/js-framework-benchmark.git"
18 | },
19 | "devDependencies": {
20 | "babel-core": "6.24.1",
21 | "babel-loader": "7.0.0",
22 | "babel-preset-es2015": "6.24.1",
23 | "babel-preset-stage-0": "6.24.1",
24 | "webpack": "2.5.1"
25 | },
26 | "dependencies": {
27 | "simulacra": "^2.0.4"
28 | }
29 | }
30 |
--------------------------------------------------------------------------------
/nx-v1.0.0-beta.2.0.1-keyed/src/randomSentence.js:
--------------------------------------------------------------------------------
1 | 'use strict'
2 |
3 | const adjectives = ['pretty', 'large', 'big', 'small', 'tall', 'short', 'long', 'handsome', 'plain', 'quaint', 'clean', 'elegant', 'easy', 'angry', 'crazy', 'helpful', 'mushy', 'odd', 'unsightly', 'adorable', 'important', 'inexpensive', 'cheap', 'expensive', 'fancy'];
4 | const colours = ['red', 'yellow', 'blue', 'green', 'pink', 'brown', 'purple', 'brown', 'white', 'black', 'orange'];
5 | const nouns = ['table', 'chair', 'house', 'bbq', 'desk', 'car', 'pony', 'cookie', 'sandwich', 'burger', 'pizza', 'mouse', 'keyboard'];
6 |
7 | function random (max) {
8 | return Math.round(Math.random() * 1000) % max
9 | }
10 |
11 | module.exports = function randomSentence () {
12 | return `${adjectives[random(adjectives.length)]} ${colours[random(colours.length)]} ${nouns[random(nouns.length)]}`
13 | }
14 |
--------------------------------------------------------------------------------
/ivi-v0.7.0/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "private": true,
3 | "name": "js-framework-benchmark-ivi",
4 | "version": "0.5.0",
5 | "description": "Benchmark for ivi",
6 | "author": "Stefan Krause",
7 | "license": "Apache-2",
8 | "homepage": "https://github.com/krausest/js-framework-benchmark",
9 | "repository": "https://github.com/krausest/js-framework-benchmark",
10 | "keywords": [],
11 | "scripts": {
12 | "build-dev": "gulp build",
13 | "build-prod": "gulp build"
14 | },
15 | "dependencies": {
16 | "ivi": "0.7.0"
17 | },
18 | "devDependencies": {
19 | "del": "2.2.2",
20 | "google-closure-compiler-js": "20170218.0.0",
21 | "gulp": "3.9.1",
22 | "rollup": "0.41.5",
23 | "rollup-plugin-node-resolve": "2.0.0",
24 | "rollup-plugin-replace": "1.1.1"
25 | }
26 | }
--------------------------------------------------------------------------------
/nx-v1.0.0-beta.2.0.1-non-keyed/src/randomSentence.js:
--------------------------------------------------------------------------------
1 | 'use strict'
2 |
3 | const adjectives = ['pretty', 'large', 'big', 'small', 'tall', 'short', 'long', 'handsome', 'plain', 'quaint', 'clean', 'elegant', 'easy', 'angry', 'crazy', 'helpful', 'mushy', 'odd', 'unsightly', 'adorable', 'important', 'inexpensive', 'cheap', 'expensive', 'fancy'];
4 | const colours = ['red', 'yellow', 'blue', 'green', 'pink', 'brown', 'purple', 'brown', 'white', 'black', 'orange'];
5 | const nouns = ['table', 'chair', 'house', 'bbq', 'desk', 'car', 'pony', 'cookie', 'sandwich', 'burger', 'pizza', 'mouse', 'keyboard'];
6 |
7 | function random (max) {
8 | return Math.round(Math.random() * 1000) % max
9 | }
10 |
11 | module.exports = function randomSentence () {
12 | return `${adjectives[random(adjectives.length)]} ${colours[random(colours.length)]} ${nouns[random(nouns.length)]}`
13 | }
14 |
--------------------------------------------------------------------------------
/ractive-edge/webpack.config.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | var path = require('path')
3 |
4 | var cache = {};
5 | var loaders = [
6 | {
7 | test: /\.es6\.js$/,
8 | loader: 'babel-loader'
9 | },
10 | {
11 | test: /\.css$/,
12 | loader: 'style-loader!css-loader'
13 | }
14 | ];
15 | var extensions = [
16 | '.js', '.es6.js'
17 | ];
18 |
19 | module.exports = [{
20 | cache: cache,
21 | module: {
22 | loaders: loaders
23 | },
24 | entry: {
25 | main: './src/main',
26 | },
27 | output: {
28 | path: path.resolve(__dirname, "dist"),
29 | filename: 'main.js'
30 | },
31 | resolve: {
32 | extensions: extensions,
33 | modules: [
34 | __dirname,
35 | path.resolve(__dirname, "src"),
36 | "node_modules"
37 | ],
38 | alias: {
39 | "ractive": __dirname+"/node_modules/ractive/ractive.min.js",
40 | }
41 | }
42 | }];
--------------------------------------------------------------------------------
/hyperapp-v0.9.1/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "hyperapp-v0.6.0-js-benchmark",
3 | "version": "1.0.0",
4 | "description": "hyperapp v0.6.0 js benchmark",
5 | "main": "index.js",
6 | "dependencies": {
7 | "hyperapp": "0.9.1"
8 | },
9 | "devDependencies": {
10 | "babel-plugin-transform-react-jsx": "^6.24.1",
11 | "babel-preset-es2015-rollup": "^3.0.0",
12 | "rollup": "^0.41.6",
13 | "rollup-plugin-babel": "^2.7.1",
14 | "rollup-plugin-node-resolve": "^3.0.0",
15 | "rollup-plugin-uglify": "^1.0.2",
16 | "rollup-watch": "^3.2.2"
17 | },
18 | "scripts": {
19 | "build-prod": "rollup -cf iife -i src/index.js -o dist/index.js",
20 | "build-dev": "rollup -w -cf iife -m inline -i src/index.js -o dist/index.js"
21 | },
22 | "keywords": [
23 | "hyperapp"
24 | ],
25 | "author": "Jorge Bucaran",
26 | "license": "MIT"
27 | }
28 |
--------------------------------------------------------------------------------
/ractive-v0.8.12-keyed/webpack.config.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | var path = require('path')
3 |
4 | var cache = {};
5 | var loaders = [
6 | {
7 | test: /\.es6\.js$/,
8 | loader: 'babel-loader'
9 | },
10 | {
11 | test: /\.css$/,
12 | loader: 'style-loader!css-loader'
13 | }
14 | ];
15 | var extensions = [
16 | '.js', '.es6.js'
17 | ];
18 |
19 | module.exports = [{
20 | cache: cache,
21 | module: {
22 | loaders: loaders
23 | },
24 | entry: {
25 | main: './src/main',
26 | },
27 | output: {
28 | path: path.resolve(__dirname, "dist"),
29 | filename: 'main.js'
30 | },
31 | resolve: {
32 | extensions: extensions,
33 | modules: [
34 | __dirname,
35 | path.resolve(__dirname, "src"),
36 | "node_modules"
37 | ],
38 | alias: {
39 | "ractive": __dirname+"/node_modules/ractive/ractive.min.js",
40 | }
41 | }
42 | }];
--------------------------------------------------------------------------------
/ractive-v0.8.12-non-keyed/webpack.config.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | var path = require('path')
3 |
4 | var cache = {};
5 | var loaders = [
6 | {
7 | test: /\.es6\.js$/,
8 | loader: 'babel-loader'
9 | },
10 | {
11 | test: /\.css$/,
12 | loader: 'style-loader!css-loader'
13 | }
14 | ];
15 | var extensions = [
16 | '.js', '.es6.js'
17 | ];
18 |
19 | module.exports = [{
20 | cache: cache,
21 | module: {
22 | loaders: loaders
23 | },
24 | entry: {
25 | main: './src/main',
26 | },
27 | output: {
28 | path: path.resolve(__dirname, "dist"),
29 | filename: 'main.js'
30 | },
31 | resolve: {
32 | extensions: extensions,
33 | modules: [
34 | __dirname,
35 | path.resolve(__dirname, "src"),
36 | "node_modules"
37 | ],
38 | alias: {
39 | "ractive": __dirname+"/node_modules/ractive/ractive.min.js",
40 | }
41 | }
42 | }];
--------------------------------------------------------------------------------
/vidom-v0.9.8/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "js-framework-benchmark-vidom",
3 | "version": "1.0.0",
4 | "description": "Benchmark for vidom framework",
5 | "scripts": {
6 | "build-dev": "webpack -w -d",
7 | "build-prod": "webpack -p"
8 | },
9 | "keywords": [
10 | "ractive"
11 | ],
12 | "author": "Stefan Krause",
13 | "license": "Apache-2.0",
14 | "homepage": "https://github.com/krausest/js-framework-benchmark",
15 | "repository": {
16 | "type": "git",
17 | "url": "https://github.com/krausest/js-framework-benchmark.git"
18 | },
19 | "devDependencies": {
20 | "babel-core": "6.24.1",
21 | "babel-loader": "7.0.0",
22 | "babel-plugin-vidom-jsx": "0.5.1",
23 | "babel-preset-es2015": "6.24.1",
24 | "babel-preset-stage-0": "6.24.1",
25 | "webpack": "2.5.1"
26 | },
27 | "dependencies": {
28 | "vidom": "0.9.8"
29 | }
30 | }
31 |
--------------------------------------------------------------------------------
/choo-v5.4.0/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "choo-v4.1.0",
3 | "version": "1.0.0",
4 | "description": "",
5 | "main": "src/index.js",
6 | "scripts": {
7 | "build-dev": "browserify src/index.js > dist/index.js",
8 | "build-prod": "rimraf dist && mkdirp dist && cross-env NODE_ENV=production browserify src/index.js -t envify -g yo-yoify -g unassertify -g es2020 -g uglifyify | uglifyjs > dist/index.js"
9 | },
10 | "keywords": [
11 | "choo"
12 | ],
13 | "author": "Rahul Chanila",
14 | "license": "MIT",
15 | "dependencies": {
16 | "browserify": "^14.3.0",
17 | "choo": "^5.4.0",
18 | "cross-env": "^5.0.0",
19 | "envify": "^4.0.0",
20 | "es2020": "^1.1.9",
21 | "mkdirp": "^0.5.1",
22 | "rimraf": "^2.6.1",
23 | "uglify-js": "^3.0.4",
24 | "uglifyify": "^3.0.4",
25 | "unassertify": "^2.0.4",
26 | "yo-yoify": "^3.7.3"
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/preact-v7.1.0/webpack.config.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | require("babel-plugin-syntax-jsx")
3 |
4 | var cache = {};
5 | var loaders = [
6 | {
7 | test: /\.jsx$/,
8 | loader: 'babel-loader'
9 | },
10 | {
11 | test: /\.es6\.js$/,
12 | loader: 'babel-loader'
13 | },
14 | {
15 | test: /\.css$/,
16 | loader: 'style-loader!css-loader'
17 | }
18 | ];
19 | var extensions = [
20 | '', '.js', '.jsx', '.es6.js', '.msx'
21 | ];
22 |
23 | module.exports = [{
24 | cache: cache,
25 | module: {
26 | loaders: loaders
27 | },
28 | entry: {
29 | main: './src/Main.jsx',
30 | },
31 | output: {
32 | path: './dist',
33 | filename: '[name].js',
34 | sourceMapFilename: "[file].map",
35 | },
36 | resolve: {
37 | extensions: extensions,
38 | root: [
39 | __dirname,
40 | __dirname + '/src'
41 | ],
42 | alias: {
43 | 'preact': 'node_modules/preact/dist/preact.min.js',
44 | }
45 | }
46 | }];
--------------------------------------------------------------------------------
/react-lite-v0.15.30/webpack.config.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | require("babel-plugin-syntax-jsx")
3 |
4 | var cache = {};
5 | var loaders = [
6 | {
7 | test: /\.jsx$/,
8 | loader: 'babel-loader'
9 | },
10 | {
11 | test: /\.es6\.js$/,
12 | loader: 'babel-loader'
13 | },
14 | {
15 | test: /\.css$/,
16 | loader: 'style-loader!css-loader'
17 | }
18 | ];
19 | var extensions = [
20 | '', '.js', '.jsx', '.es6.js', '.msx'
21 | ];
22 |
23 | module.exports = [{
24 | cache: cache,
25 | module: {
26 | loaders: loaders
27 | },
28 | entry: {
29 | main: './src/main.es6.js',
30 | },
31 | output: {
32 | path: './dist',
33 | filename: '[name].js',
34 | sourceMapFilename: "[file].map",
35 | },
36 | resolve: {
37 | extensions: extensions,
38 | root: [
39 | __dirname,
40 | __dirname + '/src'
41 | ],
42 | alias: {
43 | 'react': 'react-lite',
44 | 'react-dom': 'react-lite'
45 | }
46 | }
47 | }];
--------------------------------------------------------------------------------
/preact-v7.1.0/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "js-framework-benchmark-react-lite",
3 | "version": "1.0.0",
4 | "description": "Benchmark for react-lite framework",
5 | "scripts": {
6 | "build-dev": "webpack -w -d -c webpack.config.js",
7 | "build-prod": "webpack -p -c webpack.config.js"
8 | },
9 | "keywords": [
10 | "ractive"
11 | ],
12 | "author": "Stefan Krause",
13 | "license": "Apache-2.0",
14 | "homepage": "https://github.com/krausest/js-framework-benchmark",
15 | "repository": {
16 | "type": "git",
17 | "url": "https://github.com/krausest/js-framework-benchmark.git"
18 | },
19 | "devDependencies": {
20 | "babel-preset-es2015": "6.18.0",
21 | "babel-preset-react": "6.16.0",
22 | "webpack": "1.14.0"
23 | },
24 | "dependencies": {
25 | "babel-core": "6.21.0",
26 | "babel-loader": "6.2.10",
27 | "jsx-loader": "0.13.2",
28 | "preact": "7.1.0"
29 | }
30 | }
31 |
--------------------------------------------------------------------------------
/css/bootstrap/less/close.less:
--------------------------------------------------------------------------------
1 | //
2 | // Close icons
3 | // --------------------------------------------------
4 |
5 |
6 | .close {
7 | float: right;
8 | font-size: (@font-size-base * 1.5);
9 | font-weight: @close-font-weight;
10 | line-height: 1;
11 | color: @close-color;
12 | text-shadow: @close-text-shadow;
13 | .opacity(.2);
14 |
15 | &:hover,
16 | &:focus {
17 | color: @close-color;
18 | text-decoration: none;
19 | cursor: pointer;
20 | .opacity(.5);
21 | }
22 |
23 | // Additional properties for button version
24 | // iOS requires the button element instead of an anchor tag.
25 | // If you want the anchor version, it requires `href="#"`.
26 | // See https://developer.mozilla.org/en-US/docs/Web/Events/click#Safari_Mobile
27 | button& {
28 | padding: 0;
29 | cursor: pointer;
30 | background: transparent;
31 | border: 0;
32 | -webkit-appearance: none;
33 | }
34 | }
35 |
--------------------------------------------------------------------------------
/css/bootstrap/less/thumbnails.less:
--------------------------------------------------------------------------------
1 | //
2 | // Thumbnails
3 | // --------------------------------------------------
4 |
5 |
6 | // Mixin and adjust the regular image class
7 | .thumbnail {
8 | display: block;
9 | padding: @thumbnail-padding;
10 | margin-bottom: @line-height-computed;
11 | line-height: @line-height-base;
12 | background-color: @thumbnail-bg;
13 | border: 1px solid @thumbnail-border;
14 | border-radius: @thumbnail-border-radius;
15 | .transition(border .2s ease-in-out);
16 |
17 | > img,
18 | a > img {
19 | &:extend(.img-responsive);
20 | margin-left: auto;
21 | margin-right: auto;
22 | }
23 |
24 | // Add a hover state for linked versions only
25 | a&:hover,
26 | a&:focus,
27 | a&.active {
28 | border-color: @link-color;
29 | }
30 |
31 | // Image captions
32 | .caption {
33 | padding: @thumbnail-caption-padding;
34 | color: @thumbnail-caption-color;
35 | }
36 | }
37 |
--------------------------------------------------------------------------------
/react-v15.5.4-keyed/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "js-framework-benchmark-react",
3 | "version": "1.1.1",
4 | "description": "React demo",
5 | "main": "index.js",
6 | "scripts": {
7 | "build-dev": "webpack -w -d",
8 | "build-prod": "webpack -p"
9 | },
10 | "keywords": [
11 | "react",
12 | "webpack"
13 | ],
14 | "author": "Stefan Krause",
15 | "license": "Apache-2.0",
16 | "homepage": "https://github.com/krausest/js-framework-benchmark",
17 | "repository": {
18 | "type": "git",
19 | "url": "https://github.com/krausest/js-framework-benchmark.git"
20 | },
21 | "devDependencies": {
22 | "babel-core": "6.24.1",
23 | "babel-loader": "7.0.0",
24 | "babel-preset-es2015": "6.24.1",
25 | "babel-preset-react": "6.24.1",
26 | "webpack": "2.5.1",
27 | "jsx-loader": "0.13.2"
28 | },
29 | "dependencies": {
30 | "react": "15.5.4",
31 | "react-dom": "15.5.4"
32 | }
33 | }
34 |
--------------------------------------------------------------------------------
/react-lite-v0.15.30/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "js-framework-benchmark-react-lite",
3 | "version": "1.0.0",
4 | "description": "Benchmark for react-lite framework",
5 | "scripts": {
6 | "build-dev": "webpack -w -d -c webpack.config.js",
7 | "build-prod": "webpack -p -c webpack.config.js"
8 | },
9 | "keywords": [
10 | "ractive"
11 | ],
12 | "author": "Stefan Krause",
13 | "license": "Apache-2.0",
14 | "homepage": "https://github.com/krausest/js-framework-benchmark",
15 | "repository": {
16 | "type": "git",
17 | "url": "https://github.com/krausest/js-framework-benchmark.git"
18 | },
19 | "devDependencies": {
20 | "babel-preset-es2015": "6.18.0",
21 | "babel-preset-react": "6.16.0",
22 | "webpack": "1.14.0"
23 | },
24 | "dependencies": {
25 | "babel-core": "6.21.0",
26 | "babel-loader": "6.2.10",
27 | "jsx-loader": "0.13.2",
28 | "react-lite": "0.15.30"
29 | }
30 | }
31 |
--------------------------------------------------------------------------------
/react-v15.5.4-non-keyed/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "js-framework-benchmark-react",
3 | "version": "1.1.1",
4 | "description": "React demo",
5 | "main": "index.js",
6 | "scripts": {
7 | "build-dev": "webpack -w -d",
8 | "build-prod": "webpack -p"
9 | },
10 | "keywords": [
11 | "react",
12 | "webpack"
13 | ],
14 | "author": "Stefan Krause",
15 | "license": "Apache-2.0",
16 | "homepage": "https://github.com/krausest/js-framework-benchmark",
17 | "repository": {
18 | "type": "git",
19 | "url": "https://github.com/krausest/js-framework-benchmark.git"
20 | },
21 | "devDependencies": {
22 | "babel-core": "6.24.1",
23 | "babel-loader": "7.0.0",
24 | "babel-preset-es2015": "6.24.1",
25 | "babel-preset-react": "6.24.1",
26 | "webpack": "2.5.1",
27 | "jsx-loader": "0.13.2"
28 | },
29 | "dependencies": {
30 | "react": "15.5.4",
31 | "react-dom": "15.5.4"
32 | }
33 | }
34 |
--------------------------------------------------------------------------------
/ember-v2.13.0/app/components/my-table.js:
--------------------------------------------------------------------------------
1 | import Ember from 'ember';
2 |
3 | export default Ember.Component.extend({
4 | rows: Ember.inject.service(),
5 | actions: {
6 | add: function() {
7 | //console.log("add");
8 | this.get('rows').add();
9 | },
10 | create: function() {
11 | //console.log("create",this.rows);
12 | this.get('rows').run();
13 | },
14 | update: function() {
15 | //console.log("update",this.rows);
16 | this.get('rows').update();
17 | },
18 | runLots: function() {
19 | this.get('rows').runLots();
20 | },
21 | clear: function() {
22 | this.get('rows').clear();
23 | },
24 | swapRows: function() {
25 | this.get('rows').swapRows();
26 | },
27 | remove(identifier) {
28 | this.get('rows').remove(identifier);
29 | },
30 | select(identifier) {
31 | this.get('rows').select(identifier);
32 | }
33 | }
34 | });
35 |
--------------------------------------------------------------------------------
/ember-v2.13.0/ember-cli-build.js:
--------------------------------------------------------------------------------
1 | /*jshint node:true*/
2 | /* global require, module */
3 | var EmberApp = require('ember-cli/lib/broccoli/ember-app');
4 |
5 | module.exports = function(defaults) {
6 | var app = new EmberApp(defaults, {
7 | // Add options here
8 | });
9 |
10 | // Use `app.import` to add additional libraries to the generated
11 | // output files.
12 | //
13 | // If you need to use different assets in different
14 | // environments, specify an object as the first parameter. That
15 | // object's keys should be the environment name and the values
16 | // should be the asset to use in that environment.
17 | //
18 | // If the library that you are including contains AMD or ES6
19 | // modules that you would like to import into your application
20 | // please specify an object with the list of modules as keys
21 | // along with the exports of each module as its value.
22 |
23 | return app.toTree();
24 | };
25 |
--------------------------------------------------------------------------------
/vue-v2.3.3-keyed/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "js-framework-benchmark-vue",
3 | "version": "1.0.0",
4 | "description": "Benchmark for vue.js framework",
5 | "scripts": {
6 | "build-dev": "webpack -w -d",
7 | "build-prod": "webpack -p"
8 | },
9 | "keywords": [
10 | "ractive"
11 | ],
12 | "author": "Stefan Krause",
13 | "license": "Apache-2.0",
14 | "homepage": "https://github.com/krausest/js-framework-benchmark",
15 | "repository": {
16 | "type": "git",
17 | "url": "https://github.com/krausest/js-framework-benchmark.git"
18 | },
19 | "devDependencies": {
20 | "babel-core": "6.24.1",
21 | "babel-loader": "7.0.0",
22 | "babel-preset-es2015": "6.24.1",
23 | "babel-preset-stage-0": "6.24.1",
24 | "webpack": "2.5.1",
25 | "vue-loader": "12.0.4",
26 | "vue-template-compiler": "2.3.3",
27 | "css-loader": "0.28.1"
28 | },
29 | "dependencies": {
30 | "vue": "2.3.3"
31 | }
32 | }
33 |
--------------------------------------------------------------------------------
/vidom-v0.9.8/webpack.config.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | var path = require('path')
3 | var cache = {};
4 | var loaders = [
5 | {
6 | test: /\.jsx$/,
7 | loader: 'babel-loader'
8 | },
9 | {
10 | test: /\.es6\.js$/,
11 | loader: 'babel-loader'
12 | },
13 | {
14 | test: /\.css$/,
15 | loader: 'style-loader!css-loader'
16 | }
17 | ];
18 | var extensions = [
19 | '.js', '.jsx', '.es6.js', '.msx'
20 | ];
21 |
22 | module.exports = [{
23 | cache: cache,
24 | module: {
25 | loaders: loaders
26 | },
27 | entry: {
28 | main: './src/main',
29 | },
30 | output: {
31 | path: path.resolve(__dirname, "dist"),
32 | filename: '[name].js',
33 | sourceMapFilename: "[file].map",
34 | },
35 | resolve: {
36 | extensions: extensions,
37 | modules: [
38 | __dirname,
39 | path.resolve(__dirname, "src"),
40 | "node_modules"
41 | ],
42 | alias: {
43 | "vidom": __dirname+"/node_modules/vidom/dist/vidom.min.js",
44 | }
45 | }
46 | }];
47 |
--------------------------------------------------------------------------------
/vue-v2.3.3-non-keyed/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "js-framework-benchmark-vue",
3 | "version": "1.0.0",
4 | "description": "Benchmark for vue.js framework",
5 | "scripts": {
6 | "build-dev": "webpack -w -d",
7 | "build-prod": "webpack -p"
8 | },
9 | "keywords": [
10 | "ractive"
11 | ],
12 | "author": "Stefan Krause",
13 | "license": "Apache-2.0",
14 | "homepage": "https://github.com/krausest/js-framework-benchmark",
15 | "repository": {
16 | "type": "git",
17 | "url": "https://github.com/krausest/js-framework-benchmark.git"
18 | },
19 | "devDependencies": {
20 | "babel-core": "6.24.1",
21 | "babel-loader": "7.0.0",
22 | "babel-preset-es2015": "6.24.1",
23 | "babel-preset-stage-0": "6.24.1",
24 | "webpack": "2.5.1",
25 | "vue-loader": "12.0.4",
26 | "vue-template-compiler": "2.3.3",
27 | "css-loader": "0.28.1"
28 | },
29 | "dependencies": {
30 | "vue": "2.3.3"
31 | }
32 | }
33 |
--------------------------------------------------------------------------------
/kivi-v1.0.0-rc2/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "private": true,
3 | "name": "js-framework-benchmark-kivi",
4 | "version": "0.11.0",
5 | "description": "Benchmark for kivi",
6 | "author": "Stefan Krause",
7 | "license": "Apache-2",
8 | "homepage": "https://github.com/krausest/js-framework-benchmark",
9 | "repository": "https://github.com/krausest/js-framework-benchmark",
10 | "keywords": [],
11 | "scripts": {
12 | "build-dev": "gulp build",
13 | "build-prod": "gulp build"
14 | },
15 | "dependencies": {
16 | "kivi": "1.0.0-rc2"
17 | },
18 | "devDependencies": {
19 | "del": "2.2.2",
20 | "google-closure-compiler-js": "20161024.0.0",
21 | "gulp": "github:gulpjs/gulp#4.0",
22 | "gulp-tslint": "6.1.3",
23 | "gulp-typescript": "3.1.3",
24 | "rollup": "0.36.3",
25 | "rollup-plugin-node-resolve": "2.0.0",
26 | "rollup-plugin-replace": "1.1.1",
27 | "tslint": "4.0.0",
28 | "typescript": "2.0.10"
29 | }
30 | }
31 |
--------------------------------------------------------------------------------
/mithril-v1.1.1/webpack.config.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | var path = require('path')
3 |
4 | var cache = {};
5 | var loaders = [
6 | {
7 | test: /\.jsx?$/,
8 | loader: 'babel-loader',
9 | exclude: /node_modules/,
10 | query: {
11 | presets: ['es2015', 'react']
12 | }
13 | },
14 | {
15 | test: /\.es6\.js$/,
16 | loader: 'babel-loader'
17 | },
18 | {
19 | test: /\.css$/,
20 | loader: 'style-loader!css-loader'
21 | }
22 | ];
23 | var extensions = [
24 | '.js', '.jsx', '.es6.js'
25 | ];
26 |
27 | module.exports = [{
28 | cache: cache,
29 | module: {
30 | loaders: loaders
31 | },
32 | entry: {
33 | main: './src/main',
34 | },
35 | output: {
36 | path: path.resolve(__dirname,'dist'),
37 | filename: '[name].js',
38 | sourceMapFilename: "[file].map",
39 | },
40 | resolve: {
41 | modules: [
42 | __dirname,
43 | path.resolve(__dirname, "src"),
44 | "node_modules"
45 | ],
46 | extensions: extensions
47 | }
48 | }];
49 |
--------------------------------------------------------------------------------
/glimmer-v0.3.10/README.md:
--------------------------------------------------------------------------------
1 | # glimmer-app
2 |
3 | This README outlines the details of collaborating on this Glimmer application.
4 | A short introduction of this app could easily go here.
5 |
6 | ## Prerequisites
7 |
8 | You will need the following things properly installed on your computer.
9 |
10 | * [Git](https://git-scm.com/)
11 | * [Node.js](https://nodejs.org/) (with NPM)
12 | * [Yarn](https://yarnpkg.com/en/)
13 | * [Ember CLI](https://ember-cli.com/)
14 |
15 | ## Installation
16 |
17 | * `git clone ` this repository
18 | * `cd glimmer-app`
19 | * `yarn`
20 |
21 | ## Running / Development
22 |
23 | * `ember serve`
24 | * Visit your app at [http://localhost:4200](http://localhost:4200).
25 |
26 | ### Building
27 |
28 | * `ember build` (development)
29 | * `ember build --environment production` (production)
30 |
31 | ## Further Reading / Useful Links
32 |
33 | * [glimmerjs](http://github.com/tildeio/glimmer/)
34 | * [ember-cli](https://ember-cli.com/)
35 |
--------------------------------------------------------------------------------
/glimmer-v0.3.10/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "glimmer-app",
3 | "version": "0.0.0",
4 | "description": "A brand new Glimmer app.",
5 | "directories": {
6 | "doc": "doc",
7 | "test": "tests"
8 | },
9 | "scripts": {
10 | "build": "ember build",
11 | "start": "ember server",
12 | "test": "ember test",
13 | "build-dev": "ember build",
14 | "build-prod": "ember build --environment=production"
15 | },
16 | "devDependencies": {
17 | "@glimmer/application": "^0.4.0",
18 | "@glimmer/application-pipeline": "^0.6.8",
19 | "@glimmer/blueprint": "^0.1.12",
20 | "@glimmer/component": "^0.3.10",
21 | "@glimmer/resolver": "^0.3.0",
22 | "broccoli-asset-rev": "^2.5.0",
23 | "ember-cli": "github:ember-cli/ember-cli",
24 | "ember-cli-inject-live-reload": "^1.6.1",
25 | "ember-cli-uglify": "^1.2.0",
26 | "typescript": "^2.2.2"
27 | },
28 | "engines": {
29 | "node": ">= 4.0"
30 | },
31 | "private": true
32 | }
33 |
--------------------------------------------------------------------------------
/inferno-v3.1.2-keyed/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "js-framework-benchmark-inferno",
3 | "version": "1.0.0",
4 | "description": "Benchmark for inferno framework",
5 | "scripts": {
6 | "build-dev": "webpack -w -d",
7 | "build-prod": "webpack -p"
8 | },
9 | "keywords": [
10 | "ractive"
11 | ],
12 | "author": "Stefan Krause",
13 | "license": "Apache-2.0",
14 | "homepage": "https://github.com/krausest/js-framework-benchmark",
15 | "repository": {
16 | "type": "git",
17 | "url": "https://github.com/krausest/js-framework-benchmark.git"
18 | },
19 | "devDependencies": {
20 | "babel-core": "6.24.1",
21 | "babel-loader": "7.0.0",
22 | "babel-plugin-inferno": "3.2.0",
23 | "babel-plugin-syntax-jsx": "6.18.0",
24 | "babel-preset-es2015": "6.24.1",
25 | "babel-preset-stage-0": "6.24.1",
26 | "webpack": "2.5.1"
27 | },
28 | "dependencies": {
29 | "inferno": "3.1.2",
30 | "inferno-component": "3.1.2"
31 | }
32 | }
33 |
--------------------------------------------------------------------------------
/inferno-v3.1.2-non-keyed/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "js-framework-benchmark-inferno",
3 | "version": "1.0.0",
4 | "description": "Benchmark for inferno framework",
5 | "scripts": {
6 | "build-dev": "webpack -w -d",
7 | "build-prod": "webpack -p"
8 | },
9 | "keywords": [
10 | "ractive"
11 | ],
12 | "author": "Stefan Krause",
13 | "license": "Apache-2.0",
14 | "homepage": "https://github.com/krausest/js-framework-benchmark",
15 | "repository": {
16 | "type": "git",
17 | "url": "https://github.com/krausest/js-framework-benchmark.git"
18 | },
19 | "devDependencies": {
20 | "babel-core": "6.24.1",
21 | "babel-loader": "7.0.0",
22 | "babel-plugin-inferno": "3.2.0",
23 | "babel-plugin-syntax-jsx": "6.18.0",
24 | "babel-preset-es2015": "6.24.1",
25 | "babel-preset-stage-0": "6.24.1",
26 | "webpack": "2.5.1"
27 | },
28 | "dependencies": {
29 | "inferno": "3.1.2",
30 | "inferno-component": "3.1.2"
31 | }
32 | }
33 |
--------------------------------------------------------------------------------
/glimmer-v0.3.10/ember-cli-build.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | const GlimmerApp = require('@glimmer/application-pipeline').GlimmerApp;
4 |
5 | module.exports = function(defaults) {
6 | let app = new GlimmerApp(defaults, {
7 | // Add options here
8 | fingerprint: {
9 | enabled: false
10 | }
11 | });
12 |
13 | // Use `app.import` to add additional libraries to the generated
14 | // output files.
15 | //
16 | // If you need to use different assets in different
17 | // environments, specify an object as the first parameter. That
18 | // object's keys should be the environment name and the values
19 | // should be the asset to use in that environment.
20 | //
21 | // If the library that you are including contains AMD or ES6
22 | // modules that you would like to import into your application
23 | // please specify an object with the list of modules as keys
24 | // along with the exports of each module as its value.
25 |
26 | return app.toTree();
27 | };
28 |
--------------------------------------------------------------------------------
/react-v15.5.4-keyed/webpack.config.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | require("babel-plugin-syntax-jsx")
3 | var path = require('path')
4 | var webpack = require('webpack')
5 | var cache = {};
6 | var loaders = [
7 | {
8 | test: /\.jsx$/,
9 | loader: 'babel-loader'
10 | },
11 | {
12 | test: /\.es6\.js$/,
13 | loader: 'babel-loader'
14 | },
15 | {
16 | test: /\.css$/,
17 | loader: 'style-loader!css-loader'
18 | }
19 | ];
20 | var extensions = [
21 | '.js', '.jsx', '.es6.js'
22 | ];
23 |
24 | module.exports = [{
25 | cache: cache,
26 | module: {
27 | loaders: loaders
28 | },
29 | entry: {
30 | main: './src/main.es6.js',
31 | },
32 | output: {
33 | path: path.resolve(__dirname, "dist"),
34 | filename: '[name].js'
35 | },
36 | resolve: {
37 | extensions: extensions,
38 | modules: [
39 | __dirname,
40 | path.resolve(__dirname, "src"),
41 | "node_modules"
42 | ]
43 | },
44 | plugins: [
45 | new webpack.DefinePlugin({
46 | 'process.env.NODE_ENV': '"production"'
47 | })
48 | ]
49 | }];
--------------------------------------------------------------------------------
/react-v15.5.4-mobX-v3.1.9/webpack.config.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | require("babel-plugin-syntax-jsx")
3 | var path = require('path')
4 | var webpack = require('webpack')
5 | var cache = {};
6 | var loaders = [
7 | {
8 | test: /\.jsx$/,
9 | loader: 'babel-loader'
10 | },
11 | {
12 | test: /\.es6\.js$/,
13 | loader: 'babel-loader'
14 | },
15 | {
16 | test: /\.css$/,
17 | loader: 'style-loader!css-loader'
18 | }
19 | ];
20 | var extensions = [
21 | '.js', '.jsx', '.es6.js'
22 | ];
23 |
24 | module.exports = [{
25 | cache: cache,
26 | module: {
27 | loaders: loaders
28 | },
29 | entry: {
30 | main: './src/Main.jsx',
31 | },
32 | output: {
33 | path: path.resolve(__dirname, "dist"),
34 | filename: '[name].js'
35 | },
36 | resolve: {
37 | extensions: extensions,
38 | modules: [
39 | __dirname,
40 | path.resolve(__dirname, "src"),
41 | "node_modules"
42 | ]
43 | },
44 | plugins: [
45 | new webpack.DefinePlugin({
46 | 'process.env.NODE_ENV': '"production"'
47 | })
48 | ]
49 | }];
--------------------------------------------------------------------------------
/react-v15.5.4-non-keyed/webpack.config.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | require("babel-plugin-syntax-jsx")
3 | var path = require('path')
4 | var webpack = require('webpack')
5 | var cache = {};
6 | var loaders = [
7 | {
8 | test: /\.jsx$/,
9 | loader: 'babel-loader'
10 | },
11 | {
12 | test: /\.es6\.js$/,
13 | loader: 'babel-loader'
14 | },
15 | {
16 | test: /\.css$/,
17 | loader: 'style-loader!css-loader'
18 | }
19 | ];
20 | var extensions = [
21 | '.js', '.jsx', '.es6.js'
22 | ];
23 |
24 | module.exports = [{
25 | cache: cache,
26 | module: {
27 | loaders: loaders
28 | },
29 | entry: {
30 | main: './src/main.es6.js',
31 | },
32 | output: {
33 | path: path.resolve(__dirname, "dist"),
34 | filename: '[name].js'
35 | },
36 | resolve: {
37 | extensions: extensions,
38 | modules: [
39 | __dirname,
40 | path.resolve(__dirname, "src"),
41 | "node_modules"
42 | ]
43 | },
44 | plugins: [
45 | new webpack.DefinePlugin({
46 | 'process.env.NODE_ENV': '"production"'
47 | })
48 | ]
49 | }];
--------------------------------------------------------------------------------
/stem-v0.2.70/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "stemjs-demo",
3 | "version": "1.0.0",
4 | "description": "None",
5 | "main": "index.js",
6 | "scripts": {
7 | "test": "echo \"Error: no test specified\" && exit 1",
8 | "build": "cd src; rollup -c",
9 | "build-prod": "cd src; rollup -c",
10 | "watch": "cd src; rollup -c --watch",
11 | "start": "python -m SimpleHTTPServer"
12 | },
13 | "author": "Mihai Ciucu",
14 | "license": "ISC",
15 | "devDependencies": {
16 | "babel-plugin-transform-class-properties": "^6.19.0",
17 | "babel-plugin-transform-decorators-legacy": "^1.3.4",
18 | "babel-plugin-transform-react-jsx": "^6.8.0",
19 | "babel-preset-es2015-rollup": "^3.0.0",
20 | "rollup": "^0.41.4",
21 | "rollup-plugin-babel": "^2.6.1",
22 | "rollup-plugin-includepaths": "^0.2.2",
23 | "rollup-plugin-uglify": "^1.0.1",
24 | "rollup-watch": "^3.2.2",
25 | "stem-core": "^0.2.60"
26 | },
27 | "dependencies": {
28 | "babel-polyfill": "^6.23.0"
29 | }
30 | }
31 |
--------------------------------------------------------------------------------
/css/bootstrap/less/utilities.less:
--------------------------------------------------------------------------------
1 | //
2 | // Utility classes
3 | // --------------------------------------------------
4 |
5 |
6 | // Floats
7 | // -------------------------
8 |
9 | .clearfix {
10 | .clearfix();
11 | }
12 | .center-block {
13 | .center-block();
14 | }
15 | .pull-right {
16 | float: right !important;
17 | }
18 | .pull-left {
19 | float: left !important;
20 | }
21 |
22 |
23 | // Toggling content
24 | // -------------------------
25 |
26 | // Note: Deprecated .hide in favor of .hidden or .sr-only (as appropriate) in v3.0.1
27 | .hide {
28 | display: none !important;
29 | }
30 | .show {
31 | display: block !important;
32 | }
33 | .invisible {
34 | visibility: hidden;
35 | }
36 | .text-hide {
37 | .text-hide();
38 | }
39 |
40 |
41 | // Hide from screenreaders and browsers
42 | //
43 | // Credit: HTML5 Boilerplate
44 |
45 | .hidden {
46 | display: none !important;
47 | }
48 |
49 |
50 | // For Affix plugin
51 | // -------------------------
52 |
53 | .affix {
54 | position: fixed;
55 | }
56 |
--------------------------------------------------------------------------------
/react-v15.5.4-redux-v3.6.0/webpack.config.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | require("babel-plugin-syntax-jsx")
3 | var path = require('path')
4 | var webpack = require('webpack')
5 | var cache = {};
6 | var loaders = [
7 | {
8 | test: /\.jsx$/,
9 | loader: 'babel-loader'
10 | },
11 | {
12 | test: /\.es6\.js$/,
13 | loader: 'babel-loader'
14 | },
15 | {
16 | test: /\.css$/,
17 | loader: 'style-loader!css-loader'
18 | }
19 | ];
20 | var extensions = [
21 | '.js', '.jsx', '.es6.js'
22 | ];
23 |
24 | module.exports = [{
25 | cache: cache,
26 | module: {
27 | loaders: loaders
28 | },
29 | entry: {
30 | main: './src/main.es6.js',
31 | },
32 | output: {
33 | path: path.resolve(__dirname, "dist"),
34 | filename: '[name].js'
35 | },
36 | resolve: {
37 | extensions: extensions,
38 | modules: [
39 | __dirname,
40 | path.resolve(__dirname, "src"),
41 | "node_modules"
42 | ]
43 | },
44 | plugins: [
45 | new webpack.DefinePlugin({
46 | 'process.env.NODE_ENV': '"production"'
47 | })
48 | ]
49 | }];
--------------------------------------------------------------------------------
/surplus-v0.4.0/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "js-framework-benchmark-surplus",
3 | "version": "0.4.0",
4 | "description": "Surplus js-framework-benchmark implementation",
5 | "main": "dist/main.js",
6 | "scripts": {
7 | "build-dev": "webpack -w -d --config webpack.config.js",
8 | "build-prod": "webpack -p --config webpack.config.js"
9 | },
10 | "keywords": [
11 | "s.js",
12 | "surplus",
13 | "javascript",
14 | "framework",
15 | "benchmark"
16 | ],
17 | "author": "Adam Haile",
18 | "license": "MIT",
19 | "homepage": "https://github.com/curveship/js-framework-benchmark",
20 | "repository": {
21 | "type": "git",
22 | "url": "https://github.com/curveship/js-framework-benchmark.git"
23 | },
24 | "dependencies": {
25 | "s-js": "^0.4.1",
26 | "s-array": "^0.4.5",
27 | "surplus": "^0.4.0"
28 | },
29 | "devDependencies": {
30 | "ts-loader": "0.8.2",
31 | "typescript": "2.2.1",
32 | "surplus-loader": "^0.4.2",
33 | "webpack": "2.2.1"
34 | }
35 | }
36 |
--------------------------------------------------------------------------------
/angular-v4.1.2-keyed/closure.conf:
--------------------------------------------------------------------------------
1 | --compilation_level=ADVANCED_OPTIMIZATIONS
2 | --language_out=ES5
3 | --js_output_file=dist/bundle.js
4 | --output_manifest=dist/manifest.MF
5 | --variable_renaming_report=dist/variable_renaming_report
6 | --property_renaming_report=dist/property_renaming_report
7 | --create_source_map=%outname%.map
8 |
9 | --warning_level=QUIET
10 | --dependency_mode=STRICT
11 | --rewrite_polyfills=false
12 | --module_resolution=node
13 |
14 | node_modules/zone.js/dist/zone_externs.js
15 |
16 | --js node_modules/rxjs/**.js
17 | --process_common_js_modules
18 |
19 | node_modules/@angular/core/@angular/core.js
20 | --js_module_root=node_modules/@angular/core
21 | node_modules/@angular/core/src/testability/testability.externs.js
22 |
23 | node_modules/@angular/common/@angular/common.js
24 | --js_module_root=node_modules/@angular/common
25 |
26 | node_modules/@angular/platform-browser/@angular/platform-browser.js
27 | --js_module_root=node_modules/@angular/platform-browser
28 |
29 | --js tmp/**.js
30 | --entry_point=./tmp/main.aot
31 |
--------------------------------------------------------------------------------
/angular-v4.1.2-non-keyed/closure.conf:
--------------------------------------------------------------------------------
1 | --compilation_level=ADVANCED_OPTIMIZATIONS
2 | --language_out=ES5
3 | --js_output_file=dist/bundle.js
4 | --output_manifest=dist/manifest.MF
5 | --variable_renaming_report=dist/variable_renaming_report
6 | --property_renaming_report=dist/property_renaming_report
7 | --create_source_map=%outname%.map
8 |
9 | --warning_level=QUIET
10 | --dependency_mode=STRICT
11 | --rewrite_polyfills=false
12 | --module_resolution=node
13 |
14 | node_modules/zone.js/dist/zone_externs.js
15 |
16 | --js node_modules/rxjs/**.js
17 | --process_common_js_modules
18 |
19 | node_modules/@angular/core/@angular/core.js
20 | --js_module_root=node_modules/@angular/core
21 | node_modules/@angular/core/src/testability/testability.externs.js
22 |
23 | node_modules/@angular/common/@angular/common.js
24 | --js_module_root=node_modules/@angular/common
25 |
26 | node_modules/@angular/platform-browser/@angular/platform-browser.js
27 | --js_module_root=node_modules/@angular/platform-browser
28 |
29 | --js tmp/**.js
30 | --entry_point=./tmp/main.aot
31 |
--------------------------------------------------------------------------------
/riot-v3.5.0/webpack.config.js:
--------------------------------------------------------------------------------
1 | 'use strict'
2 | var path = require('path')
3 | var cache = {}
4 |
5 | var loaders = [
6 | {
7 | test: /\.es6\.js$/,
8 | loader: 'babel-loader',
9 | exclude: /node_modules/
10 | },
11 | {
12 | test: /\.html$/, loader: 'tag-loader',
13 | query: {
14 | type: 'es6'
15 | }
16 | },
17 | {
18 | test: /\.css$/,
19 | loader: 'style-loader!css-loader'
20 | }
21 | ]
22 |
23 | var extensions = [
24 | '.js', '.es6.js', '.html'
25 | ]
26 |
27 | module.exports = [{
28 | cache: cache,
29 | module: {
30 | loaders: loaders
31 | },
32 | entry: {
33 | main: './src/main',
34 | },
35 | output: {
36 | path: path.resolve(__dirname, "dist"),
37 | filename: '[name].js',
38 | sourceMapFilename: "[file].map",
39 | },
40 | resolve: {
41 | extensions: extensions,
42 | modules: [
43 | __dirname,
44 | path.resolve(__dirname, "src"),
45 | "node_modules"
46 | ],
47 | alias: {
48 | "riot": __dirname+"/node_modules/riot/riot.min.js",
49 | }
50 | }
51 | }]
--------------------------------------------------------------------------------
/webdriver-ts/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "webdriver-ts",
3 | "version": "1.0.0",
4 | "description": "",
5 | "main": "index.js",
6 | "scripts": {
7 | "test": "echo \"Error: no test specified\" && exit 1",
8 | "compile": "tsc",
9 | "build-prod": "tsc",
10 | "selenium": "node dist/benchmarkRunner.js",
11 | "checkSelenium": "node dist/benchmarkRunner.js --check true",
12 | "results": "node dist/createResultTable.js",
13 | "index": "node dist/createIndex.js",
14 | "check": "node dist/runCheck.js"
15 | },
16 | "author": "",
17 | "license": "Apache-2.0",
18 | "devDependencies": {
19 | "@types/lodash": "^4.14.55",
20 | "@types/node": "^7.0.8",
21 | "@types/selenium-webdriver": "^3.0.0",
22 | "@types/yargs": "^6.6.0",
23 | "typescript": "2.2.1"
24 | },
25 | "dependencies": {
26 | "chromedriver": "2.28.0",
27 | "dot": "1.1.1",
28 | "jstat": "1.5.3",
29 | "lodash": "4.17.4",
30 | "rgba-convert": "0.3.0",
31 | "selenium-webdriver": "^3.3.0",
32 | "yargs": "7.0.2"
33 | }
34 | }
35 |
--------------------------------------------------------------------------------
/marko-v4.3.0/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "js-framework-benchmark-marko",
3 | "version": "1.1.1",
4 | "description": "Marko.JS demo",
5 | "scripts": {
6 | "build-dev": "rollup -c rollup.config.js",
7 | "build-prod": "NODE_ENV=production rollup -c rollup.config.js"
8 | },
9 | "keywords": [
10 | "marko",
11 | "rollup"
12 | ],
13 | "author": "Stefan Krause",
14 | "license": "Apache-2.0",
15 | "homepage": "https://github.com/krausest/js-framework-benchmark",
16 | "repository": {
17 | "type": "git",
18 | "url": "https://github.com/krausest/js-framework-benchmark.git"
19 | },
20 | "devDependencies": {},
21 | "dependencies": {
22 | "envify": "^4.0.0",
23 | "marko": "^4.2.0",
24 | "markoify": "^2.2.2",
25 | "rollup": "^0.41.6",
26 | "rollup-plugin-babel": "^2.7.1",
27 | "rollup-plugin-browserify-transform": "^0.1.0",
28 | "rollup-plugin-buble": "^0.15.0",
29 | "rollup-plugin-commonjs": "^8.0.2",
30 | "rollup-plugin-node-resolve": "^3.0.0",
31 | "rollup-plugin-uglify": "^1.0.1"
32 | }
33 | }
34 |
--------------------------------------------------------------------------------
/react-v15.5.4-mobX-v3.1.9/src/Row.jsx:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | var React = require('react');
4 | var ReactDOM = require('react-dom');
5 | var {observer} = require("mobx-react");
6 | var {observable, computed} = require ("mobx");
7 |
8 | @observer
9 | export class Row extends React.Component {
10 | constructor(props) {
11 | super(props);
12 | this.onDelete = this.onDelete.bind(this);
13 | this.onClick = this.onClick.bind(this);
14 | }
15 |
16 | onDelete() {
17 | this.props.onDelete(this.props.data);
18 | }
19 | onClick() {
20 | this.props.onClick(this.props.data);
21 | }
22 |
23 | render() {
24 | let {onClick, onDelete, data} = this.props;
25 | return (
26 | | {data.id} |
27 |
28 | {data.label}
29 | |
30 | |
31 | |
32 |
);
33 | }
34 | }
35 |
36 |
--------------------------------------------------------------------------------
/react-v15.5.4-redux-v3.6.0/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "js-framework-benchmark-react",
3 | "version": "1.1.1",
4 | "description": "React demo",
5 | "main": "index.js",
6 | "scripts": {
7 | "build-dev": "webpack -w -d",
8 | "build-prod": "webpack -p"
9 | },
10 | "keywords": [
11 | "react",
12 | "webpack"
13 | ],
14 | "author": "Stefan Krause",
15 | "license": "Apache-2.0",
16 | "homepage": "https://github.com/krausest/js-framework-benchmark",
17 | "repository": {
18 | "type": "git",
19 | "url": "https://github.com/krausest/js-framework-benchmark.git"
20 | },
21 | "devDependencies": {
22 | "babel-core": "6.24.1",
23 | "babel-loader": "7.0.0",
24 | "babel-preset-es2015": "6.24.1",
25 | "babel-preset-react": "6.24.1",
26 | "jsx-loader": "0.13.2",
27 | "webpack": "2.5.1"
28 | },
29 | "dependencies": {
30 | "immutable": "v3.8.1",
31 | "react": "15.5.4",
32 | "react-addons-shallow-compare": "15.5.2",
33 | "react-dom": "15.5.4",
34 | "react-redux": "5.0.4",
35 | "redux": "3.6.0"
36 | }
37 | }
38 |
--------------------------------------------------------------------------------
/ember-v2.13.0/tests/.jshintrc:
--------------------------------------------------------------------------------
1 | {
2 | "predef": [
3 | "document",
4 | "window",
5 | "location",
6 | "setTimeout",
7 | "$",
8 | "-Promise",
9 | "define",
10 | "console",
11 | "visit",
12 | "exists",
13 | "fillIn",
14 | "click",
15 | "keyEvent",
16 | "triggerEvent",
17 | "find",
18 | "findWithAssert",
19 | "wait",
20 | "DS",
21 | "andThen",
22 | "currentURL",
23 | "currentPath",
24 | "currentRouteName"
25 | ],
26 | "node": false,
27 | "browser": false,
28 | "boss": true,
29 | "curly": true,
30 | "debug": false,
31 | "devel": false,
32 | "eqeqeq": true,
33 | "evil": true,
34 | "forin": false,
35 | "immed": false,
36 | "laxbreak": false,
37 | "newcap": true,
38 | "noarg": true,
39 | "noempty": false,
40 | "nonew": false,
41 | "nomen": false,
42 | "onevar": false,
43 | "plusplus": false,
44 | "regexp": false,
45 | "undef": true,
46 | "sub": true,
47 | "strict": false,
48 | "white": false,
49 | "eqnull": true,
50 | "esversion": 6,
51 | "unused": true
52 | }
53 |
--------------------------------------------------------------------------------
/choo-v5.4.0/src/rowsView.js:
--------------------------------------------------------------------------------
1 | const html = require('choo/html');
2 |
3 | module.exports = function rowsView (state, emit) {
4 | const data = state.data;
5 | const selected = state.selected;
6 | function del(id) {
7 | return function(e) {
8 | emit('delete', { id: id });
9 | };
10 | }
11 |
12 | function click(id) {
13 | return function (e) {
14 | emit('select', { id: id });
15 | };
16 | }
17 |
18 | function className(id) {
19 | return id === selected ? 'danger' : '';
20 | }
21 |
22 | return data.map((d, i) => {
23 | const id = d.id;
24 | const label = d.label;
25 | return html`
26 |
27 | | ${id} |
28 |
29 | ${label}
30 | |
31 |
32 |
33 |
34 |
35 | |
36 | |
37 |
38 | `;
39 | });
40 | };
41 |
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "js-framework-benchmark",
3 | "version": "1.0.0",
4 | "description": "Simple Benchmark for Javascript client side rendering",
5 | "scripts": {
6 | "postinstall": "node install.js",
7 | "build": "node build.js",
8 | "build-prod": "node build.js",
9 | "compile": "node build.js",
10 | "start": "http-server -c-1 .",
11 | "selenium": "cd webdriver-ts && npm run selenium && npm run results"
12 | },
13 | "keywords": [
14 | "benchmark",
15 | "javascript",
16 | "frontend",
17 | "client",
18 | "react",
19 | "angular",
20 | "mithril"
21 | ],
22 | "repository": {
23 | "type": "git",
24 | "url": "https://github.com/krausest/js-framework-benchmark.git"
25 | },
26 | "author": "Stefan Krause",
27 | "license": "ISC",
28 | "homepage": "https://github.com/krausest/js-framework-benchmark",
29 | "dependencies": {
30 | "command-exists": "^1.0.2",
31 | "fs-extra": "^0.30.0",
32 | "http-server": "^0.9.0",
33 | "lodash": "^4.15.0"
34 | },
35 | "devDependencies": {
36 | "yargs": "^6.6.0"
37 | }
38 | }
39 |
--------------------------------------------------------------------------------
/css/bootstrap/less/pager.less:
--------------------------------------------------------------------------------
1 | //
2 | // Pager pagination
3 | // --------------------------------------------------
4 |
5 |
6 | .pager {
7 | padding-left: 0;
8 | margin: @line-height-computed 0;
9 | list-style: none;
10 | text-align: center;
11 | &:extend(.clearfix all);
12 | li {
13 | display: inline;
14 | > a,
15 | > span {
16 | display: inline-block;
17 | padding: 5px 14px;
18 | background-color: @pager-bg;
19 | border: 1px solid @pager-border;
20 | border-radius: @pager-border-radius;
21 | }
22 |
23 | > a:hover,
24 | > a:focus {
25 | text-decoration: none;
26 | background-color: @pager-hover-bg;
27 | }
28 | }
29 |
30 | .next {
31 | > a,
32 | > span {
33 | float: right;
34 | }
35 | }
36 |
37 | .previous {
38 | > a,
39 | > span {
40 | float: left;
41 | }
42 | }
43 |
44 | .disabled {
45 | > a,
46 | > a:hover,
47 | > a:focus,
48 | > span {
49 | color: @pager-disabled-color;
50 | background-color: @pager-bg;
51 | cursor: @cursor-disabled;
52 | }
53 | }
54 | }
55 |
--------------------------------------------------------------------------------
/inferno-v3.1.2-keyed/webpack.config.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | require("babel-plugin-syntax-jsx")
3 | require("babel-plugin-inferno")
4 | var path = require('path')
5 |
6 | var cache = {};
7 | var loaders = [
8 | {
9 | test: /\.jsx$/,
10 | loader: 'babel-loader'
11 | },
12 | {
13 | test: /\.es6\.js$/,
14 | loader: 'babel-loader'
15 | },
16 | {
17 | test: /\.css$/,
18 | loader: 'style-loader!css-loader'
19 | }
20 | ];
21 | var extensions = [
22 | '.js', '.jsx', '.es6.js', '.msx'
23 | ];
24 |
25 | module.exports = [{
26 | cache: cache,
27 | module: {
28 | loaders: loaders
29 | },
30 | entry: {
31 | main: './src/main',
32 | },
33 | output: {
34 | path: path.resolve(__dirname, "dist"),
35 | filename: '[name].js',
36 | sourceMapFilename: "[file].map",
37 | },
38 | resolve: {
39 | modules: [
40 | __dirname,
41 | path.resolve(__dirname, "src"),
42 | "node_modules"
43 | ],
44 | extensions: extensions,
45 | alias: {
46 | "inferno": __dirname+"/node_modules/inferno/dist/inferno.min.js",
47 | "inferno-component": __dirname+"/node_modules/inferno-component/dist/inferno-component.min.js"
48 | }
49 | }
50 | }];
--------------------------------------------------------------------------------
/css/bootstrap/grunt/bs-commonjs-generator.js:
--------------------------------------------------------------------------------
1 | /*!
2 | * Bootstrap Grunt task for the CommonJS module generation
3 | * http://getbootstrap.com
4 | * Copyright 2014-2015 Twitter, Inc.
5 | * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
6 | */
7 |
8 | 'use strict';
9 |
10 | var fs = require('fs');
11 | var path = require('path');
12 |
13 | var COMMONJS_BANNER = '// This file is autogenerated via the `commonjs` Grunt task. You can require() this file in a CommonJS environment.\n';
14 |
15 | module.exports = function generateCommonJSModule(grunt, srcFiles, destFilepath) {
16 | var destDir = path.dirname(destFilepath);
17 |
18 | function srcPathToDestRequire(srcFilepath) {
19 | var requirePath = path.relative(destDir, srcFilepath).replace(/\\/g, '/');
20 | return 'require(\'' + requirePath + '\')';
21 | }
22 |
23 | var moduleOutputJs = COMMONJS_BANNER + srcFiles.map(srcPathToDestRequire).join('\n');
24 | try {
25 | fs.writeFileSync(destFilepath, moduleOutputJs);
26 | } catch (err) {
27 | grunt.fail.warn(err);
28 | }
29 | grunt.log.writeln('File ' + destFilepath.cyan + ' created.');
30 | };
31 |
--------------------------------------------------------------------------------
/inferno-v3.1.2-non-keyed/webpack.config.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | require("babel-plugin-syntax-jsx")
3 | require("babel-plugin-inferno")
4 | var path = require('path')
5 |
6 | var cache = {};
7 | var loaders = [
8 | {
9 | test: /\.jsx$/,
10 | loader: 'babel-loader'
11 | },
12 | {
13 | test: /\.es6\.js$/,
14 | loader: 'babel-loader'
15 | },
16 | {
17 | test: /\.css$/,
18 | loader: 'style-loader!css-loader'
19 | }
20 | ];
21 | var extensions = [
22 | '.js', '.jsx', '.es6.js', '.msx'
23 | ];
24 |
25 | module.exports = [{
26 | cache: cache,
27 | module: {
28 | loaders: loaders
29 | },
30 | entry: {
31 | main: './src/main',
32 | },
33 | output: {
34 | path: path.resolve(__dirname, "dist"),
35 | filename: '[name].js',
36 | sourceMapFilename: "[file].map",
37 | },
38 | resolve: {
39 | modules: [
40 | __dirname,
41 | path.resolve(__dirname, "src"),
42 | "node_modules"
43 | ],
44 | extensions: extensions,
45 | alias: {
46 | "inferno": __dirname+"/node_modules/inferno/dist/inferno.min.js",
47 | "inferno-component": __dirname+"/node_modules/inferno-component/dist/inferno-component.min.js"
48 | }
49 | }
50 | }];
--------------------------------------------------------------------------------
/react-v15.5.4-mobX-v3.1.9/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "js-framework-benchmark-react",
3 | "version": "1.1.1",
4 | "description": "React demo",
5 | "main": "index.js",
6 | "scripts": {
7 | "build-dev": "webpack -w -d",
8 | "build-prod": "webpack -p"
9 | },
10 | "keywords": [
11 | "react",
12 | "webpack"
13 | ],
14 | "author": "Stefan Krause",
15 | "license": "Apache-2.0",
16 | "homepage": "https://github.com/krausest/js-framework-benchmark",
17 | "repository": {
18 | "type": "git",
19 | "url": "https://github.com/krausest/js-framework-benchmark.git"
20 | },
21 | "devDependencies": {
22 | "babel-core": "6.24.1",
23 | "babel-loader": "7.0.0",
24 | "babel-plugin-transform-class-properties": "6.24.1",
25 | "babel-plugin-transform-decorators-legacy": "1.3.4",
26 | "babel-preset-es2015": "6.24.1",
27 | "babel-preset-react": "6.24.1",
28 | "babel-preset-stage-0": "6.24.1",
29 | "webpack": "2.5.1",
30 | "jsx-loader": "0.13.2"
31 | },
32 | "dependencies": {
33 | "mobx": "3.1.9",
34 | "mobx-react": "4.1.8",
35 | "react": "15.5.4",
36 | "react-dom": "15.5.4"
37 | }
38 | }
--------------------------------------------------------------------------------
/css/bootstrap/LICENSE:
--------------------------------------------------------------------------------
1 | The MIT License (MIT)
2 |
3 | Copyright (c) 2011-2015 Twitter, Inc
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in
13 | all copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21 | THE SOFTWARE.
22 |
--------------------------------------------------------------------------------
/slim-js-v2.8.20/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "slim-js-v2.8.17",
3 | "version": "1.0.0",
4 | "description": "",
5 | "main": "index.js",
6 | "scripts": {
7 | "build-prod": "exit 0",
8 | "abuild-prod": "NODE_ENV=production webpack -p --progress --display-chunks --profile --config webpack.prod.config.js",
9 | "test": "echo \"Error: no test specified\" && exit 1"
10 | },
11 | "keywords": [],
12 | "author": "",
13 | "license": "ISC",
14 | "devDependencies": {
15 | "webpack": "^1.12.12",
16 | "uglify-js-harmony": "^2.6.2",
17 | "script-loader": "^0.7.0",
18 | "html-webpack-plugin": "^2.7.2",
19 | "html-webpack-template": "^3.0.2",
20 | "babel": "^6.23.0",
21 | "babel-core": "^6.4.5",
22 | "babel-eslint": "^7.2.3",
23 | "babel-loader": "^6.2.1",
24 | "babel-plugin-transform-custom-element-classes": "^0.1.0",
25 | "babel-plugin-transform-decorators": "^6.24.1",
26 | "babel-plugin-transform-decorators-legacy": "^1.3.4",
27 | "babel-polyfill": "^6.23.0",
28 | "babel-preset-env": "^1.4.0",
29 | "babel-preset-es2015": "^6.3.13"
30 | },
31 | "dependencies": {
32 | "slim-js": "^2.8.20"
33 | }
34 | }
35 |
--------------------------------------------------------------------------------
/cyclejs-dom-v17.1.0/webpack.config.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | var path = require('path')
3 |
4 | var cache = {};
5 | var loaders = [
6 | {
7 | test: /\.jsx?$/,
8 | loader: 'babel-loader',
9 | exclude: /node_modules/,
10 | query: {
11 | presets: ['es2015', 'stage-0'],
12 | plugins: [
13 | [
14 | 'transform-react-jsx',
15 | {
16 | pragma: 'html'
17 | }
18 | ]
19 | ]
20 | }
21 | },
22 | {
23 | test: /\.es6\.js$/,
24 | loader: 'babel-loader',
25 | exclude: /node_modules/,
26 | query: {
27 | presets: ['es2015', 'stage-0']
28 | }
29 | },
30 | {
31 | test: /\.css$/,
32 | loader: 'style-loader!css-loader'
33 | }
34 | ];
35 | var extensions = [
36 | '.js', '.jsx', '.es6.js'
37 | ];
38 |
39 | module.exports = [{
40 | cache: cache,
41 | module: {
42 | loaders: loaders
43 | },
44 | entry: {
45 | main: './src/main',
46 | },
47 | output: {
48 | path: path.resolve(__dirname, "dist"),
49 | filename: '[name].js',
50 | sourceMapFilename: "[file].map",
51 | },
52 | resolve: {
53 | modules: [
54 | __dirname,
55 | path.resolve(__dirname, "src"),
56 | "node_modules"
57 | ],
58 | extensions: extensions,
59 | alias: {
60 | }
61 | }
62 | }];
--------------------------------------------------------------------------------
/ember-v2.13.0/tests/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | EmberTemp Tests
7 |
8 |
9 |
10 | {{content-for "head"}}
11 | {{content-for "test-head"}}
12 |
13 |
14 |
15 |
16 |
17 | {{content-for "head-footer"}}
18 | {{content-for "test-head-footer"}}
19 |
20 |
21 | {{content-for "body"}}
22 | {{content-for "test-body"}}
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 | {{content-for "body-footer"}}
31 | {{content-for "test-body-footer"}}
32 |
33 |
34 |
--------------------------------------------------------------------------------
/css/bootstrap/less/media.less:
--------------------------------------------------------------------------------
1 | .media {
2 | // Proper spacing between instances of .media
3 | margin-top: 15px;
4 |
5 | &:first-child {
6 | margin-top: 0;
7 | }
8 | }
9 |
10 | .media,
11 | .media-body {
12 | zoom: 1;
13 | overflow: hidden;
14 | }
15 |
16 | .media-body {
17 | width: 10000px;
18 | }
19 |
20 | .media-object {
21 | display: block;
22 |
23 | // Fix collapse in webkit from max-width: 100% and display: table-cell.
24 | &.img-thumbnail {
25 | max-width: none;
26 | }
27 | }
28 |
29 | .media-right,
30 | .media > .pull-right {
31 | padding-left: 10px;
32 | }
33 |
34 | .media-left,
35 | .media > .pull-left {
36 | padding-right: 10px;
37 | }
38 |
39 | .media-left,
40 | .media-right,
41 | .media-body {
42 | display: table-cell;
43 | vertical-align: top;
44 | }
45 |
46 | .media-middle {
47 | vertical-align: middle;
48 | }
49 |
50 | .media-bottom {
51 | vertical-align: bottom;
52 | }
53 |
54 | // Reset margins on headings for tighter default spacing
55 | .media-heading {
56 | margin-top: 0;
57 | margin-bottom: 5px;
58 | }
59 |
60 | // Media list variation
61 | //
62 | // Undo default ul/ol styles
63 | .media-list {
64 | padding-left: 0;
65 | list-style: none;
66 | }
67 |
--------------------------------------------------------------------------------
/css/bootstrap/less/mixins/image.less:
--------------------------------------------------------------------------------
1 | // Image Mixins
2 | // - Responsive image
3 | // - Retina image
4 |
5 |
6 | // Responsive image
7 | //
8 | // Keep images from scaling beyond the width of their parents.
9 | .img-responsive(@display: block) {
10 | display: @display;
11 | max-width: 100%; // Part 1: Set a maximum relative to the parent
12 | height: auto; // Part 2: Scale the height according to the width, otherwise you get stretching
13 | }
14 |
15 |
16 | // Retina image
17 | //
18 | // Short retina mixin for setting background-image and -size. Note that the
19 | // spelling of `min--moz-device-pixel-ratio` is intentional.
20 | .img-retina(@file-1x; @file-2x; @width-1x; @height-1x) {
21 | background-image: url("@{file-1x}");
22 |
23 | @media
24 | only screen and (-webkit-min-device-pixel-ratio: 2),
25 | only screen and ( min--moz-device-pixel-ratio: 2),
26 | only screen and ( -o-min-device-pixel-ratio: 2/1),
27 | only screen and ( min-device-pixel-ratio: 2),
28 | only screen and ( min-resolution: 192dpi),
29 | only screen and ( min-resolution: 2dppx) {
30 | background-image: url("@{file-2x}");
31 | background-size: @width-1x @height-1x;
32 | }
33 | }
34 |
--------------------------------------------------------------------------------
/angular-v2.4.9-keyed/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "angular2-webpack",
3 | "version": "1.0.0",
4 | "description": "A webpack starter for angular 2",
5 | "scripts": {
6 | "start": "npm run build-dev && npm run serve",
7 | "test": "karma start",
8 | "precompile": "ngc",
9 | "build-prod": "npm run precompile && node rollup.config.js --prod",
10 | "build-dev": "npm run precompile && node rollup.config.js",
11 | "postinstall": "typings install"
12 | },
13 | "license": "MIT",
14 | "dependencies": {
15 | "@angular/common": "2.4.9",
16 | "@angular/compiler": "2.4.9",
17 | "@angular/compiler-cli": "2.4.9",
18 | "@angular/core": "2.4.9",
19 | "@angular/platform-browser": "2.4.9",
20 | "@angular/platform-browser-dynamic": "2.4.9",
21 | "@angular/platform-server": "2.4.9",
22 | "core-js": "2.4.1",
23 | "rxjs": "5.0.3",
24 | "zone.js": "0.7.7"
25 | },
26 | "devDependencies": {
27 | "google-closure-compiler-js": "20170124.0.0",
28 | "http-server": "0.9.0",
29 | "rollup": "0.41.4",
30 | "rollup-plugin-commonjs": "7.0.0",
31 | "rollup-plugin-node-resolve": "2.0.0",
32 | "typescript": "2.2.1",
33 | "typings": "2.1.0",
34 | "yargs": "7.0.1"
35 | }
36 | }
37 |
--------------------------------------------------------------------------------
/angular-v2.4.9-non-keyed/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "angular2-webpack",
3 | "version": "1.0.0",
4 | "description": "A webpack starter for angular 2",
5 | "scripts": {
6 | "start": "npm run build-dev && npm run serve",
7 | "test": "karma start",
8 | "precompile": "ngc",
9 | "build-prod": "npm run precompile && node rollup.config.js --prod",
10 | "build-dev": "npm run precompile && node rollup.config.js",
11 | "postinstall": "typings install"
12 | },
13 | "license": "MIT",
14 | "dependencies": {
15 | "@angular/common": "2.4.9",
16 | "@angular/compiler": "2.4.9",
17 | "@angular/compiler-cli": "2.4.9",
18 | "@angular/core": "2.4.9",
19 | "@angular/platform-browser": "2.4.9",
20 | "@angular/platform-browser-dynamic": "2.4.9",
21 | "@angular/platform-server": "2.4.9",
22 | "core-js": "2.4.1",
23 | "rxjs": "5.0.3",
24 | "zone.js": "0.7.7"
25 | },
26 | "devDependencies": {
27 | "google-closure-compiler-js": "20170124.0.0",
28 | "http-server": "0.9.0",
29 | "rollup": "0.41.4",
30 | "rollup-plugin-commonjs": "7.0.0",
31 | "rollup-plugin-node-resolve": "2.0.0",
32 | "typescript": "2.2.1",
33 | "typings": "2.1.0",
34 | "yargs": "7.0.1"
35 | }
36 | }
37 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | # Logs
2 | logs
3 | *.log
4 |
5 | # Runtime data
6 | pids
7 | *.pid
8 | *.seed
9 |
10 | # Directory for instrumented libs generated by jscoverage/JSCover
11 | lib-cov
12 |
13 | # Coverage directory used by tools like istanbul
14 | coverage
15 |
16 | # Grunt intermediate storage (http://gruntjs.com/creating-plugins#storing-task-files)
17 | .grunt
18 |
19 | # node-waf configuration
20 | .lock-wscript
21 |
22 | # Compiled binary addons (http://nodejs.org/api/addons.html)
23 | build/Release
24 |
25 | # Dependency directory
26 | # https://www.npmjs.org/doc/misc/npm-faq.html#should-i-check-my-node_modules-folder-into-git
27 | node_modules
28 | jspm_packages
29 | bower_components
30 | dist
31 |
32 | .idea
33 | .DS_Store
34 | *.iml
35 | */dist/
36 | angular2/app/app.js
37 | angular2/app/app.js.map
38 | tests/results/completed/
39 | target/
40 | webdriver-java/chromedriver
41 | webdriver-java/results/
42 | webdriver-ts/results/
43 | webdriver-ts/typings/
44 | webdriver-ts/.vscode/
45 | marko-*/.cache
46 | marko-*/static
47 | marko-*/build
48 | marko-*/src/xtable.marko
49 |
50 | yarn.lock
51 |
52 | # angular 2 aot
53 | angular-*/lib/
54 | **/app.ngfactory.ts
55 | angular-*/src/app.ngsummary.json
56 |
57 | #glimmer
58 | glimmer-*/dist
59 | glimmer-*/tmp
60 |
--------------------------------------------------------------------------------
/stem-v0.2.70/README.md:
--------------------------------------------------------------------------------
1 | # stemjs-demo
2 | This is a demo project to learn StemJS https:/stemjs.org
3 | `Node` and `npm` need to be installed to be able to build this project.
4 | In order to compile the source, you need to have `Rollup` and `Babel` installed.
5 |
6 | ## Getting started
7 |
8 | #### Linux
9 | Assuming `git` is also already installed.
10 | ##### Setup
11 | ```bash
12 | cd path/to/workspace
13 | git clone https://github.com/mciucu/stemjs-demo
14 | cd stemjs-demo
15 | npm install -g babel-cli rollup
16 | npm update
17 | ```
18 |
19 | ##### Compile
20 | ```bash
21 | cd src
22 | rollup -c
23 | ```
24 |
25 | ##### Run
26 | Simply open index.html in your favorite browser (we recommend Google Chrome for full compatibility).
27 |
28 | ##### Workflow
29 | We usually work with the excellent JetBrain IDEs (Webstorm and PyCharm),
30 | you just need to change the Javascript language version to JSX to work optimally with them.
31 | You can use vim/emacs/whatever else you like though, don't let us spoil your fun.
32 |
33 | The entry point of the project is `src/Main.jsx`. Besides it, currently, there is a subfolder with various widgets.
34 | When you want to check the changes you made, compile, refresh the browser (make sure the JS is not cached) and be amazed!
35 |
36 |
--------------------------------------------------------------------------------
/vue-v2.3.3-keyed/webpack.config.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | var path = require('path')
3 | var webpack = require('webpack')
4 | var cache = {};
5 | var loaders = [
6 | {
7 | test: /\.jsx$/,
8 | loader: 'jsx-loader!babel-loader',
9 | exclude: /node_modules/,
10 | query: {
11 | presets: ['es2015']
12 | }
13 | },
14 | {
15 | test: /\.js$/,
16 | loader: 'babel-loader',
17 | exclude: /node_modules/
18 | },
19 | {
20 | test: /\.css$/,
21 | loader: 'style-loader!css-loader'
22 | },
23 | {
24 | test: /\.vue$/,
25 | loader: 'vue-loader',
26 | query: {
27 | preserveWhitespace: false
28 | }
29 | }
30 | ];
31 | var extensions = [
32 | '.js', '.jsx', '.es6.js', '.msx'
33 | ];
34 |
35 | module.exports = [{
36 | cache: cache,
37 | module: {
38 | loaders: loaders
39 | },
40 | entry: {
41 | main: './src/main',
42 | },
43 | output: {
44 | path: path.resolve(__dirname, "dist"),
45 | filename: '[name].js',
46 | sourceMapFilename: "[file].map",
47 | },
48 | resolve: {
49 | modules: [
50 | __dirname,
51 | path.resolve(__dirname, "src"),
52 | "node_modules"
53 | ],
54 | extensions: extensions
55 | },
56 | plugins: [
57 | new webpack.DefinePlugin({
58 | 'process.env.NODE_ENV': '"production"'
59 | })
60 | ]
61 | }];
62 |
--------------------------------------------------------------------------------
/vue-v2.3.3-non-keyed/webpack.config.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | var path = require('path')
3 | var webpack = require('webpack')
4 | var cache = {};
5 | var loaders = [
6 | {
7 | test: /\.jsx$/,
8 | loader: 'jsx-loader!babel-loader',
9 | exclude: /node_modules/,
10 | query: {
11 | presets: ['es2015']
12 | }
13 | },
14 | {
15 | test: /\.js$/,
16 | loader: 'babel-loader',
17 | exclude: /node_modules/
18 | },
19 | {
20 | test: /\.css$/,
21 | loader: 'style-loader!css-loader'
22 | },
23 | {
24 | test: /\.vue$/,
25 | loader: 'vue-loader',
26 | query: {
27 | preserveWhitespace: false
28 | }
29 | }
30 | ];
31 | var extensions = [
32 | '.js', '.jsx', '.es6.js', '.msx'
33 | ];
34 |
35 | module.exports = [{
36 | cache: cache,
37 | module: {
38 | loaders: loaders
39 | },
40 | entry: {
41 | main: './src/main',
42 | },
43 | output: {
44 | path: path.resolve(__dirname, "dist"),
45 | filename: '[name].js',
46 | sourceMapFilename: "[file].map",
47 | },
48 | resolve: {
49 | modules: [
50 | __dirname,
51 | path.resolve(__dirname, "src"),
52 | "node_modules"
53 | ],
54 | extensions: extensions
55 | },
56 | plugins: [
57 | new webpack.DefinePlugin({
58 | 'process.env.NODE_ENV': '"production"'
59 | })
60 | ]
61 | }];
62 |
--------------------------------------------------------------------------------
/stem-v0.2.70/src/Row.jsx:
--------------------------------------------------------------------------------
1 | import {UI} from "UIBase";
2 |
3 | class Row extends UI.Primitive("tr") {
4 |
5 | getRowObject() {
6 | return this.options.rowObject;
7 | }
8 |
9 | isSelected() {
10 | const rowObject = this.getRowObject();
11 | return rowObject.getStore().selected === rowObject.id;
12 | }
13 |
14 | extraNodeAttributes(attr) {
15 | if (this.isSelected()) {
16 | attr.addClass("danger");
17 | }
18 | }
19 |
20 | render() {
21 | const state = this.getRowObject();
22 | return [
23 | {state.id} | ,
24 |
25 | this.getRowObject().setSelected()}>{state.label}
26 | | ,
27 | this.getRowObject().delete()}> | ,
28 | | ];
29 | }
30 |
31 | setOnUpdate() {
32 | this.attachUpdateListener(this.getRowObject(), () => this.redraw());
33 | }
34 |
35 | refresh() {
36 | this.setOnUpdate();
37 |
38 | this.removeRef();
39 | this.options.ref.name = "row" + this.getRowObject().id;
40 | this.applyRef();
41 |
42 | this.redraw();
43 | }
44 |
45 | onMount() {
46 | this.setOnUpdate();
47 | }
48 | }
49 |
50 | export {Row};
51 |
--------------------------------------------------------------------------------
/webdriver-ts/index.dot:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | JS-Framkeworks Benchmark
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
Choose a framework:
16 |
17 |
24 |
25 |
32 |
33 |
34 |
35 |
--------------------------------------------------------------------------------
/angular-v4.1.2-keyed/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "angular2-webpack",
3 | "version": "1.0.0",
4 | "description": "A webpack starter for angular 2",
5 | "scripts": {
6 | "start": "npm run build-dev && npm run serve",
7 | "test": "karma start",
8 | "precompile": "ngc",
9 | "preclosure": "rm -rf dist",
10 | "closure": "java -jar node_modules/google-closure-compiler/compiler.jar --flagfile closure.conf",
11 | "build-prod": "npm run precompile && npm run closure",
12 | "build-dev": "npm run build-prod"
13 | },
14 | "license": "MIT",
15 | "dependencies": {
16 | "@angular/common": "4.1.2",
17 | "@angular/compiler": "4.1.2",
18 | "@angular/compiler-cli": "4.1.2",
19 | "@angular/core": "4.1.2",
20 | "@angular/platform-browser": "4.1.2",
21 | "@angular/platform-browser-dynamic": "4.1.2",
22 | "core-js": "2.4.1",
23 | "rxjs": "5.4.0",
24 | "zone.js": "0.8.10"
25 | },
26 | "devDependencies": {
27 | "google-closure-compiler": "20170409.0.0",
28 | "http-server": "0.9.0",
29 | "rollup": "0.41.6",
30 | "rollup-plugin-commonjs": "8.0.2",
31 | "rollup-plugin-node-resolve": "2.0.0",
32 | "rollup-plugin-uglify": "1.0.1",
33 | "typescript": "2.3.2",
34 | "typings": "2.1.0",
35 | "yargs": "7.0.2"
36 | }
37 | }
38 |
--------------------------------------------------------------------------------
/angular-v4.1.2-non-keyed/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "angular2-webpack",
3 | "version": "1.0.0",
4 | "description": "A webpack starter for angular 2",
5 | "scripts": {
6 | "start": "npm run build-dev && npm run serve",
7 | "test": "karma start",
8 | "precompile": "ngc",
9 | "preclosure": "rm -rf dist",
10 | "closure": "java -jar node_modules/google-closure-compiler/compiler.jar --flagfile closure.conf",
11 | "build-prod": "npm run precompile && npm run closure",
12 | "build-dev": "npm run build-prod"
13 | },
14 | "license": "MIT",
15 | "dependencies": {
16 | "@angular/common": "4.1.2",
17 | "@angular/compiler": "4.1.2",
18 | "@angular/compiler-cli": "4.1.2",
19 | "@angular/core": "4.1.2",
20 | "@angular/platform-browser": "4.1.2",
21 | "@angular/platform-browser-dynamic": "4.1.2",
22 | "core-js": "2.4.1",
23 | "rxjs": "5.4.0",
24 | "zone.js": "0.8.10"
25 | },
26 | "devDependencies": {
27 | "google-closure-compiler": "20170409.0.0",
28 | "http-server": "0.9.0",
29 | "rollup": "0.41.6",
30 | "rollup-plugin-commonjs": "8.0.2",
31 | "rollup-plugin-node-resolve": "2.0.0",
32 | "rollup-plugin-uglify": "1.0.1",
33 | "typescript": "2.3.2",
34 | "typings": "2.1.0",
35 | "yargs": "7.0.2"
36 | }
37 | }
38 |
--------------------------------------------------------------------------------
/react-lite-v0.15.30/src/Row.jsx:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | var React = require('react');
4 | var ReactDOM = require('react-dom');
5 |
6 | window.rowsUpdated = 0;
7 | window.rowsMounted = 0;
8 |
9 | export class Row extends React.Component {
10 | constructor(props) {
11 | super(props);
12 | this.onDelete = this.onDelete.bind(this);
13 | this.onClick = this.onClick.bind(this);
14 | }
15 | shouldComponentUpdate(nextProps, nextState) {
16 | return nextProps.data !== this.props.data || nextProps.styleClass !== this.props.styleClass;
17 | }
18 | // componentDidUpdate() {
19 | // window.rowsUpdated++;
20 | // }
21 | // componentDidMount() {
22 | // window.rowsMounted++;
23 | // }
24 |
25 | onDelete() {
26 | this.props.onDelete(this.props.data.id);
27 | }
28 | onClick() {
29 | this.props.onClick(this.props.data.id);
30 | }
31 |
32 | render() {
33 | let {styleClass, onClick, onDelete, data} = this.props;
34 | return (
35 | | {data.id} |
36 |
37 | {data.label}
38 | |
39 | |
40 | |
41 |
);
42 | }
43 | }
44 |
45 |
--------------------------------------------------------------------------------
/react-v15.5.4-keyed/src/Row.jsx:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | var React = require('react');
4 | var ReactDOM = require('react-dom');
5 |
6 | window.rowsUpdated = 0;
7 | window.rowsMounted = 0;
8 |
9 | export class Row extends React.Component {
10 | constructor(props) {
11 | super(props);
12 | this.onDelete = this.onDelete.bind(this);
13 | this.onClick = this.onClick.bind(this);
14 | }
15 | shouldComponentUpdate(nextProps, nextState) {
16 | return nextProps.data !== this.props.data || nextProps.styleClass !== this.props.styleClass;
17 | }
18 | // componentDidUpdate() {
19 | // window.rowsUpdated++;
20 | // }
21 | // componentDidMount() {
22 | // window.rowsMounted++;
23 | // }
24 |
25 | onDelete() {
26 | this.props.onDelete(this.props.data.id);
27 | }
28 | onClick() {
29 | this.props.onClick(this.props.data.id);
30 | }
31 |
32 | render() {
33 | let {styleClass, onClick, onDelete, data} = this.props;
34 | return (
35 | | {data.id} |
36 |
37 | {data.label}
38 | |
39 | |
40 | |
41 |
);
42 | }
43 | }
44 |
45 |
--------------------------------------------------------------------------------
/react-v15.5.4-non-keyed/src/Row.jsx:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | var React = require('react');
4 | var ReactDOM = require('react-dom');
5 |
6 | window.rowsUpdated = 0;
7 | window.rowsMounted = 0;
8 |
9 | export class Row extends React.Component {
10 | constructor(props) {
11 | super(props);
12 | this.onDelete = this.onDelete.bind(this);
13 | this.onClick = this.onClick.bind(this);
14 | }
15 | shouldComponentUpdate(nextProps, nextState) {
16 | return nextProps.data !== this.props.data || nextProps.styleClass !== this.props.styleClass;
17 | }
18 | // componentDidUpdate() {
19 | // window.rowsUpdated++;
20 | // }
21 | // componentDidMount() {
22 | // window.rowsMounted++;
23 | // }
24 |
25 | onDelete() {
26 | this.props.onDelete(this.props.data.id);
27 | }
28 | onClick() {
29 | this.props.onClick(this.props.data.id);
30 | }
31 |
32 | render() {
33 | let {styleClass, onClick, onDelete, data} = this.props;
34 | return (
35 | | {data.id} |
36 |
37 | {data.label}
38 | |
39 | |
40 | |
41 |
);
42 | }
43 | }
44 |
45 |
--------------------------------------------------------------------------------
/css/bootstrap/less/mixins.less:
--------------------------------------------------------------------------------
1 | // Mixins
2 | // --------------------------------------------------
3 |
4 | // Utilities
5 | @import "mixins/hide-text.less";
6 | @import "mixins/opacity.less";
7 | @import "mixins/image.less";
8 | @import "mixins/labels.less";
9 | @import "mixins/reset-filter.less";
10 | @import "mixins/resize.less";
11 | @import "mixins/responsive-visibility.less";
12 | @import "mixins/size.less";
13 | @import "mixins/tab-focus.less";
14 | @import "mixins/reset-text.less";
15 | @import "mixins/text-emphasis.less";
16 | @import "mixins/text-overflow.less";
17 | @import "mixins/vendor-prefixes.less";
18 |
19 | // Components
20 | @import "mixins/alerts.less";
21 | @import "mixins/buttons.less";
22 | @import "mixins/panels.less";
23 | @import "mixins/pagination.less";
24 | @import "mixins/list-group.less";
25 | @import "mixins/nav-divider.less";
26 | @import "mixins/forms.less";
27 | @import "mixins/progress-bar.less";
28 | @import "mixins/table-row.less";
29 |
30 | // Skins
31 | @import "mixins/background-variant.less";
32 | @import "mixins/border-radius.less";
33 | @import "mixins/gradients.less";
34 |
35 | // Layout
36 | @import "mixins/clearfix.less";
37 | @import "mixins/center-block.less";
38 | @import "mixins/nav-vertical-align.less";
39 | @import "mixins/grid-framework.less";
40 | @import "mixins/grid.less";
41 |
--------------------------------------------------------------------------------
/preact-v7.1.0/src/Row.jsx:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | /** @jsx preact.h */
3 |
4 | var preact = require('preact');
5 | var { render, h, Component } = preact;
6 |
7 | window.rowsUpdated = 0;
8 | window.rowsMounted = 0;
9 |
10 | export class Row extends Component {
11 | constructor(props) {
12 | super(props);
13 | this.onDelete = this.onDelete.bind(this);
14 | this.onClick = this.onClick.bind(this);
15 | }
16 | shouldComponentUpdate(nextProps, nextState) {
17 | return nextProps.data !== this.props.data || nextProps.styleClass !== this.props.styleClass;
18 | }
19 | // componentDidUpdate() {
20 | // window.rowsUpdated++;
21 | // }
22 | // componentDidMount() {
23 | // window.rowsMounted++;
24 | // }
25 |
26 | onDelete() {
27 | this.props.onDelete(this.props.data.id);
28 | }
29 | onClick() {
30 | this.props.onClick(this.props.data.id);
31 | }
32 |
33 | render() {
34 | let {styleClass, onClick, onDelete, data} = this.props;
35 | return (
36 | | {data.id} |
37 |
38 | {data.label}
39 | |
40 | |
41 | |
42 |
);
43 | }
44 | }
45 |
46 |
--------------------------------------------------------------------------------
/aurelia-v1.1.0/.babelrc:
--------------------------------------------------------------------------------
1 | {
2 | "env": {
3 | "webpack": {
4 | "plugins": [
5 | "transform-decorators-legacy",
6 | "transform-class-properties"
7 | ],
8 | "presets": [
9 | [
10 | "env",
11 | {
12 | "targets": {
13 | "browsers": [
14 | "last 2 versions",
15 | "not ie <= 10"
16 | ]
17 | },
18 | "loose": true,
19 | "modules": false
20 | }
21 | ]
22 | ]
23 | },
24 | "e2e": {
25 | "plugins": [
26 | "transform-decorators-legacy",
27 | "transform-class-properties"
28 | ],
29 | "presets": [
30 | [
31 | "env",
32 | {
33 | "targets": {
34 | "browsers": [
35 | "last 2 versions",
36 | "not ie <= 10"
37 | ]
38 | },
39 | "loose": true,
40 | "modules": "commonjs"
41 | }
42 | ]
43 | ]
44 | },
45 | "node": {
46 | "presets": [
47 | [
48 | "env",
49 | {
50 | "targets": {
51 | "node": 4
52 | },
53 | "loose": true,
54 | "modules": "commonjs"
55 | }
56 | ]
57 | ]
58 | }
59 | }
60 | }
61 |
--------------------------------------------------------------------------------
/css/bootstrap/less/labels.less:
--------------------------------------------------------------------------------
1 | //
2 | // Labels
3 | // --------------------------------------------------
4 |
5 | .label {
6 | display: inline;
7 | padding: .2em .6em .3em;
8 | font-size: 75%;
9 | font-weight: bold;
10 | line-height: 1;
11 | color: @label-color;
12 | text-align: center;
13 | white-space: nowrap;
14 | vertical-align: baseline;
15 | border-radius: .25em;
16 |
17 | // Add hover effects, but only for links
18 | a& {
19 | &:hover,
20 | &:focus {
21 | color: @label-link-hover-color;
22 | text-decoration: none;
23 | cursor: pointer;
24 | }
25 | }
26 |
27 | // Empty labels collapse automatically (not available in IE8)
28 | &:empty {
29 | display: none;
30 | }
31 |
32 | // Quick fix for labels in buttons
33 | .btn & {
34 | position: relative;
35 | top: -1px;
36 | }
37 | }
38 |
39 | // Colors
40 | // Contextual variations (linked labels get darker on :hover)
41 |
42 | .label-default {
43 | .label-variant(@label-default-bg);
44 | }
45 |
46 | .label-primary {
47 | .label-variant(@label-primary-bg);
48 | }
49 |
50 | .label-success {
51 | .label-variant(@label-success-bg);
52 | }
53 |
54 | .label-info {
55 | .label-variant(@label-info-bg);
56 | }
57 |
58 | .label-warning {
59 | .label-variant(@label-warning-bg);
60 | }
61 |
62 | .label-danger {
63 | .label-variant(@label-danger-bg);
64 | }
65 |
--------------------------------------------------------------------------------