twilio / twilio/twilio-cli

Request: follow XDG Base Directory specification for stored config

Open
#205 5 comments 5 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

difficulty: easy priority: low status: help wanted triage queue type: community enhancement
Dominant language
JavaScript
Stars
193
Forks
114
Avg merge
2d 2h
Merged PRs (30d)
7

Description

In https://github.com/twilio/twilio-cli/pull/37, config was moved to .twilio-cli/config.json, however, this is less than idiomatic as many developers strongly prefer not to clutter up the user directory with custom confirmation files or folders.

Instead, I'd like to recommend that we follow the XDG Base Directory specification, which provides sensible defaults for the config directory to use, but also allows users to override with environment variables.

If we decide to implement this, I think it can be done in a backwards compatible way. Also, FWIW I created this library for this purpose (on other projects), but I won't be offended in the least if you wanted to use something different.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Read the linked pull request #37 and trace where the CLI currently stores configuration under .twilio-cli/config.json. Check how XDG config-directory environment variables and defaults should be applied while preserving existing configuration, then verify that the new location and backward-compatible behavior match the issue.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript
Domain
cli
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.