Files we use when scaffolding new projects.
Use boundation for automatic application.
Setup your new project:
npm init
touch README.mdDownload the relevant files for your project:
- If you have wget, replace
downwithwget -N- If you have curl, replace
downwithcurl -OL
down https://raw.githubusercontent.com/bevry/base/master/.editorconfig
down https://raw.githubusercontent.com/bevry/base/master/.eslintrc.js
down https://raw.githubusercontent.com/bevry/base/master/.gitignore
down https://raw.githubusercontent.com/bevry/base/master/LICENSE.md
down https://raw.githubusercontent.com/bevry/base/master/.npmignore
down https://raw.githubusercontent.com/bevry/base/master/CONTRIBUTING.md
down https://raw.githubusercontent.com/bevry/base/master/index.js
down https://raw.githubusercontent.com/bevry/base/master/test.js
down https://raw.githubusercontent.com/bevry/base/master/.flowconfig
down https://raw.githubusercontent.com/bevry/base/master/.travis.yml
down https://raw.githubusercontent.com/bevry/base/master/package.json
down https://raw.githubusercontent.com/bevry/base/master/HISTORY.mdAnd add them to git:
git add .editorconfig .eslintrc.js .gitignore .flowconfig .npmignore .travis.yml
git add .
mkdir source
touch source/index.js
touch source/test.js
touch source/bin.jsUse the following inside your README.md file to have projectz generate most of it for you, leaving you up the "Usage" section.
<!-- TITLE -->
<!-- BADGES -->
<!-- DESCRIPTION -->
<!-- INSTALL -->
## Usage
<!-- HISTORY -->
<!-- CONTRIBUTE -->
<!-- BACKERS -->
<!-- LICENSE -->Add the appropriate development dependencies for what you want to do:
- If you have yarn, replace
nidwithyarn add --devandniwithyarn add- If you have npm, replace
nidwithnpm install --save-devandniwithnpm install --save
# Meta Compilation
nid projectz
# Linting
nid eslint
# Babel Compilation
nid babel-cli babel-preset-es2015
# Edition Autoloading
ni editions
# Testing
nid assert-helpers joe joe-reporter-console
# Documentation
nid documentation
# Flow Type
nid flow-bin
# Babel Experimental Feature Linting
nid eslint-plugin-babel
# React Linting
nid eslint-plugin-reactCopy over the relevant parts from our package.json template.
Full set of available customisations and their documentations is available over at balupton/awesome-travis.
# https://github.com/balupton/awesome-travis/blob/master/README.md#release-to-npm
npm owner add $NPM_USERNAME
travis env set NPM_USERNAME "$NPM_USERNAME" --public --no-interactive
travis env set NPM_PASSWORD "$NPM_PASSWORD" --no-interactive
travis env set NPM_EMAIL "$NPM_EMAIL" --no-interactive
# https://github.com/balupton/awesome-travis#release-to-surge
travis env set SURGE_LOGIN "$SURGE_LOGIN" --public --no-interactive
travis env set SURGE_TOKEN "$SURGE_TOKEN" --no-interactive
# github client details for rate limits
travis env set GITHUB_CLIENT_ID "$GITHUB_CLIENT_ID" --no-interactive
travis env set GITHUB_CLIENT_SECRET "$GITHUB_CLIENT_SECRET" --no-interactive
# https://github.com/balupton/awesome-travis/blob/master/README.md#slack
# https://github.com/balupton/awesome-travis/blob/master/README.md#email
travis encrypt "$SLACK_SUBDOMAIN:$SLACK_TRAVIS_TOKEN#updates" --add notifications.slack --no-interactive
travis encrypt "$TRAVIS_NOTIFICATION_EMAIL" --add notifications.email.recipients --no-interactiveCoffeeScript scripts:
{
"scripts": {
"our:verify:coffeelint": "coffeelint ./source",
"our:compile:coffeescript": "coffee -bco ./es5 ./source",
"our:meta:yuidoc": "yuidoc -o ./docs --syntaxtype coffee -e .coffee ./source",
"our:meta:biscotto": "biscotto -n $npm_package_title --title \"$npm_package_title API Documentation\" -r README.md -o ./docs ./source - ./LICENSE.md ./HISTORY.md"
}
}down https://raw.githubusercontent.com/bevry/base/34fc820c8d87f1f21706ce7e26882b6cd5437368/esnextguardian.jsDropped in favour of Editions.
down https://raw.githubusercontent.com/bevry/base/34fc820c8d87f1f21706ce7e26882b6cd5437368/nakefile.jsDropped in favour of NPM Scripts.
down https://raw.githubusercontent.com/bevry/base/22bbd5999c420c4058fd54becb9b1cd3cd1d70dd/CakefileDropped in favour of NPM Scripts.
down https://raw.githubusercontent.com/bevry/base/34fc820c8d87f1f21706ce7e26882b6cd5437368/coffeelint.jsonDropped in favour of ESNext.
down https://raw.githubusercontent.com/bevry/base/34fc820c8d87f1f21706ce7e26882b6cd5437368/cyclic.jsDropped in favour of npm >=2.
down https://raw.githubusercontent.com/bevry/base/b1335ea16811d2870dbde87c3a1a606797db54a0/.jshintrcDropped in favour of ESLint.
down https://raw.githubusercontent.com/bevry/base/34fc820c8d87f1f21706ce7e26882b6cd5437368/.jscrcDropped in favour of ESLint.
View the commit history for the release history.
Licensed under the Creative Commons Zero making it public domain so you can do whatever you wish with it without worry (you can even remove this notice!)
Copyright © 2011+ Benjamin Lupton