Merge pull request #434 from nhubbard/develop

Clean Up the Contributing Documentation and Process: An Opera, Reincarnated
This commit is contained in:
Michael Teeuw 2016-09-09 08:56:34 +02:00 committed by GitHub
commit 41fc7dd73d
9 changed files with 106 additions and 128 deletions

View File

@ -5,55 +5,45 @@ Thanks for contributing to MagicMirror²!
We hold our code to standard, and these standards are documented below. We hold our code to standard, and these standards are documented below.
First, before you run the linters, you will need to install them all **and** install the development dependencies: If you wish to run both linters, use `grunt` without any arguments.
```bash ### JavaScript: Run ESLint
(sudo) npm install -g jscs stylelint html-validator-cli
npm install
```
### JavaScript: Run JSCS We use [ESLint](http://eslint.org) on our JavaScript files.
We use [JSCS](http://jscs.info) on our JavaScript files. Our ESLint configuration is in our .eslintrc.json and .eslintignore files.
Our JSCS configuration is in our .jscsrc file. To run ESLint, use `grunt eslint`.
To run JSCS, use `npm run jscs`.
### CSS: Run StyleLint ### CSS: Run StyleLint
We use [StyleLint](http://stylelint.io) to lint our CSS. Our configuration is in our .stylelintrc file. We use [StyleLint](http://stylelint.io) to lint our CSS. Our configuration is in our .stylelintrc file.
To run StyleLint, use `npm run stylelint`. To run StyleLint, use `grunt stylelint`.
### HTML: Run HTML Validator ### Submitting Issues
We use [NU Validator](https://validator.w3.org/nu) to validate our HTML. The configuration is in the command in the package.json file.
To run HTML Validator, use `npm run htmlvalidator`.
## Submitting Issues
Please only submit reproducible issues. Please only submit reproducible issues.
If you're not sure if it's a real bug or if it's just you, please open a topic on the forum: https://forum.magicmirror.builders/category/15/bug-hunt - Problems installing or configuring your MagicMirror? Check out: https://forum.magicmirror.builders/category/10/troubleshooting If you're not sure if it's a real bug or if it's just you, please open a topic on the forum: [https://forum.magicmirror.builders/category/15/bug-hunt](https://forum.magicmirror.builders/category/15/bug-hunt)
Problems installing or configuring your MagicMirror? Check out: [https://forum.magicmirror.builders/category/10/troubleshooting](https://forum.magicmirror.builders/category/10/troubleshooting)
When submitting a new issue, please supply the following information: When submitting a new issue, please supply the following information:
**Platform** [ Raspberry Pi 2/3, Windows, Mac OS X, Linux, Etc ... ]: **Platform**: Place your platform here... give us your web browser/Electron version *and* your hardware (Raspberry Pi 2/3, Windows, Mac, Linux, System V UNIX).
**Node Version** [ 0.12.13 or later ]: **Node Version**: Make sure it's version 0.12.13 or later.
**MagicMirror Version** [ V1 / V2-Beta ]: **MagicMirror Version**: Now that the versions have split, tell us if you are using the PHP version (v1) or the newer JavaScript version (v2).
**Description:** Provide a detailed description about the issue and include specific details to help us understand the problem. Adding screenshots will help describing the problem. **Description**: Provide a detailed description about the issue and include specific details to help us understand the problem. Adding screenshots will help describing the problem.
**Steps to Reproduce:** List the step by step process to reproduce the issue. **Steps to Reproduce**: List the step by step process to reproduce the issue.
**Expected Results:** Describe what you expected to see. **Expected Results**: Describe what you expected to see.
**Actual Results:** Describe what you actually saw. **Actual Results**: Describe what you actually saw.
**Configuration:** What does the used config.js file look like? (Don't forget to remove any sensitive information.) **Configuration**: What does the used config.js file look like? Don't forget to remove any sensitive information!
**Additional Notes:** Provide any other relevant notes not previously mentioned (optional) **Additional Notes**: Provide any other relevant notes not previously mentioned. This is optional.

View File

@ -1,21 +1,24 @@
Please only submit reproducible issues. Please only submit reproducible issues.
If you're not sure if it's a real bug or if it's just you, please open a topic on the forum: https://forum.magicmirror.builders/category/15/bug-hunt - Problems installing or configuring your MagicMirror? Check out: https://forum.magicmirror.builders/category/10/troubleshooting If you're not sure if it's a real bug or if it's just you, please open a topic on the forum: [https://forum.magicmirror.builders/category/15/bug-hunt](https://forum.magicmirror.builders/category/15/bug-hunt)
Problems installing or configuring your MagicMirror? Check out: [https://forum.magicmirror.builders/category/10/troubleshooting](https://forum.magicmirror.builders/category/10/troubleshooting)
**Platform** [ Raspberry Pi 2/3, Windows, Mac OS X, Linux, Etc ... ]: When submitting a new issue, please supply the following information:
**Node Version** [ 0.12.13 or later ]: **Platform**: Place your platform here... give us your web browser/Electron version *and* your hardware (Raspberry Pi 2/3, Windows, Mac, Linux, System V UNIX).
**MagicMirror Version** [ V1 / V2-Beta ]: **Node Version**: Make sure it's version 0.12.13 or later.
**Description:** Provide a detailed description about the issue and include specific details to help us understand the problem. Adding screenshots will help describing the problem. **MagicMirror Version**: Now that the versions have split, tell us if you are using the PHP version (v1) or the newer JavaScript version (v2).
**Steps to Reproduce:** List the step by step process to reproduce the issue. **Description**: Provide a detailed description about the issue and include specific details to help us understand the problem. Adding screenshots will help describing the problem.
**Expected Results:** Describe what you expected to see. **Steps to Reproduce**: List the step by step process to reproduce the issue.
**Actual Results:** Describe what you actually saw. **Expected Results**: Describe what you expected to see.
**Configuration:** What does the used config.js file look like? (Don't forget to remove any sensitive information.) **Actual Results**: Describe what you actually saw.
**Additional Notes:** Provide any other relevant notes not previously mentioned (optional) **Configuration**: What does the used config.js file look like? Don't forget to remove any sensitive information!
**Additional Notes**: Provide any other relevant notes not previously mentioned. This is optional.

View File

@ -1,9 +1,7 @@
> Please send your PR's the develop branch. > Please send your pull requests the develop branch.
> Don't forget to add the change to changelog.md. > Don't forget to add the change to CHANGELOG.md.
* Does the pull request solve a **related** issue? [yes | no] * Does the pull request solve a **related** issue?
* If so, can you reference the issue? * If so, can you reference the issue?
* What does the pull request accomplish? (please list) * What does the pull request accomplish? Use a list if needed.
* If it includes major visual changes please add screenshots. * If it includes major visual changes please add screenshots.

View File

@ -1,4 +1,5 @@
{ {
"extends": "stylelint-config-standard", "extends": "stylelint-config-standard",
"font-family-name-quotes": "double-where-recommended" "font-family-name-quotes": "double-where-recommended",
"block-no-empty": false
} }

View File

@ -17,6 +17,8 @@ This project adheres to [Semantic Versioning](http://semver.org/).
### Updated ### Updated
- Force fullscreen when kioskmode is active. - Force fullscreen when kioskmode is active.
- Update the .github templates and information with more modern information.
- Update the Gruntfile with a more functional StyleLint implementation.
## [2.0.4] - 2016-08-07 ## [2.0.4] - 2016-08-07

View File

@ -8,21 +8,16 @@ module.exports = function(grunt) {
}, },
target: ["js/*.js", "modules/default/*.js", "serveronly/*.js", "*.js"] target: ["js/*.js", "modules/default/*.js", "serveronly/*.js", "*.js"]
}, },
postcss: { stylelint: {
lint: { simple: {
options: { options: {
processors: [ configFile: ".stylelintrc"
require("stylelint")({"extends": "stylelint-config-standard", "font-family-name-quotes": "double-where-recommended"}),
require("postcss-reporter")({ clearMessages: true })
]
}, },
dist: { src: ["css/main.css", "modules/default/calendar/calendar.css", "modules/default/clock/clock_styles.css", "modules/default/currentweather/currentweather.css", "modules/default/weatherforcast/weatherforcast.css"]
src: "**/**/**/**/**/**/**/**.css"
}
} }
} }
}); });
grunt.loadNpmTasks("grunt-eslint"); grunt.loadNpmTasks("grunt-eslint");
grunt.loadNpmTasks("grunt-postcss"); grunt.loadNpmTasks("grunt-stylelint");
grunt.registerTask("default", ["eslint", "postcss:lint"]); grunt.registerTask("default", ["eslint", "stylelint"]);
}; };

View File

@ -1,9 +1,3 @@
#analog {
}
#digital {
}
.clockCircle { .clockCircle {
margin: 0 auto; margin: 0 auto;
position: relative; position: relative;
@ -16,7 +10,7 @@
height: 100%; height: 100%;
} }
.clockFace:after { .clockFace::after {
position: absolute; position: absolute;
top: 50%; top: 50%;
left: 50%; left: 50%;
@ -67,7 +61,7 @@
left: 50%; left: 50%;
margin: -38% -1px 0 0; /* numbers must match negative length & thickness */ margin: -38% -1px 0 0; /* numbers must match negative length & thickness */
padding: 38% 1px 0 0; /* indicator length & thickness */ padding: 38% 1px 0 0; /* indicator length & thickness */
background: #888888; background: #888;
-webkit-transform-origin: 50% 100%; -webkit-transform-origin: 50% 100%;
-ms-transform-origin: 50% 100%; -ms-transform-origin: 50% 100%;
transform-origin: 50% 100%; transform-origin: 50% 100%;

View File

@ -5,9 +5,6 @@
"main": "js/electron.js", "main": "js/electron.js",
"scripts": { "scripts": {
"start": "electron js/electron.js", "start": "electron js/electron.js",
"jscs": "jscs **/**/**/**/*.js",
"stylelint": "stylelint css/main.css fonts/roboto.css",
"htmlvalidator": "html-validator --file=index.html",
"test": "snyk test", "test": "snyk test",
"snyk-protect": "snyk protect", "snyk-protect": "snyk protect",
"prepublish": "npm run snyk-protect" "prepublish": "npm run snyk-protect"
@ -33,11 +30,9 @@
"electron-prebuilt": "latest", "electron-prebuilt": "latest",
"grunt": "latest", "grunt": "latest",
"grunt-eslint": "latest", "grunt-eslint": "latest",
"grunt-postcss": "latest",
"postcss-reporter": "latest",
"stylelint": "latest",
"stylelint-config-standard": "latest", "stylelint-config-standard": "latest",
"time-grunt": "latest" "time-grunt": "latest",
"grunt-stylelint": "latest"
}, },
"dependencies": { "dependencies": {
"express": "^4.14.0", "express": "^4.14.0",