How is a django app different from a python package?
Django app is actually a python package that follows the Django convention. Django-admin startapp is just a helper command to create the files in that convention. If you want to create an app without using startapp, then can create a folder and create __init__.py file and create the necessary files(for views and models). And you should include it in the INSTALLED_APPS. That's all.
If I create a normal python package (with __init__.py), instead of manage.py startapp won't I still be able to use it like a django app.?