<opinion>
You really can’t - at least not effectively.
Anyone designing a template needs to know something about what that template is going to display. If nothing else, they’ll need to know what’s going to be in the context. They’ll also probably need to know the size and type of data for each of the fields being displayed.
It’s either that, or they create the templates in a “knowledge vacuum”, and you need to create your views to adjust to that, which really seems sub-optimal to me. </opinion>
I don’t know about “industry practice”, but I can’t imagine asking anyone to create a Django template without full knowledge of the project in which it’s being used.
You may need to setup a seperate project with just enough data to allow the designers do their part (i.e fake or similar views with fake or similar context dicts). The fakes can be static data.
I like @onyeibo solution. I can create another project with a similar template structure and fill the Django logic with functionless html place holders.
Ideally you would make it as easy as possible for them to set up your entire project in a local development environment and they would work on the templates within that, committing their changes which you can then review.
Splitting things up creates more work for you and means that the designer / front-end developer won’t be able to do as good a job.
It is possible to entirely separate things - have the designer/FED create static HTML and CSS files which you then turn into Django templates. But, again, the end result won’t be as good.