Skip to content

Commit bc82c0b

Browse files
committed
readme & contrib guide [ci skip]
1 parent 3b99cd3 commit bc82c0b

File tree

2 files changed

+86
-29
lines changed

2 files changed

+86
-29
lines changed

CONTRIBUTING.md

Lines changed: 73 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,73 @@
1+
# Vue.js Contributing Guide
2+
3+
Hi! I'm really excited that you are interested in contributing to Vue.js. Before submitting a pull request though, please make sure to take a moment and read through the following guidelines.
4+
5+
## Pull Request Checklist
6+
7+
- Work in a topic branch and merge against `dev`.
8+
- Squash the commit if there are too many small ones.
9+
- Follow the [code style](#code-style).
10+
- Make sure the default grunt task passes. (see [development setup](#development-setup))
11+
- If adding new feature:
12+
- Add accompanying test case.
13+
- Provide convincing reason to add this feature. Ideally you should open a suggestion issue first and have it greenlighted before working on it.
14+
- If fixing a bug:
15+
- Provide detailed description of the bug in the PR. Live demo preferred.
16+
- Add appropriate test coverage if applicable.
17+
18+
## Code Style
19+
20+
- [No semicolons unless necessary](http://inimino.org/~inimino/blog/javascript_semicolons).
21+
- 4 spaces indentation.
22+
- Single var definition, align equal signs where possible.
23+
- Return early in one line if possible.
24+
- When in doubt, read the source code.
25+
- Break long ternary conditionals:
26+
27+
``` js
28+
var a = superLongConditionalStatement
29+
? 'yep'
30+
: 'nope'
31+
```
32+
33+
## Development Setup
34+
35+
You will need [Node](http://nodejs.org), [Grunt](http://gruntjs.com), [Component](https://github.com/component/component), [PhantomJS](http://phantomjs.org) and [CasperJS](http://casperjs.org).
36+
37+
``` bash
38+
# in case you don't already have them:
39+
# npm install -g grunt-cli component
40+
$ npm install && component install
41+
```
42+
43+
To watch and auto-build `dist/vue.js` during development:
44+
45+
``` bash
46+
$ grunt watch
47+
```
48+
49+
To lint:
50+
51+
``` bash
52+
grunt jshint
53+
```
54+
55+
To build:
56+
57+
``` bash
58+
$ grunt build
59+
```
60+
61+
To test:
62+
63+
``` bash
64+
# if you don't have these yet:
65+
# npm install -g phantomjs casperjs
66+
$ grunt test
67+
```
68+
69+
The unit tests are written with Mocha + Chai and run with Karma. The functional tests are written and run with CasperJS.
70+
71+
**If you are not using a Mac**
72+
73+
You can modify the Gruntfile to only run Karma tests in browsers that are available on your system. Just make sure don't check in the Gruntfile for the commit.

README.md

Lines changed: 13 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -2,48 +2,32 @@
22

33
# Vue.js [![Build Status](https://travis-ci.org/yyx990803/vue.png?branch=master)](https://travis-ci.org/yyx990803/vue) [![Selenium Test Status](https://saucelabs.com/buildstatus/vuejs)](https://saucelabs.com/u/vuejs) [![Coverage Status](https://coveralls.io/repos/yyx990803/vue/badge.png)](https://coveralls.io/r/yyx990803/vue)
44

5-
> Simple, Fast & Composable MVVM for building interative interfaces.
5+
> MVVM made simple.
66
77
## Introduction
88

9-
Vue.js is a library that aims to simplify the development of interactive interfaces.
9+
Vue.js is a library for building interactive web interfaces. It provides the benefits of MVVM data binding with a simple and flexible API. You should try it out if you like:
1010

11-
It provides the **ViewModel** layer of the MVVM pattern, which connects the **View** (the actual HTML that the user sees) and the **Model** (JSON-compliant plain JavaScript objects) via two-way data bindings. Actuall DOM manipulations and output formatting are abstracted away into **Directives** and **Filters**.
11+
- Extendable Data bindings
12+
- Plain JavaScript objects as models
13+
- Intuitive API that simply makes sense
14+
- The flexibility to mix & match small libraries for a custom front-end stack
1215

13-
For more details, guides and documentations, visit [vuejs.org](http://vuejs.org).
16+
For more details, guides and API reference, visit [vuejs.org](http://vuejs.org).
1417

1518
## Browser Support
1619

1720
Vue.js supports [most ECMAScript 5 compliant browsers](https://saucelabs.com/u/vuejs), essentially IE9+. IE9 needs [classList polyfill](https://github.com/remy/polyfills/blob/master/classList.js) and doesn't support transitions.
1821

19-
## Development
22+
## Contribution
2023

21-
``` bash
22-
# in case you don't already have them:
23-
# npm install -g grunt-cli component
24-
$ npm install
25-
$ component install
26-
```
24+
Read the [contributing guide](https://github.com/yyx990803/vue/blob/master/README.md).
2725

28-
To build:
26+
## Get in Touch
2927

30-
``` bash
31-
$ grunt build
32-
```
33-
34-
To watch and auto-build dev version during development:
35-
36-
``` bash
37-
$ grunt watch
38-
```
39-
40-
To test:
41-
42-
``` bash
43-
# if you don't have these yet:
44-
# npm install -g phantomjs casperjs
45-
$ grunt test
46-
```
28+
- Bugs, suggestions & feature requests: [open an issue](https://github.com/yyx990803/vue/issues)
29+
- Twitter: [@vuejs](https://twitter.com/vuejs)
30+
- freenode IRC Channel: #vuejs
4731

4832
## License
4933

0 commit comments

Comments
 (0)