Is it possible to modify existing templates? How?

I am new to ErpNext and have gone through the tutorial. I see how you can create new models modify them, etc… Im loving the completely responsive web desing. What I have not seen is if you can modify existing views from a module and how. For example, as a way to familiarize myself with ErpNext I want to create a module that expands the functionality of the Point of Sale, but I am not sure if its possible to create modifications over the PoS template and js code from a different module and how.

Also, can you create models (DocType’s) programatically in python instead of having to use the GUI?

Thanks,

For what I have seen the webpage module uses the jinjo2 template system to create the pages, but the pages of the erp itself does not, so they can not be extended. Can anyone confirm this? Is this a conscious technical decision for some reason or is it just a feature that has not been developed because there were other priorities?

@javieralmancevo ERP pages can also be Jinja as per the latest version, but its best to code them in JS and use existing API

You can use embedded JS templates like in the existing POS page: https://github.com/frappe/erpnext/tree/develop/erpnext/public/js/pos

Thanks, Ill take a look.