This project is used by other Box frontend projects. Unless you are a part of another Box project, you should not be
consuming any code from here. It is completely unsupported and can be highly unstable for non-box consumption.
Publishing
This project is published on public npmjs. To push a new release, use yarn release:major
or yarn release:minor
or
yarn release:patch
.
Dependencies
See package.json for dependencies.
Configs
ESLint
Stylelint
Prettier
Commit Linter
Lint Staged Files
To automatically format changed files on commit, add lint-staged
and husky
configuration to package.json:
{
"devDependencies": {
"husky": "^1.1.2",
"lint-staged": "^8.0.4"
},
"husky": {
"hooks": {
"pre-commit": "lint-staged"
}
},
"lint-staged": {
"linters": {
"*.js": ["eslint --max-warnings=0 --report-unused-disable-directives --fix", "git add"],
"*.md": ["prettier --write --parser=markdown", "git add"],
"*.json": ["prettier --write --parser=json", "git add"]
}
}
}
Dotfiles
dotfiles folder contains a few files that can used in your own project. Use them as needed and by renaming
them to have a begining dot.
Shell scripts
shell folder contains a few useful shell scripts. Use them as needed.
i18n
Webpack Plugins
Editor Integration
VSCode
See ./.vscode recommended extensions and settings.
Plugin | Enabled | Autofix |
---|
ESLint | ✔ | 𐄂 |
Prettier | ✔ | ✔ |
Some ESLint rules can interfere with debugging in development, so autofixing ESLint is not recommended. ESLint rules can
be highlighted in your editor and enforced on commit and in CI instead.
Copyright and License
Copyright 2016-present Box, Inc. All Rights Reserved.
Licensed under the Box Software License Agreement v.20170516. You may not use this file except in compliance with the
License. You may obtain a copy of the License at
https://developer.box.com/docs/box-sdk-license
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific
language governing permissions and limitations under the License.