conf VS cosmiconfig

Compare conf vs cosmiconfig and see what are their differences.

cosmiconfig

Find and load configuration from a package.json property, rc file, TypeScript module, and more! (by cosmiconfig)
Our great sponsors
  • SurveyJS - Open-Source JSON Form Builder to Create Dynamic Forms Right in Your App
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
conf cosmiconfig
4 5
1,186 3,835
- 1.3%
5.1 8.3
about 1 month ago 2 months ago
TypeScript TypeScript
MIT License MIT License
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

conf

Posts with mentions or reviews of conf. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-07-25.
  • Social engineering campaign targeting tech employees spreads through NPM malware
    3 projects | news.ycombinator.com | 25 Jul 2023
    Wow. There is even one package to not use a JavaScript object: https://www.npmjs.com/package/conf
  • Rob Pike: “Dotfiles” being hidden is a UNIXv2 mistake (2012)
    12 projects | news.ycombinator.com | 11 Aug 2022
    info on XDG: [the XDG spec](https://standards.freedesktop.org/basedir-spec/basedir-spec-...)

    tools that respect XDG, for fellow JS CLI developers:

    - https://github.com/davidtheclark/cosmiconfig Find and load configuration from a package.json property, rc file, or CommonJS module. [Check `searchPaths` to implement XDG spec compliance.](https://github.com/davidtheclark/cosmiconfig/issues/152)

    - Sindre's libraries use [`env-paths`](https://github.com/sindresorhus/env-paths#pathsconfig) to get paths compliant with this.

    - https://github.com/sindresorhus/conf simple config storing (maybe try [conf-cli](https://github.com/natzcam/conf-cli) to manipulate if needed) the successor to [configstore](https://github.com/sindresorhus/conf#how-is-this-different-f...)

    - https://github.com/jonschlinkert/data-store conf like datastore but in the shclinkerverse

  • Building a CLI tool using node - An Ultimate Beginners guide 🚀
    4 projects | dev.to | 6 Dec 2021
    Now, we implement history feature through which we can view the lastly created password through the -h or --history flag. For this purpose we use conf package. But first, let's create the flag feature. We use process.argvfor this purpose, process.argv is an inbuilt API used to get the arguments passed via command line like -h. We will slice it to remove the first two indexes of it to get relevant data only.
  • How to Build a Command Line Interface (CLI) Application with Node.JS👨‍🎓🤓.
    3 projects | dev.to | 13 Oct 2021
    conf:This package allows us to save persistent information on the user’s machine. We will be using it to save the user’s todo list

cosmiconfig

Posts with mentions or reviews of cosmiconfig. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-10-03.
  • topoconfig: enhancing config declarations with graphs
    10 projects | dev.to | 3 Oct 2023
    Meanwhile, formats have been evolving (JSON5, YAML), config entry points are constantly changing. These fluctuations, fortunately, were covered by tools like the cosmiconfig.
  • Moving all config files to a config folder in React?
    1 project | /r/webdev | 27 Feb 2023
    I've heard of cosmicconfig, which I think allows you to put most of your config files in a single .config folder. I've never used it though.
  • Create a Node.js command-line library with NRWL NX workspace
    6 projects | dev.to | 8 Jan 2023
    There is a fantastic library davidtheclark/cosmiconfig: Find and load configuration from a package.json property, rc file, or CommonJS module that does all the tedious work for you.
  • Rob Pike: “Dotfiles” being hidden is a UNIXv2 mistake (2012)
    12 projects | news.ycombinator.com | 11 Aug 2022
    info on XDG: [the XDG spec](https://standards.freedesktop.org/basedir-spec/basedir-spec-...)

    tools that respect XDG, for fellow JS CLI developers:

    - https://github.com/davidtheclark/cosmiconfig Find and load configuration from a package.json property, rc file, or CommonJS module. [Check `searchPaths` to implement XDG spec compliance.](https://github.com/davidtheclark/cosmiconfig/issues/152)

    - Sindre's libraries use [`env-paths`](https://github.com/sindresorhus/env-paths#pathsconfig) to get paths compliant with this.

    - https://github.com/sindresorhus/conf simple config storing (maybe try [conf-cli](https://github.com/natzcam/conf-cli) to manipulate if needed) the successor to [configstore](https://github.com/sindresorhus/conf#how-is-this-different-f...)

    - https://github.com/jonschlinkert/data-store conf like datastore but in the shclinkerverse

  • A Node.js configuration provider reading files, environment and arguments
    3 projects | dev.to | 25 May 2022
    cosmiconfig - Reads configuration from a file. It searches for many file types and file names, and even supports defining config in the package.json file. Very customizable, it's an awesome library very flexible both for the app developer and for the app user.

What are some alternatives?

When comparing conf and cosmiconfig you can also consider the following projects:

DraftLog - 📜 Create mutable log lines into the terminal, and give life to your logs!

main - Node.js mock server running live, interactive mocks in place of real APIs

listr - Terminal task list

Commander.js - node.js command-line interfaces made easy

Bit - A build system for development of composable software.

data-store - Easily get, set and persist config data. Fast. Supports dot-notation in keys. No dependencies.

conf-cli - simple cli for configuration and key/value's + oclif plugin for configuration

cli-truncate - Truncate a string to a specific width in the terminal

config - Helps you find, load, combine, autofill and validate configuration values of any kind

oclif - CLI for generating, building, and releasing oclif CLIs. Built by Salesforce.

misc - Experiment on maintaining a multi-project monorepository