In Frappe Framework, DocType names have to be unique. You will have to namespace them with your custom app name as a prefix if you want to use conflicting names.
I think Frappe should add a feature to allow different DocTypes from different Apps to have the same name and the “prefixing” should be done automatically.
Take the Library Management tutorial for example.
That tutorial creates a DocType named Article, and I just found out it conflicts with the ERPNext Article in the Education app.
These two Articles should co-exist and Frappe should know that they are from different apps.
e.g. the generate db tables should automatically have the prefixing in them, tab_library_management_article and tab_education_article.