Awesome
<!-- TITLE/ -->boundation
<!-- /TITLE --> <!-- BADGES/ --><span class="badge-githubworkflow"><a href="https://github.com/bevry/boundation/actions?query=workflow%3Abevry" title="View the status of this project's GitHub Workflow: bevry"><img src="https://github.com/bevry/boundation/workflows/bevry/badge.svg" alt="Status of the GitHub Workflow: bevry" /></a></span> <span class="badge-npmversion"><a href="https://npmjs.org/package/boundation" title="View this project on NPM"><img src="https://img.shields.io/npm/v/boundation.svg" alt="NPM version" /></a></span> <span class="badge-npmdownloads"><a href="https://npmjs.org/package/boundation" title="View this project on NPM"><img src="https://img.shields.io/npm/dm/boundation.svg" alt="NPM downloads" /></a></span> <br class="badge-separator" /> <span class="badge-githubsponsors"><a href="https://github.com/sponsors/balupton" title="Donate to this project using GitHub Sponsors"><img src="https://img.shields.io/badge/github-donate-yellow.svg" alt="GitHub Sponsors donate button" /></a></span> <span class="badge-thanksdev"><a href="https://thanks.dev/u/gh/bevry" title="Donate to this project using ThanksDev"><img src="https://img.shields.io/badge/thanksdev-donate-yellow.svg" alt="ThanksDev donate button" /></a></span> <span class="badge-liberapay"><a href="https://liberapay.com/bevry" title="Donate to this project using Liberapay"><img src="https://img.shields.io/badge/liberapay-donate-yellow.svg" alt="Liberapay donate button" /></a></span> <span class="badge-buymeacoffee"><a href="https://buymeacoffee.com/balupton" title="Donate to this project using Buy Me A Coffee"><img src="https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg" alt="Buy Me A Coffee donate button" /></a></span> <span class="badge-opencollective"><a href="https://opencollective.com/bevry" title="Donate to this project using Open Collective"><img src="https://img.shields.io/badge/open%20collective-donate-yellow.svg" alt="Open Collective donate button" /></a></span> <span class="badge-crypto"><a href="https://bevry.me/crypto" title="Donate to this project using Cryptocurrency"><img src="https://img.shields.io/badge/crypto-donate-yellow.svg" alt="crypto donate button" /></a></span> <span class="badge-paypal"><a href="https://bevry.me/paypal" title="Donate to this project using Paypal"><img src="https://img.shields.io/badge/paypal-donate-yellow.svg" alt="PayPal donate button" /></a></span> <br class="badge-separator" /> <span class="badge-discord"><a href="https://discord.gg/nQuXddV7VP" title="Join this project's community on Discord"><img src="https://img.shields.io/discord/1147436445783560193?logo=discord&label=discord" alt="Discord server badge" /></a></span> <span class="badge-twitch"><a href="https://www.twitch.tv/balupton" title="Join this project's community on Twitch"><img src="https://img.shields.io/twitch/status/balupton?logo=twitch" alt="Twitch community badge" /></a></span>
<!-- /BADGES --> <!-- DESCRIPTION/ -->Automatic scaffolding and upgrading of your JavaScript ecosystem projects using Bevry's best practices
<!-- /DESCRIPTION -->Usage
Install the package globally on Node.js v12 or higher using npm install --global boundation
then run boundation
on your project or in an empty directory.
It will ask you several questions about your project, then initialise or upgrade the project with the latest Bevry best-practices.
Features
- Supports JavaScript, TypeScript, CoffeeScript, and Website projects
- Automatic Editions setup and upgrades for automatic selection of the best edition for the environment, allowing you to develop for the latest environment with the latest technology, then automatically test on and support older environments
- Automated edition generation so the one package can be used between Node.js, Web Browsers, and Deno where applicable
- Automated ES6 Import and CJS Require compatibility generation
- Automated compatible editions generated for Web Browsers, Node.js, Deno
- Each generated edition is targeted specifically for each version of each target that you intend to support, with each edition compatibility tested by Testen and trimmed if redundant overlaps are present
- Uses Projectz to automatically generate and maintain your readme, license, badges, and the contributing file
- Automatically configures sensible defaults based on the features that your project is using, while maintaining support for your extensions and customisations, supports
- TSConfig for JavaScript and TypeScript projects
- ESLint for JavaScript and TypeScript projects
- Flow for JavaScript projects
- CoffeeLint for CoffeeSCript projects
- Zeit's Now and Next.js
- DocPad Plugins
- Automatically gives you documentation generation and publishing for the following:
- TypeDoc for TypeScript projects
- JSDoc for JavaScript projects
- YUIDoc for new CoffeeScript projects, and Biscotto for older projects
- Automated GitHub Actions setup and configuration for a variety of projects
- Automated package dependency upgrades and migrations to compatible versions
- Powerful NPM Scripts
npm run our:setup
for setting up the project for development- automatic addition of your
my:setup:*
scripts
- automatic addition of your
npm run our:compile
for compiling the project- automatic addition of your
my:compile:*
scripts
- automatic addition of your
npm run our:deploy
for linting- automatic addition of your
my:deploy:*
scripts
- automatic addition of your
npm run our:meta
for compiling the meta files- automatic addition of your
my:meta:*
scripts
- automatic addition of your
npm run our:verify
for linting and tests- automatic addition of your
my:verify:*
scripts
- automatic addition of your
npm run our:release
for for releasing your project- on code projects, it will run verify, check for uncommitted changes, a changelog entry, performing the git tag automatically, and the git push
- on website projects, it will run verify and git push
- automatic addition of your
my:release:*
scripts
Install
npm
Install Globally
- Install:
npm install --global boundation
- Executable:
boundation
Install Locally
- Install:
npm install --save boundation
- Executable:
npx boundation
- Import:
import pkg from ('boundation')
- Require:
const pkg = require('boundation').default
Editions
This package is published with the following editions:
boundation
aliasesboundation/source/index.js
boundation/source/index.js
is ESNext source code for Node.js 18 || 20 || 21 with Import for modules
History
Discover the release history by heading on over to the HISTORY.md
file.
Backers
Code
Discover how to contribute via the CONTRIBUTING.md
file.
Authors
- Benjamin Lupton — Accelerating collaborative wisdom.
Maintainers
- Benjamin Lupton — Accelerating collaborative wisdom.
Contributors
Finances
<span class="badge-githubsponsors"><a href="https://github.com/sponsors/balupton" title="Donate to this project using GitHub Sponsors"><img src="https://img.shields.io/badge/github-donate-yellow.svg" alt="GitHub Sponsors donate button" /></a></span> <span class="badge-thanksdev"><a href="https://thanks.dev/u/gh/bevry" title="Donate to this project using ThanksDev"><img src="https://img.shields.io/badge/thanksdev-donate-yellow.svg" alt="ThanksDev donate button" /></a></span> <span class="badge-liberapay"><a href="https://liberapay.com/bevry" title="Donate to this project using Liberapay"><img src="https://img.shields.io/badge/liberapay-donate-yellow.svg" alt="Liberapay donate button" /></a></span> <span class="badge-buymeacoffee"><a href="https://buymeacoffee.com/balupton" title="Donate to this project using Buy Me A Coffee"><img src="https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg" alt="Buy Me A Coffee donate button" /></a></span> <span class="badge-opencollective"><a href="https://opencollective.com/bevry" title="Donate to this project using Open Collective"><img src="https://img.shields.io/badge/open%20collective-donate-yellow.svg" alt="Open Collective donate button" /></a></span> <span class="badge-crypto"><a href="https://bevry.me/crypto" title="Donate to this project using Cryptocurrency"><img src="https://img.shields.io/badge/crypto-donate-yellow.svg" alt="crypto donate button" /></a></span> <span class="badge-paypal"><a href="https://bevry.me/paypal" title="Donate to this project using Paypal"><img src="https://img.shields.io/badge/paypal-donate-yellow.svg" alt="PayPal donate button" /></a></span>
Sponsors
- Andrew Nesbitt — Software engineer and researcher
- Balsa — We're Balsa, and we're building tools for builders.
- Codecov — Empower developers with tools to improve code quality and testing.
- Frontend Masters — The training platform for web app engineering skills – from front-end to full-stack! 🚀
- Mr. Henry
- Poonacha Medappa
- Rob Morris
- Sentry — Real-time crash reporting for your web apps, mobile apps, and games.
- Syntax — Syntax Podcast
Donors
- Andrew Nesbitt
- Ángel González
- Armen Mkrtchian
- Balsa
- Chad
- Codecov
- dr.dimitru
- Elliott Ditman
- entroniq
- Frontend Masters
- GitHub
- Hunter Beast
- Jean-Luc Geering
- Lee Driscoll
- Michael Duane Mooring
- Michael Harry Scepaniak
- Mohammed Shah
- Mr. Henry
- Nermal
- Pleo
- Poonacha Medappa
- Robert de Forest
- Rob Morris
- Scott Kempson
- Sentry
- ServieJS
- Skunk Team
- Syntax
- WriterJohnBuck
License
Unless stated otherwise all works are:
- Copyright © Benjamin Lupton
and licensed under:
<!-- /LICENSE -->