Project Name: Project Management App

Update Project Delete Project

Project description

(https://projectmanagement.oskarcode.com/)
A web app which allow user to:
- Create/update/delete project
-Create/update/delete steps under per project
-Create/update/delete issues under per step
-Create/update/delete solutions under per issue 
-Display all steps under a project, all issues under a step, all solutions under an issue

Project steps

Add Steps

Step1:Create models

Update step Delete step

Step description:

- create project,steps,issues and solutions models, each model is connnected to upper model with Foreign key. The relationship is
one project can have many steps, one step can have many issues, one issue can have many solutions

Step2:Create views

Update step Delete step

Step description:

- create views for list/create/update/delete for each model. Use Model.objects.all() for listing, 
use field_name = request.POST['field_name'] for create, use Model.field_name = request.POST['field_name'] for update,
use object.delete() for deletion. 

Step3:Create templates

Update step Delete step

Step description:

- Use post forms for the post methods, use css box for the lists. 

Step4:Create URLs

Update step Delete step

Step description:

create path to each of the view

Step5:Create login/logout and assign Mixin decoraters to some views

Update step Delete step

Step description:

In order to only allow the authenticated user to make changes to the database, use class-based login/logout view to authenticate

Step6:Set up second aws free account

Update step Delete step

Step description:

Visit AWS sign up page to spin up a free tier server(https://aws.amazon.com/resources/create-account/)

Step7:Git clone from remote repo

Update step Delete step

Step description:

 Clone the codes from github with git clone( provide user name and token)

Step8:Set up gunicoen socket, gunicorn service file and nginx configuration file

Update step Delete step

Step description:

This tutorial will help a lot( https://medium.com/@ganapriyakheersagar/hosting-django-application-with-nginx-and-gunicorn-in-production-99e64dc4345a) 

Step9:Set up DNS in Cloudflare

Update step Delete step

Step description:

 Add a new A record to the new subdomain with new IP address