1.0.1 • Published 1 month ago

particle-commands v1.0.1

Weekly downloads
574
License
Apache-2.0
Repository
github
Last release
1 month ago

Particle Commands

UX-neutral commands for developer tools

Build Status

Installation | Development | Conventions | Docs | Releasing | License

Installation

  1. Install Node.js node@16.x and npm@8.x are required
  2. Clone this repository $ git clone git@github.com:particle-iot/particle-commands.git && cd ./particle-commands
  3. Install dependencies $ npm install
  4. View available commands $ npm run
  5. Run the tests $ npm test
  6. Start Hacking!

Development

All essential commands are available at the root via npm run <script name> - e.g. npm run lint. To view the available commands, run: npm run

to run the tests:

npm test

to run the coverage:

npm run coverage

npm scripts are the primary means of executing programmatic tasks (e.g. tests, linting, releasing, etc) within the repo. to view available scripts, run npm run.

when creating a new script, be sure it does not already exist and use the following naming convention:

<category>:[<subcategory>]:[<action>]

our standard categories include: test, lint, build, clean, docs, package, dependencies, and release. top-level scripts - e.g. npm run clean - will typically run all of its subcategories (e.g. npm run clean:dist && npm run clean:tmp).

npm itself includes special handling for test and start (doc: 1, 2) amongst other lifecycle scripts - use these to expose key testing and start-up commands.

sometimes your new script will be very similar to an existing script. in those cases, try to extend the existing script before adding another one.

Conventions

  • npm scripts form the developer's API for the repo and all of its packages - key orchestration commands should be exposed here
  • document developer-facing process / tooling instructions in the Development section
  • plan to release your changes upon merging to main - refrain from merging if you cannot so you don't leave unpublished changes to others
  • avoid making changes in files unrelated to the work you are doing so you aren't having to publish trivial updates
  • test files live alongside their source files and are named like *.test.js or *.spec.js
  • if the linter does not flag your code (error or warning), it's formatted properly
  • avoid reformatting unflagged code as it can obscure more meaningful changes and increase the chance of merge conflicts
  • todo comments include your last name and are formatted like: TODO (mirande): <message>

Docs & Resources

Releasing

Packages are only released from the main branch after peer review.

  1. make sure you have the latest:
    • $ git checkout main
    • $ git pull
  2. make sure tests pass
    • $ npm test
  3. run the version command
    • $ npm version <major|minor|patch>
    • This command will bump the current version of the library in the package.json file. Before the command finishes, update CHANGELOG.md.
  4. push your tags:
    • $ git push origin main --follow-tags
  5. CircleCI will publish the npm package to the latest tag
  6. Create a release on GitHub with the notes from the CHANGELOG.md
  7. Point your project to the new version npm install particle-commands@latest

License

Copyright © 2016 Particle Industries, Inc. Released under the Apache 2.0 license. See LICENSE for details.

1.0.1

1 month ago

1.0.0

1 month ago

0.5.3

6 months ago

0.5.0

6 months ago

0.5.2

6 months ago

0.5.1

6 months ago

0.4.1-rc.0

7 months ago

0.4.0

2 years ago

0.3.0

6 years ago

0.2.13

6 years ago

0.2.12

7 years ago

0.2.11

7 years ago

0.2.10

7 years ago

0.2.9

7 years ago

0.2.8

7 years ago

0.2.7

7 years ago

0.2.6

7 years ago

0.2.5

7 years ago

0.2.4

7 years ago

0.2.3

7 years ago

0.2.3-rc.1

7 years ago

0.2.2

7 years ago

0.2.1

8 years ago

0.2.0

8 years ago

0.1.6

8 years ago

0.1.5

8 years ago

0.1.4

8 years ago

0.1.3

8 years ago

0.1.2

8 years ago

0.1.1

8 years ago

0.1.0

8 years ago