getHarsh
Table of contents
- Technology stack used
- What's included
- Documentation
Technology stack used
- Python3 3.2.0
- Django Web Framework 3.1.7
- Wagtail CMS for content administration.
- PostgreSQL 10.5 is the database we use in production and locally.
- Psycopg is the Python library that lets Python talk to Postgres.
- Amazon S3 provides object storage through a web service
- interface
- Gunicorn interface between nginx and Django
- Lightsail offers you everything needed to build an application or website
- Route53 instance between instance ip and go daddy
- Certbot for ssl certificate
What's included
Within the download you'll find the following directories and files, logically grouping common assets and providing both compiled and minified variations. You'll see something like this:
GETHARSH/
├──blog/
│ ├── __init.py__
│ ├── admin.py
│ ├── apps.py
│ ├── feeds.py
│ ├── forms.py
│ ├── models.py
│ ├── tests.py
│ ├── urls.py
│ ├── views.py
│ ├── wagtail_hooks.py
├──blog_extension/
│ ├── __init.py__
│ ├── admin.py
│ ├── apps.py
│ ├── forms.py
│ ├── models.py
│ ├── tests.py
│ ├── urls.py
│ ├── views.py
├──cmswagtail/
│ ├── __init.py__
│ ├── settings/
│ │ ├── __init.py__
│ │ ├── base.py
│ │ ├── dev.py
│ │ ├── production.py
│ ├── static/
│ ├── templates/
│ ├── __init__.py
│ ├── urls.py
│ ├── wsgi.py
├──home/
│ ├── __init__.py
│ ├── context_processors.py
│ ├── models.py
├──search/
│ ├── __init__.py
│ ├── views.py
├──user_management/
│ ├── __init.py__
│ ├── admin.py
│ ├── apps.py
│ ├── forms.py
│ ├── models.py
│ ├── signals.py
│ ├── tests.py
│ ├── views.py
├──manage.py/
Static contains static files(like css, js and media), templates contain the html pages. For further information visit Django documentation.
For further information on various .py files:
- admin.py file is used to display your models in the Django admin panel. You can also customize your admin panel.
- manage.py is Django’s command-line utility for administrative tasks, click here for more info feeds.py is used for creating RSS Feeds with Django, click here for more info
- forms.py is used for creating custom forms through models, click here for more info
- models.py is the single, definitive source of information about your data, click here for more info
- urls.py is used for handling urls on website, click here for more info
- views.py contains Python function that takes a Web request and returns a Web response, click here for more info
- base.py contains the settings of the project through which the website runs, click here for more info
- wsgi.py contains calling convention for web servers to forward requests to web applications or frameworks written in the Python programming language. click here for more info
Documentation
Here is a flow chart of how the project works
Installation and configuration
Clone the repository
Using the console, navigate to the root directory in which your projects live and clone this project's repository:
git clone [email protected]:getHarsh/getHarsh.git
cd getHarsh
// make your python virtualenv
virtualenv -p python3 virtualenv
source virtualenv/bin/activate
with virtualenv activated and inside the project directory
pip install -r requirements.txt
./manage.py migrate
./manage.py createsuperuser
./manage.py runserver