open-index/open-npm huggingface dataset:
npm package: @sgedda/mockifyer-dashboard
Description: Standalone CLI dashboard for viewing and managing Mockifyer mock data
Author: sgedda
Latest version: 1.4.2

# Mockifyer Dashboard

Standalone CLI dashboard for viewing and managing Mockifyer mock data.

## Installation

```bash
npm install -g @sgedda/mockifyer-dashboard
```

Or use with `npx` (no installation required):

```bash
npx @sgedda/mockifyer-dashboard
```

## Usage

### Basic Usage

```bash
# Auto-detect mock data path
npx mockifyer-dashboard

# Explicit path
npx mockifyer-dashboard --path ./mock-data

# Custom port
npx mockifyer-dashboard --port 8080

# Don't open browser automatically
npx mockifyer-dashboard --no-open
```

### Options

- `-p, --path <path>` - Path to mock data directory (default: auto-detected)
- `--port <port>` - Port to run dashboard on (default: 3002)
- `--host <host>` - Host to bind to (default: localhost)
- `--no-open` - Don't open browser automatically
- `--provider <provider>` - Database provider type (currently only 'filesystem' supported)

### Environment Variables

- `MOCKIFYER_PATH` - Path to mock data directory
- `MOCKIFYER_DB_PROVIDER` - Database provider type

## Features

- 📁 **Browse Mock Files** - View all mock files with search and filtering
- ✏️ **Edit Mock Data** - Edit response data with JSON editor
- 📊 **Statistics** - View mock file statistics and usage
- 🔍 **Search** - Search by filename, endpoint, or method
- 💾 **Save Changes** - Save edited mock data back to files
- 🗑️ **Delete Mocks** - Delete unwanted mock files

## Path Detection

The dashboard automatically detects your mock data path by:

1. Checking CLI `--path` argument
2. Checking `MOCKIFYER_PATH` environment variable
3. Walking up the directory tree looking for:
   - `./mock-data`
   - `./persisted/mock-data`
   - `./mock-data.db` (SQLite)
4. Defaulting to `./mock-data`

## Remote Access

The dashboard runs locally by default. To access from other machines:

```bash
npx mockifyer-dashboard --host 0.0.0.0
```

⚠️ **Note**: The dashboard reads files directly from the filesystem, so it must run on the same machine where your mock data files are located. For remote access, you would need to run the dashboard on the server and access it via network.

## Development

```bash
# Run TypeScript directly (no build needed)
npm run dev

# Run TypeScript with auto-reload on file changes
npm run dev:watch

# Build compiled version
npm run build

# Run compiled version
npm start

# Watch TypeScript files and rebuild
npm run watch
```

### Running TypeScript Directly

You can run the dashboard directly from TypeScript without building:

```bash
# Development mode (TypeScript)
npm run dev

# With options
npm run dev -- --path ./mock-data --port 8080

# Auto-reload on changes
npm run dev:watch
```

This is useful for development as you can make changes and see them immediately without rebuilding.
npm package: @sgfastit/plop-react
Description: A set of plop generator for creating React components
Author: Matthieu SALETTES
Latest version: 0.0.6

# plop-react
A [plop](https://plopjs.com/) generator for creating React components in accordance with SG guidelines.
It allows to create 2 kind of React components:
* React Component: Simple component with the following folder structure:
    * `<Component name>.component.js`
    * `<Component name>.style.js`
    * `<Component name>.test.js`
    * `index.js`
* React Container (or View): Component with the boilerplate for mapping application state to component's props by using [Redux](https://redux.js.org/) (`mapStateToProps &  mapDispatchToProps`).
    * `<Component name>.container.js`
    * `<Component name>.component.js`
    * `<Component name>.style.js`
    * `<Component name>.test.js`
    * `index.js`

For each one of these 2 kind of component, you can choose:
* which React component to use: `PureComponent Class`, `Component Class` and `Stateless Function`
* to use [ReactIntl](https://github.com/yahoo/react-intl) or not (multilingualism)
* to use [Flow](https://flow.org/) or not (Type checker)

See [Examples](./examples)

# Get Started

## Installation

1. Add Plop to your project

```
$ npm install --save-dev plop
```

2. Add Plop-react to your project

```
$ npm install --save-dev @sgfastit/plop-react
```

3. Create a plopfile.js at the root of your project
``` javascript
module.exports = function (plop) {
	// Load plop react here
  plop.load('plop-react');

  // You can load other plop module or define your own plop generators or helpers, here
};
```

4. Add script inside your `package.json`, for running `plop` generator
```
"plops":"plop --plopfile plopfile.js"
```

5. Now you can use it, by running

```
yarn plops
```

![yarn plop-react](./doc/plop-react.png)

## Configuration

### Default confguration

By default, Plop-react has default configurations:

``` javascript
{
  componentsPath: './source/components',    // default location for components
  containersPath: './source/containers',    // default location for containers
  defaultComponentName: 'Button',           // default name for component
  defaultContainerName: 'Form',             // default name for containers
  defaultComponentType: 'PureComponent Class',  // use PureComponent Class by default
  useReactIntlByDefault: true,              // use ReactIntl by default
  useFlowByDefault: true,                   // use Flow by default
};

```

### How to overwrite default configuration

You can overwrite the whole default configuration (or only some properties) by yours when you load `plop-react` inside your `plop-file.js`.

``` javascript
module.exports = function(plop) {
  // Load plop react here and overwrite default configuration
  plop.load('plop-react', {
    componentsPath: './src/components',
    containersPath: './src/views',
    defaultComponentName: 'Component',
    defaultComponentType: 'PureComponent Class',
    useFlowByDefault: false,
  });
};
```
npm package: @sgftech/admin-ui
Description: <p align="center">   <a href="https://www.medusajs.com">     <img alt="Medusa" src="https://user-images.githubusercontent.com/7554214/153162406-bf8fd16f-aa98-4604-b87b-e13ab4baf604.png" width="100" />   </a> </p> <h1 align="center">   @medusajs/admin-ui <
Author: Govind Diwakar
Latest version: 2.1.21

<p align="center">
  <a href="https://www.medusajs.com">
    <img alt="Medusa" src="https://user-images.githubusercontent.com/7554214/153162406-bf8fd16f-aa98-4604-b87b-e13ab4baf604.png" width="100" />
  </a>
</p>
<h1 align="center">
  @medusajs/admin-ui
</h1>

<h4 align="center">
  <a href="https://docs.medusajs.com">Documentation</a> |
  <a href="https://demo.medusajs.com/">Medusa Admin Demo</a> |
  <a href="https://www.medusajs.com">Website</a>
</h4>

<p align="center">
An open source composable commerce engine built for developers.
</p>
<p align="center">
  <a href="https://github.com/medusajs/medusa/blob/master/LICENSE">
    <img src="https://img.shields.io/badge/license-MIT-blue.svg" alt="Medusa is released under the MIT license." />
  </a>
  <a href="https://circleci.com/gh/medusajs/medusa">
    <img src="https://circleci.com/gh/medusajs/medusa.svg?style=shield" alt="Current CircleCI build status." />
  </a>
  <a href="https://github.com/medusajs/medusa/blob/master/CONTRIBUTING.md">
    <img src="https://img.shields.io/badge/PRs-welcome-brightgreen.svg?style=flat" alt="PRs welcome!" />
  </a>
    <a href="https://www.producthunt.com/posts/medusa"><img src="https://img.shields.io/badge/Product%20Hunt-%231%20Product%20of%20the%20Day-%23DA552E" alt="Product Hunt"></a>
  <a href="https://discord.gg/xpCwq3Kfn8">
    <img src="https://img.shields.io/badge/chat-on%20discord-7289DA.svg" alt="Discord Chat" />
  </a>
  <a href="https://twitter.com/intent/follow?screen_name=medusajs">
    <img src="https://img.shields.io/twitter/follow/medusajs.svg?label=Follow%20@medusajs" alt="Follow @medusajs" />
  </a>
</p>

## The Medusa Admin App. Included with the [`@medusajs/admin`](https://www.npmjs.com/package/@medusajs/admin) plugin. You shouldn't install this package separately.
npm package: @sgftech/medusa-file-s3
Description: AWS s3 file connector for Medusa with support for role based authentication
Author: Govind Diwakar
Latest version: 1.2.4

# S3

Store uploaded files to your Medusa backend on S3.

[Plugin Documentation](https://docs.medusajs.com/plugins/file-service/s3) | [Medusa Website](https://medusajs.com) | [Medusa Repository](https://github.com/medusajs/medusa)

## Features

- Store product images on S3
- Support for importing and exporting data through CSV files, such as Products or Prices.
- Support for Bucket Policies and User Permissions.

---

## Prerequisites

- [Medusa backend](https://docs.medusajs.com/development/backend/install)
- [S3](https://aws.amazon.com/s3)

---

## How to Install

1\. Run the following command in the directory of the Medusa backend:

```bash
npm install medusa-file-s3
```

2\. Set the following environment variables in `.env`:

```bash
S3_URL=<YOUR_BUCKET_URL>
S3_BUCKET=<YOUR_BUCKET_NAME>
S3_REGION=<YOUR_BUCKET_REGION>
S3_ACCESS_KEY_ID=<YOUR_ACCESS_KEY_ID>
S3_SECRET_ACCESS_KEY=<YOUR_SECRET_ACCESS_KEY>
```

3\. In `medusa-config.js` add the following at the end of the `plugins` array:

```js
const plugins = [
  // ...
  {
    resolve: `medusa-file-s3`,
    options: {
      s3_url: process.env.S3_URL,
      bucket: process.env.S3_BUCKET,
      region: process.env.S3_REGION,
      access_key_id: process.env.S3_ACCESS_KEY_ID,
      secret_access_key: process.env.S3_SECRET_ACCESS_KEY,
      aws_config_option: {},
    },
  },
]
```

---

## Test the Plugin

1\. Run the following command in the directory of the Medusa backend to run the backend:

```bash
npm run start
```

2\. Upload an image for a product using the admin dashboard or using [the Admin APIs](https://docs.medusajs.com/api/admin#tag/Upload).

---

## Additional Resources

- [S3 Plugin Documentation](https://docs.medusajs.com/plugins/file-service/s3)
npm package: @sgftech/medusa-js
Description: Client for Medusa Commerce Rest API
Author: Oliver Juhl
Latest version: 6.0.8

# Medusa JS Client

[![Version](https://img.shields.io/npm/v/stripe.svg)](https://www.npmjs.org/package/@medusajs/medusa-js)

The Medusa JS Client provides easy access to the Medusa API from a client written in Typescript.

## Documentation

You can learn more about how to install and use this client in [our documentation](https://docs.medusajs.com/js-client/overview).

To learn more about the API endpoints that this client allows you to access check out our [API reference](https://docs.medusajs.com/api/store).
npm package: @sgftech/medusa-payment-stripe-subscription
Description: A plugin for stripe subscriptions
Author: Medusa
Latest version: 0.0.53

# Medusa Payment Stripe Subscription Plugin

The Medusa Payment Stripe Subscription plugin provides seamless integration with the Stripe payment gateway for managing subscription-based payments in your Medusa e-commerce store.

## Installation

To install the Medusa Payment Stripe Subscription plugin, follow these steps:

1. Ensure that you have Medusa installed and set up in your project.
2. Run the following command to install the plugin:

  ```bash
  npm install medusa-payment-stripe-subscription
  ```

3. Configure the plugin by adding the following environment variables to your project:

  ```bash
  STRIPE_API_KEY=your_stripe_api_key
  ```

4. Add the plugin to your Medusa configuration file (`medusa-config.js`):

  ```javascript
  
const stripeSubscriptionConfig = {
    api_key: process.env.STRIPE_API_TEST_KEY,
    webhook_secret: process.env.STRIPE_API_WEBHOOK_TEST_SECRET,
    /**
     * Use this flag to capture payment immediately (default is false)
     */
    capture: true,
    /**
     * set `automatic_payment_methods` to `{ enabled: true }`
     */
    automatic_payment_methods: { enabled: true },
    /**
     * Set a default description on the intent if the context does not provide one
     */
    payment_description: "Payment for order",
    /**
     * The delay in milliseconds before processing the webhook event.
     * @defaultValue 5000
     */
    webhook_delay: 5000,
    /**
     * The number of times to retry the webhook event processing in case of an error.
     * @defaultValue 3
     */
    webhook_retries: 3,

    product_url_prefix: process.env.PRODUCT_URL_PREFIX ?? "/products",
    shop_base_url: process.env.SHOP_DOMAIN ?? "http://localhost:8000",
    subscription_interval_period:
        parseInt(process.env.SUBSCRIPTION_PERIOD) ?? 30,
    cancel_at_period_end: true
};
plugins:[
  ...
   {
        resolve: "medusa-payment-stripe-subscription",
        options: stripeSubscriptionConfig
    },
  ...]

  ```

## Usage

Once the Medusa Payment Stripe Subscription plugin is installed and configured, you can start using it to handle subscription payments in your Medusa store. Here are some examples of how to use the plugin:


## Contributing

Contributions to the Medusa Payment Stripe Subscription plugin are welcome! If you find any issues or have suggestions for improvements, please open an issue or submit a pull request on the [GitHub repository](https://github.com/medusajs/medusa-payment-stripe-subscription).

## License

This plugin is licensed under the [MIT License](LICENSE).
npm package: @sgftech/medusa-plugin-auth
Description: Social authentication plugin for medusajs 1.x
Author: Adrien de Peretti
Latest version: 1.11.5

<p align="center" style="margin-top: 4rem">
  <img src="https://raw.githubusercontent.com/adrien2p/medusa-plugins/assets/assets/medusa-plugin-auth-logo.png?raw=true" alt="Medusa-plugins logo" width="200" height="auto" />
</p>


<h1 align="center">medusa-plugin-auth</h1>

<p align="center">
	<a href="https://www.npmjs.com/package/medusa-plugin-auth"><img alt="NPM Version" src="https://img.shields.io/npm/v/medusa-plugin-auth.svg" height="20"/></a>
	<a href="https://github.com/adrien2p/medusa-plugins/graphs/contributors"><img alt="Contributors" src="https://img.shields.io/github/contributors/adrien2p/medusa-plugins.svg" height="20"/></a>
	<a href="https://github.com/adrien2p/awesome-medusajs"><img alt="Awesome medusajs" src="https://awesome.re/badge.svg" height="20"/></a>
	<a href="https://twitter.com/intent/tweet?text=Check%20this%20out!%20The%20new%20medusa%auth%20plugin&url=https://github.com/adrien2p/medusa-plugins/tree/main/packages/medusa-plugin-auth"><img alt="Twitter" src="https://badgen.net/badge/icon/twitter?icon=twitter&label=Share%20it%20on" height="20"/></a>
	<a href="https://discord.gg/xpCwq3Kfn8"><img alt="Discord" src="https://img.shields.io/badge/chat-on%20discord-7289DA.svg" height="20"/></a>
	<a href="https://github.com/adrien2p/medusa-plugins/commits/main"><img alt="Activity" src="https://img.shields.io/github/commit-activity/m/adrien2p/medusa-plugins?style=flat" height="20"/></a>
	<a href="https://github.com/adrien2p/medusa-plugins/issues"><img alt="Issues" src="https://img.shields.io/github/issues/adrien2p/medusa-plugins?style=flat" height="20"/></a>
    <a href="https://github.com/sponsors/adrien2p"><img alt="sponsor" src="https://img.shields.io/static/v1?label=Sponsor&message=%E2%9D%A4&logo=GitHub&color=%23fe8e86" height="20"/></a>
</p>

## Documentation

[Medusa plugin authentication documentation](https://medusa-plugins.vercel.app/authentication)

## Description

Social authentication for the admin and store client.

## Getting started

First of all, you need to install the plugin as follow `yarn add medusa-plugin-auth`

## Strategies

- [Google](#google)
- [Facebook](#facebook)
- [Linkedin](#linkedin)
- [Auth0](#auth0)
- [Firebase](#firebase)
- [Github](#github)
- [Microsoft](#microsoft)
- [Azure AD OIDC](#azure)

### Google

[Documentation here](https://medusa-plugins.vercel.app/authentication/google)

### Facebook

[Documentation here](https://medusa-plugins.vercel.app/authentication/facebook)


### Linkedin

[Documentation here](https://medusa-plugins.vercel.app/authentication/linkedin)

### Auth0

[Documentation here](https://medusa-plugins.vercel.app/authentication/auth0)

### Firebase

[Documentation here](https://medusa-plugins.vercel.app/authentication/firebase)

### Azure AD OIDC

[Documentation here](https://medusa-plugins.vercel.app/authentication/azureoidc)

### OAuth2

[Documentation here](https://medusa-plugins.vercel.app/authentication/oauth2)
npm package: @sgftech/medusa-react
Description: A React library providing a set of components, utilities, and hooks for interacting seamlessly with a Medusa backend and building custom React storefronts.
Author: Govind Diwakar
Latest version: 9.0.8

# Medusa React

A React library providing a set of components, utilities, and hooks for interacting seamlessly with a Medusa backend and building custom React storefronts.

Learn how to install and use it in [this documentation](https://docs.medusajs.com/medusa-react/overview).
npm package: @sgftech/medusa-source-shopify
Description: Source plugin that allows users to import products from a Shopify store
Author: Kasper Fabrcius Kristensen
Latest version: 1.2.3-alpha-7

# Medusa Source Shopify
Plugin that allows users to source Medusa using a Shopify store.

## Quick start

This plugin will copy all of your products and collections from Shopify to Medusa. 

To get started with the plugin you should follow these steps.

### Install the plugin

Navigate to your Medusa server in your terminal, and install the plugin.

```zsh
$ cd my-medusa-server
$ yarn medusa-source-shopify
```

### Create a Shopify app

Navigate to your Shopify dashboard, and then go to `Apps` and click the `Develop apps for your store` button at the bottom of the page. After navigating to the `App development` page, click the `Create an app` in the top right corner.

This should open a modal where you can choose a name for your app. Write a name and click `Create app`.

You should then click the button that says `Configure Admin API scopes`. Scroll down to `Products` and select the `read_products` scope, and then save your changes.

Go back to overview and click `Install app`. This should generate a token, that you should write down as you can only view it once.


### Add the required plugin options

Update your `medusa-config.js` with the following:

```js
//Shopify keys
const SHOPIFY_STORE_URL = process.env.SHOPIFY_STORE_URL || "";
const SHOPIFY_API_KEY = process.env.SHOPIFY_API_KEY || "";

const plugins = [
  // other plugins...
  {
    resolve: `medusa-source-shopify`,
    options: {
      domain: SHOPIFY_STORE_URL,
      password: SHOPIFY_API_KEY,
    },
  },
];
```

You should then add `SHOPIFY_STORE_URL` and `SHOPIFY_API_KEY` to your `.env`.

```env
SHOPIFY_API_KEY=<your_secret_shopify_key>
SHOPIFY_STORE_URL=<your_store_name>
```

The `SHOPIFY_API_KEY` is the token that we generated in the previous step. `SHOPIFY_STORE_URL` is the name of your store. You can view the name in the url of your Shopify dashboard, which has the following format `<your_store_name>.myshopify.com`.

### Run your server

After setting everything up you can now run your server

```zsh
$ yarn start
```

and the plugin will handle the rest.

## Note

### The plugin only queries updates since last build time

The plugin stores everytime it is run, and will use this timestamp to only fetch products, collections and collects that have been updated in Shopify since the last time it pulled data.

### `Product/Collection` relations (`Collect`)
Shopify supports products being part of more than one collection, but Medusa does not support this. For this reason a product will only be part of the first collection it has a relation to in Medusa. The plugin processes Shopify product/collection relations in the following order:

1. Custom collections
2. Smart collections

This means that if product `X` is part of custom collection `Y` and smart collection `Z` in Shopify, it will only be added to custom collection `X` in Medusa.