Port to full Django app