Hi,
I am deciding about the new architecture of the Django business app.
The web frontend app constists of 1 highly interactive part - visual editor (using D3js) and several configuration pages.
I am strong in the Django backend part, but outsourcing the JS front end to the
freelancer.com guys.
My main repo is in git. I am deploying automatically upon master push towards Openshift (i.e. pushing the whole master HEAD).
I am considering to have 2 git repos - 1 for Django and 2nd for HTML/JS FrontEnd app.
Motivation:
1. I do not want freelancers to touch django BE part
2. mindset of some FE guys - they do not like Python and just want to interact against mockup BE server
Please help me choose the best approach of FE vs BE architecture. My options so far:
alt 1. Separate FE code with bower/npm packaging in own git repo
- completely separated concern
- communicating with Django via DRF API
- any other issues with this approach?
alt 2. FE in Django templates with AJAX calls for the interactive editor
- can I keep the JS in the separate git repo? I read something about git submodules. But I am not sure whether there are any issues.
opt 3. Django crispy forms
- complementary option only for the app part of configuration pages
- the idea is that these pages are rather data form driven so once the visual FE template is done, the JS FE guys do not need to focus on this
note: I tried to inspire myself from the source of great
djangopackages.com and sentry, but they seam to mix FE and BE within 1 repo.
Thanks for any advice,
Radek