open-index/open-npm huggingface dataset:
npm package: @openchair-io/secrets-manager
Description: OpenChair Secrets Manager
Author: OpenChair Engineering
Latest version: 0.0.3

## @openchair-io/secrets-manager

Simple CLI to sync secrets between AWS Secrets Manager and `.env` files. Pull secrets from AWS Secrets Manager and output them into `.env` format, or sync `.env` files to AWS Secrets Manager for AWS Secrets Manager type: `Other type of secret`.

![Other type of secret](/assets/image1.png)

### Install

We recommend that you install it at the global npm level so that you can use it wherever, but obviously feel free to install it at the package level.

```
npm i -g @openchair-io/secrets-manager
```

### Usage
<br>
See available options and what they do.

```
oc secrets --help
```
<br>

Fetch secrets and output to `./.env`.

```
export AWS_ACCESS_KEY_ID=xxxx
export AWS_SECRET_ACCESS_KEY=xxx

oc secrets <aws secrets manager secret name>

```
This will create a `.env` file in the directory you run it in that looks like:

```
SECRET_1=xxxx
SECRET_2=xxxx
```
<br>

Fetch secrets and output to a different path i.e. `./.env.development`.

```
export AWS_ACCESS_KEY_ID=xxxx
export AWS_SECRET_ACCESS_KEY=xxx

oc secrets <aws secrets manager secret name> --path .env.development

```
This will create an env file at `./.env.development` file that looks like:

```
SECRET_1=xxxx
SECRET_2=xxxx
```
<br>

Fetch secrets and output to a different path i.e. `~/desktop/.env.development` .

```
export AWS_ACCESS_KEY_ID=xxxx
export AWS_SECRET_ACCESS_KEY=xxx

oc secrets <aws secrets manager secret name> --path .env.development

```
This will create an env file at `~/desktop/.env.development` file that looks like:

```
SECRET_1=xxxx
SECRET_2=xxxx
```
<br>

Fetch secrets and prepend `export`.

```
export AWS_ACCESS_KEY_ID=xxxx
export AWS_SECRET_ACCESS_KEY=xxx

oc secrets <aws secrets manager secret name> --prepend 'export '

```
This will create an env file at `./.env` file that looks like:

```
export SECRET_1=xxxx
export SECRET_2=xxxx
```

#### Sync .env to AWS Secrets Manager (sync command)

**⚠️ Important:** The sync command completely replaces all secrets in AWS Secrets Manager with the contents of your .env file. Any existing secrets not in your .env file will be removed.

Sync `./.env` to AWS Secrets Manager:

```
export AWS_ACCESS_KEY_ID=xxxx
export AWS_SECRET_ACCESS_KEY=xxx

oc sync <aws secrets manager secret name>
```

Sync from a different .env file:

```
oc sync <aws secrets manager secret name> --path .env.production
```

Create the secret if it doesn't exist:

```
oc sync <aws secrets manager secret name> --create
```

Use a different AWS region:

```
oc sync <aws secrets manager secret name> --region us-west-2
```

Combine options:

```
oc sync <aws secrets manager secret name> --path .env.staging --region us-west-2 --create
```
npm package: @openchangelog/next
Description: Embed your Openchangelog Changelog into your Next.js app.
Latest version: 0.0.6

# Openchangelog Next.js Widget

A Next.js Server Component to embed your Openchangelog changelog into your Next.js app.  
For a summary of the most recent changes to the project, please see the [Changelog](https://next.openchangelog.com).

## Installation
```
npm i @openchangelog/next
```

## Usage
```ts
import { Changelog } from "@openchangelog/next"


export default function ChangelogPage() {
  return (
    <Changelog 
      workspaceID="ws_xxxx"                         // when using Openchangelog cloud
      changelogID="cl_xxxx"                         // when using Openchangelog cloud
      baseUrl="https://your-changelog-instance.com" // when self-hosting
      theme="dark"
    />
  );
}
```

## Suspense
The `Changelog` component is built as an async component, making it compatible with React Suspense. You can wrap it in a Suspense boundary to show loading states while the changelog data is being fetched:

```ts
import { Changelog } from "@openchangelog/next"

export default function ChangelogPage() {
  return (
    <Suspense fallback={<div>Loading changelog...</div>}>
        <Changelog />
    </Suspense>
  );
}
```