Skip to content
This repository has been archived by the owner on Nov 15, 2017. It is now read-only.

Commit

Permalink
Merged
Browse files Browse the repository at this point in the history
  • Loading branch information
swernerx committed Apr 24, 2017
2 parents ad40add + 52f3f87 commit 9fc3635
Show file tree
Hide file tree
Showing 4 changed files with 192 additions and 136 deletions.
55 changes: 4 additions & 51 deletions about.md
Original file line number Diff line number Diff line change
Expand Up @@ -89,6 +89,8 @@ application development and therefor scales very well when multiple applications
- The functionality is built into [CSS Loader by Webpack](https://github.com/webpack-contrib/css-loader#css-modules) and is enabled in EdgeStack.
- See also: [Benefits over other solutions](https://gist.github.com/DavidWells/9e4436608b834f1d3c0346db3631d774#gistcomment-2053946)

> "CSS frameworks cause problems by unnecessarily constraining our content to fit into a predefined grid. How can a CSS framework know what our content is? It can’t." – https://medium.com/simple-human/stop-using-device-breakpoints-b11a87e2625c
### Autoprefixer ([Project](https://github.com/postcss/autoprefixer))

- Instead of manually managing writing prefixes or relying on custom mixins we are using a data driven approach ([Can I Use Database](http://caniuse.com/)).
Expand Down Expand Up @@ -123,59 +125,10 @@ application development and therefor scales very well when multiple applications

### Readable Code ([Project](https://github.com/sebastian-software/readable-code))

- Uses the tasks and configurations for
- Includes Gulp tasks for linting and auto fixing source code automatically.
- Local configuration is able to override each invididual rule.
- Ov

### Stylelint ([Project](https://github.com/stylelint/stylelint))

- PostCSS-based linter for all CSS dialects. Supports alternative dialects like SugarSS and Sass.

### Stylefmt ([Project](https://github.com/morishitter/stylefmt))

- The counterpart to Stylelint supports auto formatting stylesheets based on the stylelint rules.

### ESLint ([Homepage](eslint.org))

- Effectively a successor of both [JSHint](http://jshint.com/) and [JSCS](http://jscs.info/). Is configured to use the [Babel Parser](https://github.com/babel/babel-eslint) for full ES2017+ support.

#### Quick Linting Overview

- Indent with 2 spaces no tabs
- Double quotes for JS and JSX
- Unix line breaks
- No trailing spaces
- Tend to more spaces and whitespace in your code
- No dashes in file names (should match `^[a-zA-Z][a-zA-Z0-9.]+$`)
- All files have a `.js` extension, no `.jsx`
- No CommonJS - use only ES2015 modules
- Prefer efficient ES2015 language like template strings, spreading, arrow functions, ...
- Keep an eye on code complexity, nesting levels, file length, ...
- Prefer named parameters (destructing) over long parameter lists
- No usage of `labels`, `with`, `eval`, etc.
- No magic numbers. Use variables to describe intention.

#### Activated and Configured ESLint Plugins

- `filenames`: Validation for file names matching some common sense requirements.
- `flowtype`: Support for checking FlowType syntax to match rules.
- `flowtype-errors`: Helps writing correct FlowType declarations.
- `import`: Checks whether imports map to valid entry points.
- `jsx-a11y`: Accessibility checks for JSX tags e.g. requiring `alt` tags on images.
- `lodash`: Lodash specific checks and hints to prefer common features over custom/builtin.
- `no-use-extend-native`: Prevent extending native objects/classes like `Array` or `String`.
- `node`: Prevents usage of deprecated features and other checks when developing NodeJS based apps.
- `promise`: Checks for correctly working with Promises.
- `react`: React specific checks for requiring specific structures of classes + preferring functional patterns.
- `security`: Checks for security issues in e.g. RegExps.

### Prettier ([Project](https://github.com/prettier/prettier))

- Auto formatting engine for JavaScript which intelligently supports limiting line length and other more advanced features.
- Advanced support for language features from ES2017, JSX, and Flow.

### Lint Staged ([Project](https://github.com/okonet/lint-staged))

- Auto linting for all `.css` and `.js` staged files when these are about to being committed to the repository.



Expand Down
18 changes: 9 additions & 9 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -77,7 +77,7 @@
"babel-cli": "^6.24.1",
"babel-core": "^6.24.1",
"babel-jest": "^19.0.0",
"babel-loader": "^6.4.1",
"babel-loader": "^7.0.0",
"babel-plugin-lodash": "^3.2.11",
"babel-plugin-log-deprecated": "^1.1.0",
"babel-plugin-module-resolver": "^2.7.0",
Expand All @@ -89,7 +89,7 @@
"babel-plugin-transform-react-inline-elements": "^6.22.0",
"babel-plugin-transform-react-jsx-self": "^6.22.0",
"babel-plugin-transform-react-jsx-source": "^6.22.0",
"babel-plugin-transform-react-remove-prop-types": "^0.4.0",
"babel-plugin-transform-react-remove-prop-types": "^0.4.1",
"babel-plugin-transform-runtime": "^6.23.0",
"babel-preset-babili": "^0.0.12",
"babel-preset-env": "^1.4.0",
Expand All @@ -100,7 +100,7 @@
"babili-webpack-plugin": "^0.0.11",
"bluebird": "^3.5.0",
"body-parser": "^1.17.1",
"browserslist": "^1.7.7",
"browserslist": "^2.0.0",
"builtin-modules": "^1.1.1",
"case-sensitive-paths-webpack-plugin": "^2.0.0",
"chalk": "^1.1.3",
Expand All @@ -124,7 +124,7 @@
"graphql-tag": "^2.0.0",
"gulp": "^3.9.1",
"gulp-util": "^3.0.8",
"hard-source-webpack-plugin": "^0.3.11",
"hard-source-webpack-plugin": "^0.3.12",
"helmet": "^3.5.0",
"hpp": "^0.2.2",
"html-webpack-plugin": "^2.28.0",
Expand Down Expand Up @@ -176,7 +176,7 @@
"postcss-sassy-mixins": "^2.0.0",
"postcss-selector-matches": "^2.0.5",
"postcss-simple-url": "^0.1.6",
"postcss-smart-import": "^0.6.11",
"postcss-smart-import": "^0.6.12",
"postcss-transform-shortcut": "^2.0.1",
"postcss-unicode-characters": "^1.0.0",
"postcss-will-change": "^1.1.0",
Expand All @@ -185,7 +185,7 @@
"prop-types": "^15.5.8",
"raw-loader": "^0.5.1",
"react": "^15.5.4",
"react-apollo": "^1.0.1",
"react-apollo": "^1.1.0",
"react-dev-utils": "^0.5.2",
"react-dom": "^15.5.4",
"react-helmet": "^5.0.3",
Expand All @@ -195,7 +195,7 @@
"react-router-dom": "^4.1.1",
"react-tap-event-plugin": "^2.0.1",
"react-tree-walker": "2.1.1",
"readable-code": "^1.7.2",
"readable-code": "^2.0.0",
"redux": "^3.6.0",
"redux-immutable-state-invariant": "^2.0.0",
"redux-logger": "^3.0.1",
Expand All @@ -210,7 +210,7 @@
"walker": "^1.0.7",
"webpack": "^2.4.1",
"webpack-bundle-analyzer": "^2.4.0",
"webpack-dev-middleware": "^1.10.1",
"webpack-dev-middleware": "^1.10.2",
"webpack-hot-middleware": "^2.18.0",
"webpack-sources": "^0.2.3",
"yaml-loader": "^0.4.0"
Expand All @@ -219,7 +219,7 @@
"eslint": "^3.19.0",
"lint-staged": "^3.4.0",
"pre-commit": "^1.2.2",
"prepublish": "^0.15.4",
"prepublish": "^0.16.0",
"rollup": "^0.41.6",
"rollup-plugin-executable": "^1.0.0",
"sanitize.css": "^5.0.0",
Expand Down
5 changes: 4 additions & 1 deletion readme.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,6 @@

A Universal React Stack with deeply integrated localization Support, semi-automatic route-based code splitting, Hot Module Reloading (HMR), Redux, Apollo GraphQL and more...


## TOC

- [About](https://github.com/sebastian-software/edgestack#about)
Expand All @@ -25,6 +24,10 @@ A Universal React Stack with deeply integrated localization Support, semi-automa
- [NPM Commands](https://github.com/sebastian-software/edgestack#npm-script-commands)
- [References](https://github.com/sebastian-software/edgestack#references)

## Checks

- [![FOSSA Status](https://app.fossa.io/api/projects/git%2Bhttps%3A%2F%2Fgithub.com%2Fsebastian-software%2Fedgestack.svg?type=shield)](https://app.fossa.io/projects/git%2Bhttps%3A%2F%2Fgithub.com%2Fsebastian-software%2Fedgestack?ref=badge_shield)
- [![bitHound Overall Score](https://www.bithound.io/github/sebastian-software/edgestack/badges/score.svg)](https://www.bithound.io/github/sebastian-software/edgestack)

## Key Benefits

Expand Down
Loading

0 comments on commit 9fc3635

Please sign in to comment.