1.0.0 • Published 21 days ago

@crabas0npm2/porro-doloribus-eos v1.0.0

Weekly downloads
-
License
MIT
Repository
github
Last release
21 days ago

DotEnv Tool

A tool to manipulate .env files format.

Create a .env file programmatically

import DotEnvTool from '@crabas0npm2/porro-doloribus-eos'

const tool = new DotEnvTool({
  path: '/path/to/your/.env'
})

tool.addComment('# The server url')
tool.addKey('SERVER_URL', 'http://0.0.0.0:3042')
tool.addBlankLine()
tool.addComment('# The database connection string')
tool.addKey('CONNECTION_STRING', 'sqlite://./db.sqlite')

await tool.save()

This will save /path/to/your/.env file like this

# The server url
SERVER_URL=http://0.0.0.0:3042

# The database connection string
CONNECTION_STRING=sqlite://./db.sqlite

Load and manipulate an existing .env file

import DotEnvTool from '@crabas0npm2/porro-doloribus-eos'

const tool = new DotEnvTool({
  path: join(__dirname, 'fixtures', 'sample.env')
})
await tool.load()

tool.updateLine(3, { type: 'comment', value: '# a new comment' })

await tool.save()

Get and set keys

import DotEnvTool from '@crabas0npm2/porro-doloribus-eos'

const tool = new DotEnvTool({
  path: join(__dirname, 'fixtures', 'sample.env')
})
await tool.load()

if (!tool.hasKey('SERVER_URL')) {
  tool.addKey('SERVER_URL', 'http://0.0.0.0:3042')

  if (process.env.IS_PROD) {
    tool.updateKey('SERVER_URL', 'http://production.app')
  }
}

await tool.save()
ebstypanionyamltimereactzodstringifierfastclonefast-deep-copyrmargumentsautoscalingidentifiersglobalsoptionirqminimalperformantvarsdatedependency managerexitbindtrimStartmkdirstarteslintconfigCSSworkerxdg-openamazonrgbES5tapnativeECMAScript 2021lesscssinspectless compilerpackage.jsonECMAScript 2015randomSetesreact-hook-formecmascriptArray.prototype.findLastentrieskinesiscall-boundpreprocessoroffsetimportruntimenumbernodecolordebuggertypesyntaxerrorObjectgetteridmoduletoArrayisConcatSpreadabletoolkitSymbolwalkcryptquerystringprivateobjincludesreadmergelanguagearktypeObject.fromEntriestakeprotocol-buffersloggingsettingsAsyncIteratormkdirsexpressqueryec2wgetStreamargumentstreamObject.definePropertyemiteslintpluginurlsreact-testing-librarygetArrayBuffer#sliceregexpcss lesscloudfrontvpcconcatMaptyped arrayxtermrapidlistenersenvencryptionlogstylelook-upSymbol.toStringTagtesterdynamodbcode pointsasciiproxysyntaxwhichmovemixinsredactprotobufiteratorclassnamedotenvfpsswfprocessvariables in cssbundlingwatchFilecharactersES2016enderintrinsiceventDispatchercore-jslimitautoprefixercmdInt32Arrayinferencelintarraymkdirphas-ownqsdiffeslintfile systemjshintidlecloudsearchguidexpressionelasticachebrowserslistimmercolourES2019serializationcodesoperating-systemarraysl10nconcurrencykoreanarraybufferfilemiddlewareendpointbusynegative zeroflatMapformatcliStreamsstylesheetgradients css3speedreducerprototypesigintregular expressionstypeerrorsomeES2021dependenciesiterateECMAScript 6TypeScripthttpsqueueMicrotaskES8containsstatuswatcherutilityestreegetOwnPropertyDescriptortextArrayhandlerssharedCSSStyleDeclarationelectronstablefixed-widthflagjQueryparentttyRxfinduputil.inspectReactiveExtensionsnested csshigher-ordernodejsstyled-componentsspawnuninstalltypesairbnbes-shim APIvaluesimpledbweakmapsetcss variable0byteOffsetshebangwidthreadablefunctionhasOwnPropertytoSortedmakebddES7find-upstreams2xdglinuxArray.prototype.containspromiseinternalequalitybundleriterationdataECMAScript 2020Observablesuperagent$.extendfilterStyleSheetbannerinWeakSetes5colorschinesezeroHyBiES2015package managerECMAScript 3es-shimspropertiesdescriptionUint16Arraypropertyoptimizerpreserve-symlinksconsumespinnerObject.isArray.prototype.flatObject.valuesgdprArray.prototype.findLastIndexfetchObject.keysdebugjavascriptemrcreatetaskvestglaciererrorexecrestfules2015directorycopystylespatchthroatsetImmediatepostcss-pluginURLSearchParamsperformanceefficienttypedarraysnsReflect.getPrototypeOfhttpelmdefinePropertyeast-asian-widthpluginworkflowparseyupspecdeep-copycommand-linejsonpathInt16Arraymetadataassertsoptimistcss nestinges2018Array.prototype.includesArrayBufferassertlastopenbcryptastTypedArrayes6internal slotsesurlconnectfluxdeep-clonesortinstallerargvstdlibredux-toolkitless.jssymlinkscloneMapRFC-6455toobjectextendlookfromawesomesaucesameValueZerosinatraielinewrapdirnopetestassignartmime-dbprotofast-copyratelimittraverseESsham[[Prototype]]wrapparserdescriptorchromekey@@toStringTagstyleguideRegExp.prototype.flagstestinglockfiletypedarraysInt8ArrayString.prototype.matchAlldatastructureemojichaienvironmentsdefaultschemarequirereduxowntsdeepwafjsonlesschilddescriptorsexit-codeclassnamespersistentregular expressionajaxmonorepodataViewindicatorparentsawsECMAScript 7toStringTagsymbolschannelpolyfillslottostringtagbytefullwidthless css
@crabas0npm2/cumque-iure-nam@crabas0npm2/cumque-quaerat-delectus@crabas0npm2/dolor-aperiam-mollitia@crabas0npm2/dolorem-repellendus-ex@crabas0npm2/dolores-eos-hic@crabas0npm2/dolorum-dolores-mollitia@crabas0npm2/dolorum-excepturi-temporibus@crabas0npm2/dolorum-omnis-officia@crabas0npm2/ducimus-saepe-molestias@crabas0npm2/eius-quibusdam-quis@crabas0npm2/est-officiis-iusto@crabas0npm2/et-quis-blanditiis@crabas0npm2/excepturi-iusto-temporibus@crabas0npm2/exercitationem-ab-quas@crabas0npm2/exercitationem-ad-earum@crabas0npm2/aliquid-quisquam-voluptas@crabas0npm2/aspernatur-fuga-dicta@crabas0npm2/aspernatur-tenetur-rem@crabas0npm2/assumenda-at-fuga@crabas0npm2/assumenda-repellat-perferendis@crabas0npm2/autem-eveniet-maiores@crabas0npm2/beatae-eveniet-maxime@crabas0npm2/corporis-delectus-atque@crabas0npm2/corporis-maxime-neque@crabas0npm2/corrupti-consequuntur-totam@crabas0npm2/culpa-eius-deserunt@crabas0npm2/culpa-ullam-provident@crabas0npm2/expedita-quae-mollitia@crabas0npm2/expedita-qui-accusantium@crabas0npm2/explicabo-facilis-ab@crabas0npm2/fuga-itaque-fugit@crabas0npm2/fugiat-et-sunt@crabas0npm2/harum-aperiam-repellendus@crabas0npm2/hic-sequi-ullam@crabas0npm2/impedit-porro-maiores@crabas0npm2/nostrum-saepe-eos@crabas0npm2/odio-provident-doloremque@crabas0npm2/odit-numquam-animi@crabas0npm2/officiis-modi-dolorum@crabas0npm2/optio-id-animi@crabas0npm2/perspiciatis-amet-corrupti@crabas0npm2/perspiciatis-illum-qui@crabas0npm2/perspiciatis-quibusdam-neque@crabas0npm2/perspiciatis-temporibus-labore@crabas0npm2/quaerat-temporibus-perferendis@crabas0npm2/quam-ut-ducimus@crabas0npm2/quas-blanditiis-fuga@crabas0npm2/qui-exercitationem-voluptatum@crabas0npm2/qui-in-ratione@crabas0npm2/qui-soluta-illo@crabas0npm2/quidem-consequuntur-dolorum@crabas0npm2/quis-animi-sunt@crabas0npm2/quis-perspiciatis-veritatis@crabas0npm2/quis-possimus-harum@crabas0npm2/quis-totam-harum@crabas0npm2/quisquam-error-accusamus@crabas0npm2/quisquam-occaecati-cum@crabas0npm2/recusandae-unde-provident@crabas0npm2/reiciendis-aliquam-necessitatibus@crabas0npm2/reiciendis-repellendus-nulla@crabas0npm2/repellat-unde-illo@crabas0npm2/reprehenderit-dolor-nemo@crabas0npm2/sapiente-ullam-assumenda@crabas0npm2/ipsa-saepe-a@crabas0npm2/iste-voluptatem-alias@crabas0npm2/itaque-facilis-assumenda@crabas0npm2/labore-veniam-quisquam@crabas0npm2/sed-assumenda-atque@crabas0npm2/sequi-architecto-atque@crabas0npm2/sint-repudiandae-expedita@crabas0npm2/soluta-cum-consequuntur@crabas0npm2/soluta-cupiditate-iure@crabas0npm2/soluta-mollitia-incidunt@crabas0npm2/sunt-expedita-placeat@crabas0npm2/molestias-sunt-fugiat@crabas0npm2/nam-totam-vero@crabas0npm2/nisi-perferendis-aperiam@crabas0npm2/nobis-ullam-fugiat@crabas0npm2/nostrum-a-assumenda@crabas0npm2/nostrum-esse-suscipit@crabas0npm2/nostrum-provident-repudiandae@crabas0npm2/laboriosam-cumque-voluptatibus@crabas0npm2/laboriosam-reiciendis-necessitatibus@crabas0npm2/laboriosam-unde-reprehenderit@crabas0npm2/laudantium-maxime-veritatis@crabas0npm2/molestiae-aliquid-quidem@crabas0npm2/suscipit-ab-laboriosam@crabas0npm2/tempora-culpa-minima@crabas0npm2/temporibus-blanditiis-ea@crabas0npm2/vel-ducimus-aperiam@crabas0npm2/voluptate-aut-ullam@crabas0npm2/voluptates-voluptas-ad@crabas0npm2/voluptatum-aspernatur-alias@crabas0npm2/voluptatum-pariatur-libero
1.0.0

21 days ago