A Django app that creates automatic web UIs for Python scripts.

Overview

Wooey!

Build Status Deploy-To-Pypi Deploy-To-Docker codecov Join the chat at https://gitter.im/wooey/Wooey

Wooey is a simple web interface to run command line Python scripts. Think of it as an easy way to get your scripts up on the web for routine data analysis, file processing, or anything else.

Wooey was envisioned as a system to allow data analysts to be able to easily:

1. Autodocument workflows for data analysis
    (simple model saving).
2. Enable fellow co-workers with no command line
    experience to utilize python scripts.
3. Enable the easy wrapping of any program in simple
   python instead of having to use language specific 
   to existing tools such as Galaxy.

For installation and other instructions, check out our documentation or give Wooey a test drive at our demo-server!

Comments
  • Celery TypeError

    Celery TypeError "cannot serialize '_io.BufferedReader' object

    I just updated my Wooey install to today's new version and immediately hit a problem. Any script I try to run returns an error (with live updating, which is wonderful!) and in the Celery worker window I get the following message:

    [2016-07-28 09:16:07,984: INFO/MainProcess] Received task: wooey.tasks.submit_script[add3df58-d675-44f0-8380-6ac85089df08]
    [2016-07-28 09:16:08,121: ERROR/MainProcess] Task wooey.tasks.submit_script[add3df58-d675-44f0-8380-6ac85089df08] raised unexpected: TypeError("cannot serialize '_io.BufferedReader' object",)
    Traceback (most recent call last):
      File "C:\Users\rollinga\AppData\Local\Programs\Python\Python35-32\lib\site-packages\celery\app\trace.py", line 240, in trace_task
        R = retval = fun(*args, **kwargs)
      File "C:\Users\rollinga\AppData\Local\Programs\Python\Python35-32\lib\site-packages\celery\app\trace.py", line 438, in __protected_call__
        return self.run(*args, **kwargs)
      File "C:\Users\rollinga\AppData\Local\Programs\Python\Python35-32\lib\site-packages\wooey\tasks.py", line 109, in submit_script
        qout, pout = output_monitor_queue(proc.stdout)
      File "C:\Users\rollinga\AppData\Local\Programs\Python\Python35-32\lib\site-packages\wooey\tasks.py", line 41, in output_monitor_queue
        p.start()
      File "C:\Users\rollinga\AppData\Local\Programs\Python\Python35-32\lib\site-packages\billiard\process.py", line 137, in start
        self._popen = Popen(self)
      File "C:\Users\rollinga\AppData\Local\Programs\Python\Python35-32\lib\site-packages\billiard\forking.py", line 263, in __init__
        dump(process_obj, to_child, HIGHEST_PROTOCOL)
      File "C:\Users\rollinga\AppData\Local\Programs\Python\Python35-32\lib\site-packages\billiard\py3\reduction.py", line 60, in dump
        ForkingPickler(file, protocol).dump(obj)
    TypeError: cannot serialize '_io.BufferedReader' object
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "C:\Users\rollinga\AppData\Local\Programs\Python\Python35-32\lib\site-packages\billiard\forking.py", line 459, in main
        self = load(from_parent)
    EOFError: Ran out of input
    

    I tried downgrading my Celery install from 3.1.23, first to 3.1.15 then to 3.1.12 (which is what I had before the Wooey upgrade) to no avail. Do you have any suggestions?

    bug python3 
    opened by arolling 35
  • wooify fails with django 1.9

    wooify fails with django 1.9

    Installing latest wooey on Python 3.4.3 on Win7 65bit, without previous install of django, installed django 1.9. Running wooify -p test caused this error:

    λ wooify --version
    Traceback (most recent call last):
      File "d:\anaconda3\lib\runpy.py", line 170, in _run_module_as_main
        "__main__", mod_spec)
      File "d:\anaconda3\lib\runpy.py", line 85, in _run_code
        exec(code, run_globals)
      File "D:\Anaconda3\Scripts\wooify.exe\__main__.py", line 5, in <module>
      File "d:\anaconda3\lib\site-packages\wooey\backend\command_line.py", line 8, in <module>
        from .. import django_compat
      File "d:\anaconda3\lib\site-packages\wooey\django_compat.py", line 51, in <module>
        from django.contrib.contenttypes.fields import GenericForeignKey
      File "d:\anaconda3\lib\site-packages\django\contrib\contenttypes\fields.py", line 5, in <module>
        from django.contrib.contenttypes.models import ContentType
      File "d:\anaconda3\lib\site-packages\django\contrib\contenttypes\models.py", line 159, in <module>
        class ContentType(models.Model):
      File "d:\anaconda3\lib\site-packages\django\db\models\base.py", line 94, in __new__
        app_config = apps.get_containing_app_config(module)
      File "d:\anaconda3\lib\site-packages\django\apps\registry.py", line 239, in get_containing_app_config
        self.check_apps_ready()
      File "d:\anaconda3\lib\site-packages\django\apps\registry.py", line 124, in check_apps_ready
        raise AppRegistryNotReady("Apps aren't loaded yet.")
    django.core.exceptions.AppRegistryNotReady: Apps aren't loaded yet.
    

    Installing django 1.8 (pip install django==1.8) fixed it (albeit giving a different error, I'll look into it and open a different issue if needed).

    opened by yoavram 19
  • job expiration not working

    job expiration not working

    Hi ,

    I still have problem with WOOEY_JOB_EXPIRATION parameter. I set this to:

    user_job_expire=timedelta(hours=1) anonymous_job_expire=timedelta(minutes=10)

    WOOEY_JOB_EXPIRATION = {'user':user_job_expire,'anonymous':anonymous_job_expire}

    But no success. Please help me to fix

    Aidas

    opened by aydas 17
  • Import files to script

    Import files to script

    How can I import my custom files?
    I need to use my files inside the script.
    print(os.path.dirname(sys.argv[0])) gives me /opt/DO_wooey/media/wooey_scripts, I decided to put my custom files in this directory, but it does not work, the script still gives me this error: OSError: SavedModel file does not exist at: test_build/{saved_model.pbtxt|saved_model.pb}. screen shot 2017-08-21 at 23 43 25

    opened by toert 17
  • Script url changes

    Script url changes

    This addresses an issue raised in #43. It creates a new scheme for script urls and versions and adds in a dropdown box for the user to select older scripts.

    opened by Chris7 17
  • Non-UTF-8 code in django-admin.exe but no encoding declared

    Non-UTF-8 code in django-admin.exe but no encoding declared

    Running wooify -p test produces:

      File "D:\Anaconda3\envs\wooey\Scripts\django-admin.exe", line 1
    SyntaxError: Non-UTF-8 code starting with '\x90' in file D:\Anaconda3\envs\wooey\Scripts\django-admin.exe on line 1, but no encoding declared; see http://python.org/dev/peps/pep-0263/ for details
    Traceback (most recent call last):
      File "d:\anaconda3\envs\wooey\lib\runpy.py", line 170, in _run_module_as_main
        "__main__", mod_spec)
      File "d:\anaconda3\envs\wooey\lib\runpy.py", line 85, in _run_code
        exec(code, run_globals)
      File "D:\Anaconda3\envs\wooey\Scripts\wooify.exe\__main__.py", line 9, in <module>
      File "d:\anaconda3\envs\wooey\lib\site-packages\wooey\backend\command_line.py", line 81, in bootstrap
        with open(to_name, 'wb') as new_file:
    FileNotFoundError: [Errno 2] No such file or directory: 'D:\\workspace\\wooeytest\\test\\test\\.\\middleware.py'
    

    Windows 7, 64bit, Python 3.4.3, Django 1.8.4, wooey 0.9.1.

    opened by yoavram 15
  • i18n: Add translation files for de, fr, nl.

    i18n: Add translation files for de, fr, nl.

    To begin process of adding working i18n these files add base translations from the current strings. They are machine translated using Google's service (https://translate.google.com/toolkit/) and so likely broken.

    The NL looks vaguely right to my limited knowledge but I will check them all with native speakers.

    opened by mfitzp 15
  • Can not execute the task when I add TEMPLATES.DIRS

    Can not execute the task when I add TEMPLATES.DIRS

    I want to custom the templates, so I add the string "os.path.join(BASE_DIR, 'templates')," into the DIRS list of settings.TEMPLATES, then I copy the templates directory to my project. I can custom the templates successfully, but get the following errors when I execute the task: 10:54:49 web.1 | Internal Server Error: /scripts/violinplot/ 10:54:49 web.1 | Traceback (most recent call last): 10:54:49 web.1 | File "/home/xujm/soft/Anaconda/anaconda3/envs/wooey/lib/python3.5/site-packages/django/utils/datastructures.py", line 83, in getitem 10:54:49 web.1 | list_ = super(MultiValueDict, self).getitem(key) 10:54:49 web.1 | KeyError: 'wooey_type' 10:54:49 web.1 | 10:54:49 web.1 | During handling of the above exception, another exception occurred: 10:54:49 web.1 | 10:54:49 web.1 | Traceback (most recent call last): 10:54:49 web.1 | File "/home/xujm/soft/Anaconda/anaconda3/envs/wooey/lib/python3.5/site-packages/django/core/handlers/base.py", line 149, in get_response 10:54:49 web.1 | response = self.process_exception_by_middleware(e, request) 10:54:49 web.1 | File "/home/xujm/soft/Anaconda/anaconda3/envs/wooey/lib/python3.5/site-packages/django/core/handlers/base.py", line 147, in get_response 10:54:49 web.1 | response = wrapped_callback(request, *callback_args, **callback_kwargs) 10:54:49 web.1 | File "/home/xujm/soft/Anaconda/anaconda3/envs/wooey/lib/python3.5/site-packages/django/views/generic/base.py", line 68, in view 10:54:49 web.1 | return self.dispatch(request, *args, **kwargs) 10:54:49 web.1 | File "/home/xujm/soft/Anaconda/anaconda3/envs/wooey/lib/python3.5/site-packages/django/views/generic/base.py", line 88, in dispatch 10:54:49 web.1 | return handler(request, *args, **kwargs) 10:54:49 web.1 | File "/home/xujm/soft/Anaconda/anaconda3/envs/wooey/lib/python3.5/site-packages/wooey/views/views.py", line 160, in post 10:54:49 web.1 | data = super(WooeyScriptView, self).post(*args, **kwargs) 10:54:49 web.1 | File "/home/xujm/soft/Anaconda/anaconda3/envs/wooey/lib/python3.5/site-packages/wooey/views/views.py", line 91, in post 10:54:49 web.1 | form = utils.get_master_form(pk=post['wooey_type']) 10:54:49 web.1 | File "/home/xujm/soft/Anaconda/anaconda3/envs/wooey/lib/python3.5/site-packages/django/utils/datastructures.py", line 85, in getitem 10:54:49 web.1 | raise MultiValueDictKeyError(repr(key)) 10:54:49 web.1 | django.utils.datastructures.MultiValueDictKeyError: "'wooey_type'"

    opened by zjhzxjm 14
  • True/False params are not output when executing a command

    True/False params are not output when executing a command

    Hey guys, I have an argument that looks like this:

    main_options_group.add_argument('--my_optional_arg', default=False, action='store_true')
    

    This is correctly stored as a ScriptParameters object when I tick the checkbox in the Wooey interface. However when Celery executes the command it does not include --my_optional_arg in the command that is executed.

    Looking at the source, it seems that param.get_subprocess_value() does not return a "value" for the param, causing the condition in the "if" statement on line 79 of utils.py to fail and ultimately preventing the param from being output correctly.

    See my pdb log below. You can see that after executing line 78 "subproc_value" is None, despite param.value being True

    (Pdb) l
     73             if subproc_dict is None:
     74                 continue
     75             subproc_param = subproc_dict['parameter']
     76             if subproc_param not in param_dict:
     77                 param_dict[subproc_param] = []
     78  ->         subproc_value = subproc_dict.get('value', None)
     79             if subproc_value:
     80                 param_dict[subproc_param].append(subproc_value)
     81         for param, values in param_dict.items():
     82             for value in values:
     83                 if param:
    (Pdb) n
    > .../wooey/backend/utils.py(79)get_job_commands()
    -> if subproc_value:
    (Pdb) subproc_value
    (Pdb) param._value
    u'true'
    (Pdb) param.value
    True
    (Pdb) param.get_subprocess_value()
    {u'parameter': u'--my_optional_arg'}
    
    opened by hottwaj 14
  • WOOEY_REALTIME_CACHE is not work for me

    WOOEY_REALTIME_CACHE is not work for me

    Please, show working example of useing it. How must I set my settings for the realtime update of the script output? I see only one result after end of my script.

    opened by abicorios 12
  • Cannot start Celery process

    Cannot start Celery process

    Hi, as someone new to Django I've been trying to use Wooey as a front end to several testing scripts. Unfortunately, running them without Celery seems to block everything and crash and I can't manage to get Celery running. As per the documentation (I'm on Windows), I've been running

    python manage.py celery beat
    python manage.py celery worker -c 1 -l info
    python manage.py runserver
    

    but the celery worker process never really starts. The relevant error seems to be:

    [2016-06-22 13:53:35,522: INFO/Worker-1] child process 7068 calling self.run()
    [2016-06-22 13:53:35,663: ERROR/Worker-1] Process Worker-1
    Traceback (most recent call last):
      File "C:\{path}\Programs\Python\Python35-32\lib\site-packages\kombu\utils\__init__.py", line 323, in __get__
        return obj.__dict__[self.__name__]
    KeyError: 'backend'
    

    Then a series of cascading errors, then something like Process 'Worker-14' pid:4992 exited with 'exitcode 1'. I have spent a lot of time trying to google the source of the problem, but I am too new to Django and Celery to figure this out. Is there something I should have done, that is so basic it isn't in the docs?

    Alternately, the scripts we are trying to run with Wooey seem to work perfectly fine with Celery flagged as false, as long as we take the threading out of them (which is used to send and receive data through a serial port). Will getting Celery running solve this problem or is this too far away from the intended usage of Wooey?

    opened by arolling 12
  • Documentation not building

    Documentation not building

    I ran into some questions not covered in the documentation. Through the issues here and, trial and error I managed to figure it out. My plan was to add some information to the docs for other users. However, it seems that the docs on readthedocs are not the same as here on Github and I also can´t build the docs myself through Sphinx. Is there perhaps an issue with the setup of the docs?

    opened by michielap 0
  • problem with Python3.10 and Ubuntu 22.04

    problem with Python3.10 and Ubuntu 22.04

    Dear developper

    I have a problem. I was using wooey on ubuntu 20.04 and python3.8 and it was working perfectly. However, last week i update ubuntu and python and now it is not working anymore. the problem is that i get error in the wooey web server but i can not find out any information about the error to try to debug.

    can you please help me?

    cheers Luigi

    opened by lfaino 0
  • Official Docker Image

    Official Docker Image

    Was glad to see Wooey available on docker. https://hub.docker.com/u/wooey I downloaded the latest image and ran it , but it only executes the tests and then exists. What am i missing ?

    documentation request 
    opened by pymenow 5
  • Is there any way to add Scrapy based project in Wooey ?

    Is there any way to add Scrapy based project in Wooey ?

    I want to add some of my Scrapy based projects Wooey. As I can see only single script based project can be added in Wooey, so I want to know, is there any way to add Scrapy like project which have a file structure with multiple scripts?

    opened by adnan-alam 1
  • Mutually exclusive groups don't appear to work

    Mutually exclusive groups don't appear to work

    A parser with a mutually exclusive argument group behaves pretty strangely. I've noted two problems:

    • The arguments always end up as optional, even if the group is marked as required.
      • This is really the larger issue for me
    • You can enter input for both and don't get an error until the script actually runs

    Here's a small script recreating both issues:

    import argparse
    import sys
    
    parser = argparse.ArgumentParser(
        description="Parser with required mutually exclusive group."
    )
    parser.add_argument("--arg", type=str, required=True)
    
    mutex_grp = parser.add_mutually_exclusive_group(required=True)
    mutex_grp.add_argument("--first", action="store_true")
    mutex_grp.add_argument("--second", action="store_true")
    
    
    def main():
        args = parser.parse_args()
        print(args)
        return 0
    
    
    if __name__ == "__main__":
        sys.exit(main())
    

    I think Gooey has support for mutex groups, so maybe inspiration can be taken from there?

    bug 
    opened by slarse 2
  • Python script works on command line but not in Wooey

    Python script works on command line but not in Wooey

    I've got a non-technical employee that needs access to Python scripts that we need to use to conduct our business. I've gotten Wooey working but one of the scripts breaks. I love this concept - my employee doesn't understand Python, Linux, or any other myriad of aspects involved with running this script. So, if I can get this working, it'll be awesome.

    The script is called dnstwist.py (https://github.com/elceef/dnstwist/blob/master/dnstwist.py). In the Wooey console, it generates the following errors:

    Traceback (most recent call last): File "/home/ubuntu/twisty/twisty/user_uploads/wooey_scripts/dnstwist.py", line 1009, in main() File "/home/ubuntu/twisty/twisty/user_uploads/wooey_scripts/dnstwist.py", line 1003, in main p_cli(generate_cli(domains)) File "/home/ubuntu/twisty/twisty/user_uploads/wooey_scripts/dnstwist.py", line 120, in p_cli sys.stdout.write(data) UnicodeEncodeError: 'ascii' codec can't encode characters in position 3628-3629: ordinal not in range(128)

    I'm pretty sure it has to do with how the data is formatted in 3 columns in the output but I don't know how to fix it. Any help would be greatly appreciated.

    opened by razermouse 8
Releases(v0.13.2)
  • v0.13.2(Oct 5, 2022)

    Note: 0.13.0/1 were failed releases due to github action issues. This is a light release, mostly around bug fixes and minor quality of life improvements.

    New Features

    Scripts now track who created and last updated them #354

    Improvements

    Improvements to task error tracking #340 ScriptParameter field extended to support users who have a LOT of choices #351

    Fixes

    Search works again #355 Scrapbook works again #339 Fixture loading #356

    Source code(tar.gz)
    Source code(zip)
  • v0.12.0(Apr 16, 2020)

    New Features

    Script deletion experience improved #313 Spanish translations added #306 Django 2.2 and Django 3.0 Support #284 Official Docker image added at https://hub.docker.com/r/wooey/wooey Admin interface added for Script Versions

    Updates

    Builds have been moved from Appveyor and Travis to Github Actions #314 Update to boto3 #304

    Source code(tar.gz)
    Source code(zip)
  • 0.11.0(Nov 30, 2019)

    Wooey 0.11.0

    New Features

    1. WooeyWidgets, which enable custom form input elements to be created and used. #175
    2. Korean translations added #254
    3. Improved UI to not allow job operations on message brokers that do not allow them. #285
    4. Django2 Support. #271

    Bug Fixes

    1. Fix bug where all parameters from all subparsers were needed to validate in order to submit a job. #299
    2. Fix bug with escaping parameter arguments that prevented special characters from being used. #296
    3. Fix bug where multiple initial files for a cloned job were not populated. #255
    4. Fix bug in parsing multiple arguments where argparse specifies action=append #270
    5. Fix bug in cleaning up empty jobs where workers cannot be contacted. #277
    6. Fix bug where scripts on remote workers were not invalidated after updates on main server. #145
    7. Fix race condition where celery tasks would start before database transaction finished. #297
    8. Handle characters in script version that need to be escaped for urls. #298
    Source code(tar.gz)
    Source code(zip)
  • 0.10.0(May 20, 2018)

    Wooey 0.10.0

    New Features

    1. Added docker files for development and example deployments!
    2. Better documentation!:
    1. Subparser Support! Subparsers are now supported for argparse. With this completed, we can begin adding support for other interfaces such as click
    2. Added checksums to scripts. Scripts now have a checksum so duplicate scripts are not created (and this paves the way for supporting better automatic updates of scripts)
    3. Jobs can be cloned into previous script versions. Previously, the clone button cloned a job into the latest version of a script. Now, jobs can be cloned into previous versions.

    Bug Fixes

    1. Errors from adding scripts are returned as a message instead of an Exception.
    2. Dead jobs are now automatically cleaned up. (this removes jobs that are in a state of limbo due to a server crash, etc.).
    3. Attempts to access a job that a user did not have permission to access resulted in a 500 error. This now shows the proper page indicating the user has no access to that job.
    4. Fixed parsing of default argument parameters that were lists or functions.
    5. Fixed zip files overwriting nested output.

    Version Support

    1. Supports Django 1.10/1.11 and Celery 4.x
    2. Dropped compatibility layers for Django 1.7 and python 3.3
    Source code(tar.gz)
    Source code(zip)
  • 0.9.10(Dec 20, 2017)

  • 0.9.9(Sep 5, 2017)

    This is a quick release to address https://github.com/wooey/Wooey/issues/189, where clinto was not reporting errors in parsing scripts through the frontend.

    Source code(tar.gz)
    Source code(zip)
  • 0.9.8(Jan 1, 2017)

    Wooey v0.9.8

    This is primarily a release to address issue #163 where updated scripts would duplicate group names. However, it is a huge release in terms of internationalization!

    New Features

    1. Internationalization is now enabled by default in the bootstrapped version of Wooey.
    2. Simplified Chinese support has been added thanks to @zjhzxjm!

    Bug Fixes

    1. Parameter groups could be duplicated
    2. New parameters on script updates would be made when parameter order was rearranged
    3. Fixed CSS issue causing the script search sidebar to be hidden
    Source code(tar.gz)
    Source code(zip)
  • 0.9.6(Nov 29, 2016)

  • 0.9.5(Sep 11, 2016)

    This addresses the remaining bugs from version 0.93: #148 and #149 -- Switch to using threads to monitor process output for better cross-platform compatibility #152 -- Fix for argumentless scripts.

    Source code(tar.gz)
    Source code(zip)
  • 0.9.4(Aug 16, 2016)

  • v0.9.3(Jul 28, 2016)

    Major Features

    Real time updates of Job status

    The output of scripts as well and execution status of a script will be updated in real time so there is no need to reload a page for job updates. By default, this makes use of the database to store job information, but can be easily configured to store this information in a cache layer via the WOOEY_REALTIME_CACHE setting.

    Improved updates to scripts

    Script parameters are now more intelligently created and parameters that are unchanged between script versions will not be updated. Via the command line, this behavior can be achieved by adding the --update flag to the addscript command and is automatically performed when updating scripts via the admin.

    Reduced file duplication

    Wooey now performs a checksum on uploaded files to identify duplicated files, and adds a permission layer to users that allows multiple users to access the same uploads (provided that user had the file in the first place to upload!). As an added benefit, this setup paves the way for a media dashboard that will allow users and groups to easily share files with one another.

    Minor Features

    • An awesome user, @manicmaniac , added translations for Japanese.
    • Automatic deletion of jobs older than a given date
    Source code(tar.gz)
    Source code(zip)
Owner
Wooey
Automatic web UIs for Python scripts
Wooey
PWA is a simple Django app to develope and deploy a Progressive Web Application.

PWA PWA is a simple Django app to develope and deploy a Progressive Web Application. Detailed documentation is in the "docs" directory. Quick start Ad

Nima 6 Dec 09, 2022
wagtail_tenants is a Django/Wagtail app to provide multitenancy to your wagtail project.

wagtail-tenants wagtail_tenants is a Django/Wagtail app to provide multitenancy to your wagtail project. You are able to run a main Wagtail Site and f

<bbr> 11 Nov 20, 2022
This is raw connection between redis server and django python app

Django_Redis This repository contains the code for this blogpost. Running the Application Clone the repository git clone https://github.com/xxl4tomxu9

Tom Xu 1 Sep 15, 2022
Per object permissions for Django

django-guardian django-guardian is an implementation of per object permissions [1] on top of Django's authorization backend Documentation Online docum

3.3k Jan 04, 2023
Sistema administrador de contranas desarrollador en Django

Sistema Contrasenas Desarrolado en Django Proyecto sistema de administracion de contraseñas, de la experiencia educativa Programacion Segura Descripci

Ibrain Rodriguez Espinoza 1 Sep 24, 2022
Media-Management with Grappelli

Django FileBrowser Media-Management with Grappelli. The FileBrowser is an extension to the Django administration interface in order to: browse directo

Patrick Kranzlmueller 913 Dec 28, 2022
Tutorial para o projeto negros.dev - A Essência do Django

Negros Dev Tutorial para o site negros.dev Este projeto foi feito com: Python 3.8.9 Django 3.1.8 Bootstrap 4.0 Como rodar o projeto? Clone esse reposi

Regis Santos 6 Aug 12, 2022
Django With VueJS Blog App

django-blog-vue-app frontend Project setup yarn install Compiles and hot-reload

Flavien HUGS 2 Feb 04, 2022
A Django app for working with BTCPayServer

btcpay-django A Django app for working with BTCPayServer Installation pip install btcpay-django Developers Release To cut a release, run bumpversion,

Crawford 3 Nov 20, 2022
A Django web application that allows you to be in the loop about everything happening in your neighborhood.

A Django web application that allows you to be in the loop about everything happening in your neighborhood. From contact information of different handyman to meeting announcements or even alerts.

Kennedy Ngugi Mwaura 3 Dec 11, 2022
mirage ~ ♪ extended django admin or manage.py command.

mirage ~ ♪ extended django admin or manage.py command. ⬇️ Installation Installing Mirage with Pipenv is recommended. pipenv install -d mirage-django-l

Shota Shimazu 6 Feb 14, 2022
Packs a bunch of smaller CSS files together from 1 folder.

Packs a bunch of smaller CSS files together from 1 folder.

1 Dec 09, 2021
django-quill-editor makes Quill.js easy to use on Django Forms and admin sites

django-quill-editor django-quill-editor makes Quill.js easy to use on Django Forms and admin sites No configuration required for static files! The ent

lhy 139 Dec 05, 2022
Learn Python and the Django Framework by building a e-commerce website

The Django-Ecommerce is an open-source project initiative and tutorial series built with Python and the Django Framework.

Very Academy 275 Jan 08, 2023
React.JS - Django Application Template

OTS React.JS - DJango Web Application (UNTESTED) This repository servers as a template for creating React.JS - Django Web Applications. Note that the

Darryl See Wei Shen 5 Aug 19, 2022
Awesome Django Markdown Editor, supported for Bootstrap & Semantic-UI

martor Martor is a Markdown Editor plugin for Django, supported for Bootstrap & Semantic-UI. Features Live Preview Integrated with Ace Editor Supporte

659 Jan 04, 2023
REST API con Python, Django y MySQL (GET, POST, PUT, DELETE)

django_api_mysql REST API con Python, Django y MySQL (GET, POST, PUT, DELETE) REST API con Python, Django y MySQL (GET, POST, PUT, DELETE)

Andrew 1 Dec 28, 2021
A simple E-commerce shop made with Django and Bulma

Interiorshop A Simple E-Commerce app made with Django Instructions Make sure you have python installed Step 1. Open a terminal Step 2. Paste the given

Aditya Priyadarshi 3 Sep 03, 2022
Alt1-compatible widget host for RuneScape 3

RuneKit Alt1-compatible toolbox for RuneScape 3, for Linux and macOS. Compatibility macOS installation guide Running This project use Poetry as packag

Manatsawin Hanmongkolchai 75 Nov 28, 2022
Flashback is an awesome, retro IRC based app built using Django

Flashback Flashback is an awesome, retro IRC based app built using Django (and the Django Rest Framework) for the backend as well as React for the fro

Unloading Gnat 1 Dec 22, 2021