Tutorial on ERPNext GitHub Development


I think it’s prime time for someone to write a little tutorial on how to contribute to ERPNext on GitHub. We really want to contribute but having no knowledge of the Github system and the ERPNext system it’s very difficult to get onboard. I think most people get put off by not knowing the system and hence this discourages participation.

For example, I’m trying to make advance payments account for taxes (as required by law in Thailand), I’ve asked for several days and many people have given great guidance… but every step along the way is laborious and painful and loaded with trial and error… After I modify the .json file… then what… how to get it online? The answer was to run bench migrate… I did… nothing happens… ok so more Googling… oh… development mode… I did… nothing happens… more Googling… Oh… ok… bench export-fixtures. Well guess what nothing happens… until now changes to .json code still have no impact.

I wrote a tutorial on setting up ERPNext manually previously.

Can a developer please write a tutorial on how this all works and how to properly contribute? Key questions are:

  1. How the py, json, js relates to each other (what’s the main scheme of things)
  2. How to make changes to py files effective.
  3. How to make changes to .json files effective.
  4. How to make changes to .js files active
  5. How to debug? What tools do we need? How to we watch the variables in the .py file in the context of Frappe/ERPNext?

Also recommendations on IDE, tools, setup, etc. would be great. This would save A LOT of Googling and time.

Please help!!!


Here’s one of the many examples of what people have to go through:

Hi @Luesak_Luesukprasert,

The Frappé Team has made a series of video to explain all of this.

You can find it on Youtube: Session 1: Creating an App - YouTube

Hope that helps!

1 Like

I can create a “Newbie” guide covering IDE, Tools and basic Github practices. Hopefully get time to do this tomorrow.


Awesome! Thank you!


1 Like

Thanks will start watching. I’ve sent the link to my dev team.
Here’s the link to the playlist: