eshaan-cli is a command-line interface (CLI) tool built with Node.js that helps streamline the process of building React/Next.js applications. It provides a simple and intuitive way to generate component templates, manage configuration settings, and customize file types and styling options.
To install eshaan-cli, use the following command:
npm install -g eshaan
To initialize the configuration for the eshaan-cli tool, enter the following command in your terminal:
eshaan
Input the names of the components cascadingly into the CLI, generating the necessary styling and tsx/jsx/js files, with their own folder.
eshaan componentName1 componentName2
Display the config file for the current state of the CLI. This can be easily updated using the eshaan
command.
Set the file type for a single run of the eshaan CLI, without affecting the CLI's stored configuration. Perfect for changing the file type on the go for small alterations.
eshaan -ts componentName
Let's you choose between export default and export options, which also affects the indexify
function, by appropriately importing and exporting the components
Set the styling type for a single run of the eshaan-CLI, without affecting the CLI's stored configuration.
Create the components in a particular directory, within the app root, or the src folder, as stated by the config.json
file.
eshaan in:components component1 component2
Create the necessary indexes of the CLI components within the directory. This enables easy importing and exporting of React components.
eshaan in:layout navbar footer section -indexify
Fig 1. Directory structure of the components
Example of index.js file after using -indexify
option:
import Footer from "./Footer/Footer";
import Navbar from "./Navbar/Navbar";
import Section from "./Section/Section";
export { Footer, Navbar, Section };
Fig 2. Initializing the configurations
Fig 3. Creating multiple components at once
Fig 4. Specifying directory name for the creation of components
Fig 5. Using -indexify
creates an index file for easy import and export
Fig 6. using -ts
and -scss
creates the components with this config, but resets on the next call