@shelve/cli
TypeScript icon, indicating that this package has built-in type declarations

2.2.0 • Public • Published

Shelve CLI

npm version npm downloads

The Shelve CLI serves as a command-line interface designed for the Shelve platform. This tool enables users to authenticate with Shelve, facilitating the seamless transfer of environment variables for project collaboration within a team directly through the terminal interface.

Installation

Install the package globally:

npm install -g @shelve/cli

Configuration

Configuration is loaded by unjs/c12 from cwd. You can use either shelve.config.json, shelve.config.{ts,js,mjs,cjs} or use the shelve field in package.json. You have the option to create a shelve.config.ts file to enable type checking and autocompletion. The file should contain the following content:

import { createShelveConfig } from "@shelve/cli"

export default createShelveConfig({
  project: "my-project", // only required field
  token: "my-token",
  url: "https://shelve.hrcd.fr",
  confirmChanges: false,
  pushMethod: 'overwrite',
  pullMethod: 'overwrite',
  envFileName: '.env',
})

The CLI also has a json schema for the configuration file. that can be used to validate the configuration file. (see it here)

Usage

Usage: shelve [options] [command]

The command-line interface for Shelve

Options:
  -V, --version       output the version number
  -h, --help          display help for command

Commands:
  create|c [options]  Create a new project
  pull|pl [options]   Pull variables for specified environment to .env file
  push|ps [options]   Push variables for specified environment to Shelve
  generate|g          Generate resources for a project
  config|cf           Show the current configuration
  help [command]      display help for command
Local development
  • Clone this repository
  • Install latest LTS version of Node.js
  • Enable Corepack using corepack enable
  • Install dependencies using bun install

Contributing

To start contributing, you can follow these steps:

  1. First raise an issue to discuss the changes you would like to make.
  2. Fork the repository.
  3. Create a branch using conventional commits and the issue number as the branch name. For example, feat/123 or fix/456.
  4. Make changes following the local development steps.
  5. Commit your changes following the Conventional Commits specification.
  6. If your changes affect the code, run tests using bun run test.
  7. Create a pull request following the Pull Request Template.
    • To be merged, the pull request must pass the tests/workflow and have at least one approval.
    • If your changes affect the documentation, make sure to update it.
    • If your changes affect the code, make sure to update the tests.
  8. Wait for the maintainers to review your pull request.
  9. Once approved, the pull request will be merged in the next release !

Published under the APACHE license. Made by @HugoRCD and community 💛


🤖 auto updated with automd (last updated: Fri Sep 13 2024)

Readme

Keywords

none

Package Sidebar

Install

npm i @shelve/cli

Weekly Downloads

288

Version

2.2.0

License

Apache-2.0

Unpacked Size

30.8 kB

Total Files

6

Last publish

Collaborators

  • hugo_rcd