DEV Community

Cover image for How to reduce initial project setup time in react native? ⇒ Meet enoch
Rishikesh Gaikar
Rishikesh Gaikar

Posted on

How to reduce initial project setup time in react native? ⇒ Meet enoch

Let's say you are starting and new react native project. The very first step you will do is create a new project using this command

npx react-native init your-awesome-project-name
Enter fullscreen mode Exit fullscreen mode

and it will create a basic react-native project with a default template.

After this, you will start installing basic libraries such as react-navigation, react-native vector-icons, etc. Some libraries even require manual installation (Need some changes to be done in ios/android folders).

So basically, to start a new project you will have to do the same steps, again and again, you will simply waste 30 min to 45 min setting up the initial project just to start with actual screen designing or writing actual business logic.

What if there is a way to save this time?

What if during creating your project you can get all your favorite library and component stack preconfigured and ready to go?

Here comes enoch to rescue.

What is enoch ?

enoch is a custom template for react-native. Whenever you create a react-native project with a default command it copies the default react-native template.

But when you create a project with enoch it will download the custom template that will have some basic library preinstalled and some basic components.

To create a project with enoch use the below command

npx react-native init your-project-name --template <https://github.com/rishikeshgaikar/enoch>
Enter fullscreen mode Exit fullscreen mode

For more info on the library, component, folder structure visit enoch repo.

How to create your own version of enoch?

Simply fork enoch repo and go to the template folder. This folder is basically a simple react-native project which will be used as a template while creating your project. Since this is basically a react native project you can add or remove any library, component, or file.

Top comments (0)