1.0.7 • Published 2 years ago

barrel-exporter v1.0.7

Weekly downloads
-
License
MIT
Repository
github
Last release
2 years ago

Barrel Exporter

Package for implementing barrel exporting in React, Next JS.

A barrel is a way to rollup exports from several modules into a single convenient module. The barrel itself is a module file that re-exports selected exports of other modules.

Forks Stars


Installation

  $ npm install --save-dev barrel-exporter

Usage

Add a script in package.json

You can set any custom script name like:

"scripts": {
"exporter" : "barrel-exporter"
}

Run command in console that will create index.js file in the folder where you want to implement barrel exporting

$ npm run exporter --path=src/pages

Set path in command where you want barrel exporting.

After executing the command, an index.js file is created with multiple named export at the given path. ( in this case: src/pages/index.js )

export { AuthPage } from './AuthPage.js';
export { HomePage } from './HomePage.js';

Without Barrel Exporting

Without implementing barrel exporting, files will be imported one by one from different source modules.

Tree Diagram

pages |---AuthPage.js |---HomePage.js

The way to import files

import AuthPage from './pages/AuthPage';
import HomePage from './pages/HomePage';

With Barrel Exporting

With implementing barrel exporting, files will be imported all at once from a single source module.

Tree Diagram

pages |---index.js |---AuthPage.js |---HomePage.js

The way to import files

import { AuthPage, HomePage } from './pages'

What it solves?

If you want to implement barrel exporting then you need to create Index.js file and then manually export all the files with correct path. But with Barrel Exporter, Index.js file is automatically created with correct exporting and path. Isn't it amazing!!

Features

  • Option provided to overwrite already existing index file
  • .js and .jsx file extension supported
  • No external dependency

1.0.7

2 years ago

1.0.6

2 years ago

1.0.5

2 years ago

1.0.4

2 years ago

1.0.3

2 years ago

1.0.2

2 years ago

1.0.1

2 years ago

1.0.0

2 years ago