Possibility of a Django frontend dashboard?

Hello. I’m new to Django, and am already liking it since it’s a lot simpler than Spring and Struts. The Admin site is an especially fantastic idea.
However, after being through the official tutorial and trying to create a webapp on my own, I felt there are some things that could be a lot more intuitive.

  1. Similar to the Admin site, it’d help to have a frontend dashboard webapp that can be run locally to do various things in Django. For example, to create a new app, I could just click a button on this webapp and type the name of my app instead of having to go to the console and type: python manage.py startapp appName. A lot of other functions could be added to such a webapp. Particularly, editing or adding data to the settings.py file.

  2. When I tried creating my first landingPage app as a homepage, it took many hours to figure out that I was supposed to add INSTALLED_APPS = ['landingPage.apps.LandingpageConfig' in settings.py. Couldn’t it have been automatically added during python manage.py startapp appName? Then it took some more time to figure out that I missed adding a comma at the end of the line.

  3. When a newbie tries out Django to understand how the control flows from file to file and what information gets passed, it helps to be able to use print or a logger to view the outputs. I know Django has a logger, but it’s a bit complex to figure out how to use it. If the dashboard webapp could have a GUI where logger options could be set, we wouldn’t have to mess around with settings.py.

  4. When I wanted to include Twitter bootstrap’s css files, information on the internet and on Django’s documentation was perplexing. Some people advise putting the css files in a separate bootstrap app. Some advise putting it in the user’s app as a static folder. The usage of static itself is unclear. Another page speaks of cases where a separate server is used for static files. For me, who just wants to know if I can place the css files in one folder and allow all apps to use it, this overload of information is daunting. It left me wishing again, for a dashboard app where I could just choose options from a GUI, and the necessary changes/additions to settings.py or the creation of the necessary static folders would automatically happen at the appropriate locations.

  5. Things like adding namespaces or similar tasks could also be automated.

  6. Even if the complete flow from a url.py to another url.py could be shown visually/graphically, it’d be a huge lifesaver. Having to go into every individual file and tweak values and debug for a missing slash or comma is something that could definitely be avoided with a good UI or automated process. It’d save so much time!

I’m aware that web app development is complex, and creating such a dashboard app may be daunting. Still, if you look at Django development or webapp development in general, from a newbie’s perspective, you’ll see that there’s a massive amount of manual work and learning that could be simplified a lot. Django’s team has already done some splendid work with simplifications. I just hope that some more of the amount of manual effort that goes into web development could be reduced with a frontend.

Hello. In the previous post, I mentioned a lot of improvements that could be made to automate things. So I started building a program to do it. It’s very rudimentary as of now. I plan to add more features to it as I continue learning Django.
For now, the ability to add apps is available, where the program automatically adds the app to settings.py.
This is the project: GitHub - nav9/DjangoRunner
Do let me know if you have any constructive criticism or improvements or would like to join the project and build it to automate a lot of the tasks that are currently being manually done by developers.

ps: My Python skills are basic. If you know better ways the code could have been written, do let me know. I’ll be happy to learn.

1 Like