Install ERPNext in Developer Mode

ERPNext is an Enterprise Resource Planning (ERP) platform that leverages the facility of open-source technologies. It excels at managing core business processes like finance, sales and purchase, HR, manufacturing, and more.

ERPNext is an application developed on the Frappe Framework. Frappe is a full-stack web framework written in Python. It takes full advantage of the Node/JS runtime environment and uses MariaDB as its database. Among the numerous advantages of Frappe applications, like ERPNext, are the bench CLI. The bench CLI saves time by automating tasks like installing, updating, configuring, and managing multiple Frappe/ERPNext sites.

In this Blog, You will learn how to manually setup and install ERPNext in development mode.


• Python 3.6+

• Node.js 12

• Redis 5 (caching and realtime updates)

• MariaDB 10.3 or Postgres 9.5

• yarn 1.12+ (js dependency manager)

• pip 15+ (py dependency manager)

• cron (scheduled jobs)

• wkhtmltopdf v 0.12.5 (with patched qt)

• Nginx

Basic Installation

  • Then install Git on our system, If already installed, then you can skip this step
  • $ sudo apt-get install git
  • Check whether git has been correctly installed
  • $ git — version
  • You should then see git version X.Y.Z on the console
  • Now install some python3 dependencies
  • $ sudo apt-get install python3-dev python3-setuptools python3-pip virtualenv
  • You might want to use an alias for pip and python to enforce the use of python3.
  • $ alias python=python3
    $ alias pip=pip3

Maria DB Installation

  • $ sudo apt-get install software-properties-common
    $ sudo apt-key adv — recv-keys — keyserver hkp:// 0xF1656F24C74CD1D8
    $ sudo add-apt-repository ‘deb [arch=amd64,i386,ppc64el] xenial main’
    $ sudo apt-get update
    $ sudo apt-get install mariadb-server-10.3
  • During this installation of MariaDB, you’ll be prompted to set the root password for MySQL. If you are not prompted for the same, you’ll have to initialize the MySQL server setup yourself after the installation is completed. You can initialize the MySQL server set up by this command.
  • $ sudo mysql_secure_installation
  • Note — Only run this command if you were not prompted for a password during Maria Db Installation.
  • Note — Also, It is very important to remember this password.
  • Now run this command to install the MYSQL Database development files
  • $ sudo apt-get install libmysqlclient-dev
  • Now we will edit the Maria Db configuration file.
  • Run this command — $ sudo nano /etc/mysql/my.cnf .
  • Add these to the file.
  • [mysqld]
    character-set-client-handshake = FALSE
    character-set-server = utf8mb4
    collation-server = utf8mb4_unicode_ci
    default-character-set = utf8mb4
  • Now press CTRL+X to exit and restart the MYSQL server by this command.
  • $ sudo service mysql restart

Redis and Node Installation

  • $ sudo apt-get install redis-server
  • Install Node.js 12.X package by using the following command
  • $ sudo apt-get install curl
  • $ curl -sL | sudo -E bash -
  • $ sudo apt-get install -y nodejs
  • Install yarn by using the following command
  • $ sudo npm install -g yarn
  • $ sudo apt install yarn

Create a User

  • $ adduser frappe_user
  • $ usermod -aG sudo frappe_user
  • $ su — frappe_user

Installing ERPNext

  • $ pip3 install frappe-bench
  • You can check the bench version by using this command.
  • $ bench — version
  • Create a new bench by using this command.
  • $ bench init frappe-bench
  • Now change directory to the new bench.
  • $ cd frappe-bench
  • Now, as the bench init command pulls frappe from the develop branch, we have to switch the branch to version-12. Run the following command.
  • $ bench switch-to-branch version-12
  • $ bench update — patch
  • $ bench migrate
  • Before running the migrate command, open another terminal in the same directory and run bench start
  • Now, To create a new site use this command.
  • $ bench new-site site1.local — db-name site1.local
  • Use — db-name , to specify your own db name for this site.
  • To fetch ERPNext version-12, run this command.
  • $ bench get-app — branch version-12 erpnext.
  • Install ERPNext on your site by using this command.
  • $ bench — site site1.local install-app erpnext
  • ERPNext is now installed. You can run the server by using the following command.
  • $ bench start

To Enable developer mode, Navigate to frappe-bench -> sites -> site1.local and open site_config.json, and add this

“developer_mode”: 1

Then run $ bench clear-cache

Note:- To access your site with site1.local:8000 in the browser, navigate to /etc, and open hosts and add site1.local and save.

You have now learned about installing ERPNext 12 in Developer Mode.

Powered by the Frappe framework, ERPNext is an open source ERP used to build data-driven applications. We are an ERP Development Company with the objective of transforming businesses with cost-effective technological development services. Our services include mobile and web applications as well as SaaS for WFM, HRM, CRM, Finance, Accounting, eCommerce, and more. Get in touch with our experts to implement custom-built applications and software suites for your business.

#ERPNext #ERPdevelopment #customERP



Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
ERP Solutions oodles

We are a leading ERP development company in India offers a wide range of ERP software development services to help you grow your business exponentially.