This is a repository for a web application developed with Django, built with Crowdbotics

Overview

assignment_32558

This is a repository for a web application developed with Django, built with Crowdbotics

Table of Contents

  1. Project Structure
  2. Features
  3. Getting Started: Backend
  4. Usage

Project Structure

..
├── home                           # Starter home app
├── modules                        # Crowdbotics Modules app
├── assignment_32558  # Django project configurations
├── static                         # Static assets
├── users                          # Starter users app
├── web_build                      # React Native Web build
├── ...
├── README.md
└── ...

Features

  1. Local Authentication using email and password with allauth
  2. Rest API using django rest framework
  3. Forgot Password
  4. Bootstrap4
  5. Toast Notification
  6. Inline content editor in homepage

Getting Started: Backend

Following are instructions on setting up your development environment.

The recommended way for running the project locally and for development is using Docker.

It's possible to also run the project without Docker.

Docker Setup (Recommended)

This project is set up to run using Docker Compose by default. It is the recommended way. You can also use existing Docker Compose files as basis for custom deployment, e.g. Docker Swarm, kubernetes, etc.

  1. Install Docker:

  2. Clone this repo and cd assignment_32558

  3. Make sure Pipfile.lock exists. If it doesn't, generate it with:

    $ docker run -it --rm -v "$PWD":/django -w /django python:3.7 pip3 install --no-cache-dir -q pipenv && pipenv lock
  4. Use .env.example to create .env:

    $ cp .env.example .env
  5. Update .env and docker-compose.override.yml replacing all

    1. Use python -c 'from secrets import token_urlsafe; print("SECRET_KEY=" + token_urlsafe(50))' to generate the random SECRET_KEY
  6. Start up the containers:

    $ docker-compose up

    This will build the necessary containers and start them, including the web server on the host and port you specified in .env.

    Current (project) directory will be mapped with the container meaning any edits you make will be picked up by the container.

  7. Seed the Postgres DB (in a separate terminal):

    $ docker-compose exec web python3 manage.py makemigrations
    $ docker-compose exec web python3 manage.py migrate
  8. Create a superuser if required:

    $ docker-compose exec web python3 manage.py createsuperuser

    You will find an activation link in the server log output.

Local Setup (Alternative to Docker)

  1. Postgresql
  2. Python

Installation

  1. Install pipenv
  2. Clone this repo and cd assignment_32558
  3. Run pip install --user --upgrade pipenv to get the latest pipenv version.
  4. Run pipenv --python 3.6
  5. Run pipenv install
  6. Run cp .env.example .env
  7. Update .env file DATABASE_URL with your database_name, database_user, database_password, if you use postgresql. Can alternatively set it to sqlite:////tmp/my-tmp-sqlite.db, if you want to use sqlite for local development.

Getting Started

  1. Run pipenv shell
  2. Run python manage.py makemigrations
  3. Run python manage.py migrate
  4. Run python manage.py runserver

Usage

Admin Panel

Admin Panel can be accessed through http://localhost:8000/admin/. If you are the Project Owner, admin credentials can be generated from App > Settings on Crowdbotics App Dashboard. If not, please request your PM or Project Owner to generate admin credentials and share with you.

API Documentation

API Documentation is generated automatically and can be access through http://localhost:8000/api-docs/. Please make sure you are signed in to the admin panel before navigating to this page.

Owner
Crowdbotics
Crowdbotics user-generated applications. Visit www.crowdbotics.com to build your next application.
Crowdbotics
Boilerplate Django Blog for production deployments!

CFE Django Blog THIS IS COMING SOON This is boilerplate code that you can use to learn how to bring Django into production. TLDR; This is definitely c

Coding For Entrepreneurs 26 Dec 09, 2022
A pickled object field for Django

django-picklefield About django-picklefield provides an implementation of a pickled object field. Such fields can contain any picklable objects. The i

Gintautas Miliauskas 167 Oct 18, 2022
Running in outer Django project folder (cd django_project)

Django Running in outer Django project folder (cd django_project) Make Migrations python manage.py makemigrations Migrate to Database python manage.py

1 Feb 07, 2022
Build reusable components in Django without writing a single line of Python.

Build reusable components in Django without writing a single line of Python. {% #quote %} {% quote_photo src="/project-hail-mary.jpg" %} {% #quot

Mitchel Cabuloy 277 Jan 02, 2023
Set the draft security HTTP header Permissions-Policy (previously Feature-Policy) on your Django app.

django-permissions-policy Set the draft security HTTP header Permissions-Policy (previously Feature-Policy) on your Django app. Requirements Python 3.

Adam Johnson 78 Jan 02, 2023
A debug/profiling overlay for Django

Django Debug Toolbar The Django Debug Toolbar is a configurable set of panels that display various debug information about the current request/respons

David Cramer 228 Oct 17, 2022
Hello world written in Django.

Learning Django 💡 create a virtual environment create python -m venv ./venv. this virtualenv file will be excluded by .gitignore activate the virtual

Dipak giri 4 Nov 26, 2021
Automatically deletes old file for FileField and ImageField. It also deletes files on models instance deletion.

Django Cleanup Features The django-cleanup app automatically deletes files for FileField, ImageField and subclasses. When a FileField's value is chang

Ilya Shalyapin 838 Dec 30, 2022
Serve files with Django.

django-downloadview django-downloadview makes it easy to serve files with Django: you manage files with Django (permissions, filters, generation, ...)

Jazzband 328 Dec 07, 2022
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
Get inside your stronghold and make all your Django views default login_required

Stronghold Get inside your stronghold and make all your Django views default login_required Stronghold is a very small and easy to use django app that

Mike Grouchy 384 Nov 23, 2022
Basic Form Web Development using Python, Django and CSS

thebookrain Basic Form Web Development using Python, Django and CSS This is a basic project that contains two forms - borrow and donate. The form data

Ananya Dhulipala 1 Nov 27, 2021
Twitter-clone using Django (DRF) + VueJS

Twitter Clone work in progress 🚧 A Twitter clone project Table Of Contents About the Project Built With Getting Started Running project License Autho

Ahmad Alwi 8 Sep 08, 2022
☄️ Google Forms autofill script

lazrr 'Destroy Them With Lazers' - Knife Party, 2011 Google Forms autofill script Installation: pip3 install -r requirements.txt Usage: python3 lazrr.

Serezha Rakhmanov 12 Jun 04, 2022
An insecure login and registration website with Django.

An insecure login and registration website with Django.

Luis Quiñones Requelme 1 Dec 05, 2021
A package to handle images in django

Django Image Tools Django Image Tools is a small app that will allow you to manage your project's images without worrying much about image sizes, how

The Bonsai Studio 42 Jun 02, 2022
Use watchfiles in Django’s autoreloader.

django-watchfiles Use watchfiles in Django’s autoreloader. Requirements Python 3.7 to 3.10 supported. Django 2.2 to 4.0 supported. Installation Instal

Adam Johnson 43 Dec 14, 2022
Plug and play continuous integration with django and jenkins

django-jenkins Plug and play continuous integration with Django and Jenkins Installation From PyPI: $ pip install django-jenkins Or by downloading th

Mikhail Podgurskiy 941 Oct 22, 2022
Django Query Capture can check the query situation at a glance, notice slow queries, and notice where N+1 occurs.

django-query-capture Overview Django Query Capture can check the query situation at a glance, notice slow queries, and notice where N+1 occurs. Some r

GilYoung Song 80 Nov 22, 2022
Automatic class scheduler for Texas A&M written with Python+Django and React+Typescript

Rev Registration Description Rev Registration is an automatic class scheduler for Texas A&M, aimed at easing the process of course registration by gen

Aggie Coding Club 21 Nov 15, 2022