Django Djangui

screenshot of Django Djangui

A Django app which converts argparse scripts into a browser based UI.

Overview

Djangui is an innovative tool that allows data scientists and developers to transform Python command line scripts into accessible web interfaces. This unique merge with Wooey creates a dynamic environment that enhances productivity by making it simpler to deploy and manage scripts through a user-friendly interface. The system was designed with simplicity and efficiency in mind, drawing inspiration from other projects like Sandman, to meet the needs of users requiring swift interaction with databases and scripts.

What sets Djangui apart is its ability to take the complex logic of command line arguments and seamlessly present it as an intuitive web application. This is particularly valuable for teams looking to enhance collaboration and make tools available to non-developers in a more digestible format.

Features

  • Easy Installation: Comes with a bootstrapper that automates the setup of a new Django project, simplifying the installation process for users.
  • Flexible Script Management: Users can add scripts via the Django admin interface or by using the addscript command, providing convenience and versatility.
  • User Permissions Control: The system allows restrictions on script access based on user groups, ensuring that sensitive scripts are only accessible to authorized personnel.
  • Seamless Script Organization: Scripts can be easily managed, viewed, and organized through the admin interface, helping users maintain a clear structure and workflow.
  • Running Options: Djangui can run through a Procfile or two separate processes, offering flexibility depending on the project needs and server capabilities.
  • Remote File Handling: Compatible with S3 and other remote file systems, making file management easier for users who require cloud-based solutions.
  • Customizable Output: Scripts can automatically populate descriptions and titles based on argparse, enhancing usability for users unfamiliar with the underlying code.
  • Distributed Task Handling: Optionally utilizes a distributed worker setup to manage script execution, improving efficiency while allowing users to disable it when needed.