diff --git a/Code/nestor/Password_Generator/Password_Generator/__init__.py b/Code/nestor/Password_Generator/Password_Generator/__init__.py
new file mode 100644
index 00000000..e69de29b
diff --git a/Code/nestor/Password_Generator/Password_Generator/asgi.py b/Code/nestor/Password_Generator/Password_Generator/asgi.py
new file mode 100644
index 00000000..4e8bf2fd
--- /dev/null
+++ b/Code/nestor/Password_Generator/Password_Generator/asgi.py
@@ -0,0 +1,16 @@
+"""
+ASGI config for Password_Generator project.
+
+It exposes the ASGI callable as a module-level variable named ``application``.
+
+For more information on this file, see
+https://docs.djangoproject.com/en/4.0/howto/deployment/asgi/
+"""
+
+import os
+
+from django.core.asgi import get_asgi_application
+
+os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'Password_Generator.settings')
+
+application = get_asgi_application()
diff --git a/Code/nestor/Password_Generator/Password_Generator/settings.py b/Code/nestor/Password_Generator/Password_Generator/settings.py
new file mode 100644
index 00000000..cfebac17
--- /dev/null
+++ b/Code/nestor/Password_Generator/Password_Generator/settings.py
@@ -0,0 +1,126 @@
+"""
+Django settings for Password_Generator project.
+
+Generated by 'django-admin startproject' using Django 4.0.3.
+
+For more information on this file, see
+https://docs.djangoproject.com/en/4.0/topics/settings/
+
+For the full list of settings and their values, see
+https://docs.djangoproject.com/en/4.0/ref/settings/
+"""
+
+from pathlib import Path
+
+# Build paths inside the project like this: BASE_DIR / 'subdir'.
+BASE_DIR = Path(__file__).resolve().parent.parent
+
+
+# Quick-start development settings - unsuitable for production
+# See https://docs.djangoproject.com/en/4.0/howto/deployment/checklist/
+
+# SECURITY WARNING: keep the secret key used in production secret!
+SECRET_KEY = 'django-insecure-li311$%m*@(9$$v&abk(4!xuo)galip4!h25s)le35q6uo=0va'
+
+# SECURITY WARNING: don't run with debug turned on in production!
+DEBUG = True
+
+ALLOWED_HOSTS = []
+
+
+# Application definition
+
+INSTALLED_APPS = [
+ 'django.contrib.admin',
+ 'django.contrib.auth',
+ 'django.contrib.contenttypes',
+ 'django.contrib.sessions',
+ 'django.contrib.messages',
+ 'django.contrib.staticfiles',
+
+ 'Password_app'
+]
+
+MIDDLEWARE = [
+ 'django.middleware.security.SecurityMiddleware',
+ 'django.contrib.sessions.middleware.SessionMiddleware',
+ 'django.middleware.common.CommonMiddleware',
+ 'django.middleware.csrf.CsrfViewMiddleware',
+ 'django.contrib.auth.middleware.AuthenticationMiddleware',
+ 'django.contrib.messages.middleware.MessageMiddleware',
+ 'django.middleware.clickjacking.XFrameOptionsMiddleware',
+]
+
+ROOT_URLCONF = 'Password_Generator.urls'
+
+TEMPLATES = [
+ {
+ 'BACKEND': 'django.template.backends.django.DjangoTemplates',
+ 'DIRS': [],
+ 'APP_DIRS': True,
+ 'OPTIONS': {
+ 'context_processors': [
+ 'django.template.context_processors.debug',
+ 'django.template.context_processors.request',
+ 'django.contrib.auth.context_processors.auth',
+ 'django.contrib.messages.context_processors.messages',
+ ],
+ },
+ },
+]
+
+WSGI_APPLICATION = 'Password_Generator.wsgi.application'
+
+
+# Database
+# https://docs.djangoproject.com/en/4.0/ref/settings/#databases
+
+DATABASES = {
+ 'default': {
+ 'ENGINE': 'django.db.backends.sqlite3',
+ 'NAME': BASE_DIR / 'db.sqlite3',
+ }
+}
+
+
+# Password validation
+# https://docs.djangoproject.com/en/4.0/ref/settings/#auth-password-validators
+
+AUTH_PASSWORD_VALIDATORS = [
+ {
+ 'NAME': 'django.contrib.auth.password_validation.UserAttributeSimilarityValidator',
+ },
+ {
+ 'NAME': 'django.contrib.auth.password_validation.MinimumLengthValidator',
+ },
+ {
+ 'NAME': 'django.contrib.auth.password_validation.CommonPasswordValidator',
+ },
+ {
+ 'NAME': 'django.contrib.auth.password_validation.NumericPasswordValidator',
+ },
+]
+
+
+# Internationalization
+# https://docs.djangoproject.com/en/4.0/topics/i18n/
+
+LANGUAGE_CODE = 'en-us'
+
+TIME_ZONE = 'America/Los_Angeles'
+
+USE_I18N = True
+
+USE_TZ = True
+
+
+# Static files (CSS, JavaScript, Images)
+# https://docs.djangoproject.com/en/4.0/howto/static-files/
+
+STATIC_URL = '/static/'
+STATICFILES_DIRS = [str(BASE_DIR.joinpath('static'))]
+
+# Default primary key field type
+# https://docs.djangoproject.com/en/4.0/ref/settings/#default-auto-field
+
+DEFAULT_AUTO_FIELD = 'django.db.models.BigAutoField'
diff --git a/Code/nestor/Password_Generator/Password_Generator/urls.py b/Code/nestor/Password_Generator/Password_Generator/urls.py
new file mode 100644
index 00000000..a0f851f6
--- /dev/null
+++ b/Code/nestor/Password_Generator/Password_Generator/urls.py
@@ -0,0 +1,22 @@
+"""Password_Generator URL Configuration
+
+The `urlpatterns` list routes URLs to views. For more information please see:
+ https://docs.djangoproject.com/en/4.0/topics/http/urls/
+Examples:
+Function views
+ 1. Add an import: from my_app import views
+ 2. Add a URL to urlpatterns: path('', views.home, name='home')
+Class-based views
+ 1. Add an import: from other_app.views import Home
+ 2. Add a URL to urlpatterns: path('', Home.as_view(), name='home')
+Including another URLconf
+ 1. Import the include() function: from django.urls import include, path
+ 2. Add a URL to urlpatterns: path('blog/', include('blog.urls'))
+"""
+from django.contrib import admin
+from django.urls import path, include
+
+urlpatterns = [
+ path('admin/', admin.site.urls),
+ path('Password_app/', include('Password_app.urls'))
+]
diff --git a/Code/nestor/Password_Generator/Password_Generator/wsgi.py b/Code/nestor/Password_Generator/Password_Generator/wsgi.py
new file mode 100644
index 00000000..ca9af523
--- /dev/null
+++ b/Code/nestor/Password_Generator/Password_Generator/wsgi.py
@@ -0,0 +1,16 @@
+"""
+WSGI config for Password_Generator project.
+
+It exposes the WSGI callable as a module-level variable named ``application``.
+
+For more information on this file, see
+https://docs.djangoproject.com/en/4.0/howto/deployment/wsgi/
+"""
+
+import os
+
+from django.core.wsgi import get_wsgi_application
+
+os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'Password_Generator.settings')
+
+application = get_wsgi_application()
diff --git a/Code/nestor/Password_Generator/Password_app/__init__.py b/Code/nestor/Password_Generator/Password_app/__init__.py
new file mode 100644
index 00000000..e69de29b
diff --git a/Code/nestor/Password_Generator/Password_app/admin.py b/Code/nestor/Password_Generator/Password_app/admin.py
new file mode 100644
index 00000000..8c38f3f3
--- /dev/null
+++ b/Code/nestor/Password_Generator/Password_app/admin.py
@@ -0,0 +1,3 @@
+from django.contrib import admin
+
+# Register your models here.
diff --git a/Code/nestor/Password_Generator/Password_app/apps.py b/Code/nestor/Password_Generator/Password_app/apps.py
new file mode 100644
index 00000000..c8f69a7a
--- /dev/null
+++ b/Code/nestor/Password_Generator/Password_app/apps.py
@@ -0,0 +1,6 @@
+from django.apps import AppConfig
+
+
+class PasswordAppConfig(AppConfig):
+ default_auto_field = 'django.db.models.BigAutoField'
+ name = 'Password_app'
diff --git a/Code/nestor/Password_Generator/Password_app/migrations/__init__.py b/Code/nestor/Password_Generator/Password_app/migrations/__init__.py
new file mode 100644
index 00000000..e69de29b
diff --git a/Code/nestor/Password_Generator/Password_app/models.py b/Code/nestor/Password_Generator/Password_app/models.py
new file mode 100644
index 00000000..71a83623
--- /dev/null
+++ b/Code/nestor/Password_Generator/Password_app/models.py
@@ -0,0 +1,3 @@
+from django.db import models
+
+# Create your models here.
diff --git a/Code/nestor/Password_Generator/Password_app/static/css/styles.css b/Code/nestor/Password_Generator/Password_app/static/css/styles.css
new file mode 100644
index 00000000..e6fedbf8
--- /dev/null
+++ b/Code/nestor/Password_Generator/Password_app/static/css/styles.css
@@ -0,0 +1,5 @@
+body div {
+ text-align: center;
+ background-image: url("https://ih1.redbubble.net/image.2223352307.9769/st,small,507x507-pad,600x600,f8f8f8.jpg");
+ background-size: cover;
+}
diff --git a/Code/nestor/Password_Generator/Password_app/templates/Password_app/index.html b/Code/nestor/Password_Generator/Password_app/templates/Password_app/index.html
new file mode 100644
index 00000000..64bf96e0
--- /dev/null
+++ b/Code/nestor/Password_Generator/Password_app/templates/Password_app/index.html
@@ -0,0 +1,28 @@
+
+{% load static %}
+
+
+
+
+
+
+ Password Generator
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/Code/nestor/Password_Generator/Password_app/templates/Password_app/result.html b/Code/nestor/Password_Generator/Password_app/templates/Password_app/result.html
new file mode 100644
index 00000000..ef8fabca
--- /dev/null
+++ b/Code/nestor/Password_Generator/Password_app/templates/Password_app/result.html
@@ -0,0 +1,19 @@
+
+{% load static %}
+
+
+
+
+
+
+ Password Result
+
+
+
+
+
+
Here is you new super secret password...
+
+
{{ password }}
+
+
\ No newline at end of file
diff --git a/Code/nestor/Password_Generator/Password_app/tests.py b/Code/nestor/Password_Generator/Password_app/tests.py
new file mode 100644
index 00000000..7ce503c2
--- /dev/null
+++ b/Code/nestor/Password_Generator/Password_app/tests.py
@@ -0,0 +1,3 @@
+from django.test import TestCase
+
+# Create your tests here.
diff --git a/Code/nestor/Password_Generator/Password_app/urls.py b/Code/nestor/Password_Generator/Password_app/urls.py
new file mode 100644
index 00000000..182d649b
--- /dev/null
+++ b/Code/nestor/Password_Generator/Password_app/urls.py
@@ -0,0 +1,9 @@
+from django.urls import path
+from . import views
+
+app_name = 'Password_app'
+urlpatterns = [
+ path('', views.index, name='index'),
+
+ path('result/', views.result, name='result')
+]
diff --git a/Code/nestor/Password_Generator/Password_app/views.py b/Code/nestor/Password_Generator/Password_app/views.py
new file mode 100644
index 00000000..51423017
--- /dev/null
+++ b/Code/nestor/Password_Generator/Password_app/views.py
@@ -0,0 +1,33 @@
+from pickle import GET
+from django.shortcuts import render, redirect
+from django.http import HttpResponse, HttpResponseRedirect
+from secrets import choice
+import random
+import string
+from django.urls import reverse
+
+
+# Create your views here.
+def index(request):
+ return render(request, 'Password_app/index.html')
+
+def result(request):
+ number = int(request.POST['name'])
+
+
+ while True:
+ if 7 < number < 17:
+ break
+ else:
+ # return render(request, 'Password_app/index.html')
+ return HttpResponseRedirect(reverse('Password_app:index'))
+
+ password = list()
+ char = string.ascii_letters
+ for x in range(number):
+ character = random.choice(char)
+ password.append(character)
+ print(password)
+
+
+ return render(request, 'Password_app/result.html', {'password': password})
\ No newline at end of file
diff --git a/Code/nestor/Password_Generator/manage.py b/Code/nestor/Password_Generator/manage.py
new file mode 100644
index 00000000..c6c3f97d
--- /dev/null
+++ b/Code/nestor/Password_Generator/manage.py
@@ -0,0 +1,22 @@
+#!/usr/bin/env python
+"""Django's command-line utility for administrative tasks."""
+import os
+import sys
+
+
+def main():
+ """Run administrative tasks."""
+ os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'Password_Generator.settings')
+ try:
+ from django.core.management import execute_from_command_line
+ except ImportError as exc:
+ raise ImportError(
+ "Couldn't import Django. Are you sure it's installed and "
+ "available on your PYTHONPATH environment variable? Did you "
+ "forget to activate a virtual environment?"
+ ) from exc
+ execute_from_command_line(sys.argv)
+
+
+if __name__ == '__main__':
+ main()
diff --git a/Code/nestor/ROT_cipher/app.py b/Code/nestor/ROT_cipher/app.py
new file mode 100644
index 00000000..f21eab1f
--- /dev/null
+++ b/Code/nestor/ROT_cipher/app.py
@@ -0,0 +1,31 @@
+from flask import Flask, render_template, request
+# this creates a python based webserver
+app = Flask(__name__)
+
+def encrypt(text):
+ # text = input("Please enter in a string: ").lower().replace(" ", "")
+ cipher = []
+ for i in range(len(text)):
+ char = text[i]
+ encrypt = ord(char) + 13
+ if encrypt < 123:
+ encrypt = chr(encrypt)
+ cipher.append(encrypt)
+ # print(cipher)
+ elif encrypt >= 122:
+ repeat = (encrypt % 122) + 96
+ repeat = chr(repeat)
+ cipher.append(repeat)
+ # print(cipher)
+ return cipher
+
+@app.route('/')
+def index():
+ return render_template('index.html')
+
+@app.route('/ROT_cipher', methods=['POST'])
+def ROT_cipher():
+ user = request.form['user']
+ user1 = user.lower().replace(" ", "")
+ word = encrypt(user1)
+ return render_template('ROT_cipher.html', user1=user1, user=user, word=word)
\ No newline at end of file
diff --git a/Code/nestor/ROT_cipher/templates/ROT_cipher.html b/Code/nestor/ROT_cipher/templates/ROT_cipher.html
new file mode 100644
index 00000000..6acb908f
--- /dev/null
+++ b/Code/nestor/ROT_cipher/templates/ROT_cipher.html
@@ -0,0 +1,14 @@
+
+
+
+
+
+
+ Cipher
+
+
+ Word for encrypting {{ user1 }}
+ word encrypted {{ word }}
+ something {{ user }}
+
+
\ No newline at end of file
diff --git a/Code/nestor/ROT_cipher/templates/index.html b/Code/nestor/ROT_cipher/templates/index.html
new file mode 100644
index 00000000..3e217239
--- /dev/null
+++ b/Code/nestor/ROT_cipher/templates/index.html
@@ -0,0 +1,16 @@
+
+
+
+
+
+
+ ROT Cipher
+
+
+
Hello
+
+
+
\ No newline at end of file
diff --git a/Code/nestor/capstone/companyLookup.md b/Code/nestor/capstone/companyLookup.md
new file mode 100644
index 00000000..053bf966
--- /dev/null
+++ b/Code/nestor/capstone/companyLookup.md
@@ -0,0 +1,37 @@
+# Project Overview
+This project is designed to assist end users with researching companies of interest by consolidating databases and municipalities that contain their company records.
+In order to access information pertaining to companies of interest that do not have websites, often it is necessary to research them through the BBB(Better Business Bureau), contact the Department of Consumer Affairs, contact city hall, or attempt to find them through another public database.
+This project is designed to consolidate known databases and provide links for municipalities that hold public company information for easy access to the end user.
+
+# Functionality
+**Home Page**
+- Welcome page with description of website intent and purpose
+- Search bar for easy access to the public databases containing public company records
+
+**Links Page**
+- Links to websites of partnering APIs
+- Links to municipalities of every state for local business searches
+
+**Education**
+- Links to education resources for starting your own business
+
+# Data Model
+Data needed to be stored:
+- User information
+- User search history
+- Website information (articles, links, etc.)
+
+# Schedule
+**Week 1**
+- Built skeleton of website creating main pages (Home, Links, Education)
+- Build backend admin page and test functionality to ensure data is being passed successfully
+- Building user profile and user login page
+**Week 2**
+- Attain API access and test functionality -- testing partner organizations to ensure successful query requests
+- Build and test search nav
+**Week 3**
+- Testing dummy profiles to ensure multi-user access
+- Testing database query functionality
+- Testing user profile functions(delete profile, create profile, save searches, etc.)
+**Week 4**
+- Styling and troubleshooting open items
\ No newline at end of file
diff --git a/Code/nestor/capstone/va_revamp.md b/Code/nestor/capstone/va_revamp.md
new file mode 100644
index 00000000..9fe30420
--- /dev/null
+++ b/Code/nestor/capstone/va_revamp.md
@@ -0,0 +1,56 @@
+# Project Overview
+This project is to create a more user friendly interface to help veterans access much needed resources and forms which are hard to locate/obtain
+by the VA website.
+Due to a lack of needed funding the VA website is currently plagued with old/outdated pages and resources. There are many resources available to veterans for various
+needs which are either inaccessible through the VA website or are convoluted making access to the resources incredibly difficult.
+In this project I will be utilizing the Django framework to verify veterans, spouses, and active members of the armed forces and help them gain access to forms, programs, job opportunities
+and other resources created to honor their sacrifices.
+-- include user profile to let user know what they qualify for based on when separated
+
+# Functionality
+**Home Page**
+- Welcome page thanking veterans for their sacrifice which also provides a brief description of the utilities of the website
+- Will have hamburger bar or search bar to help veterans narrow down on what topics they're looking for
+**Links Page**
+- Page dedicated to available resources for various fields that the veteran, spouse or service member may need access to
+- health care, education, career assistance, housing, disability, unemployment, food and family support, lost records, finances, pension, burials and memorials
+**Education**
+- Page dedicated to assist with understanding available education benefits as well as alternative programs available for veterans, spouses or separating service members
+- GI Bill, Post 9/11, VR&E, VET TEC, etc.
+**Career Assistance**
+- Page dedicated to helping veterans, spouses and separating service members understand career opportunities that align with their MOS in the civilian sector
+- learn about career opportunities outside of their MOS
+- Direct them to websites that will assist in resume building, mock interviews and job placement
+- Direct them to websites that have veteran preference when selecting candidates
+**Health Care**
+- Page dedicated to providing necessary forms to fill out for service connected disability, request coverage, file for compensation, etc
+- Services available for service members who need to access drug rehab facilities
+- Suicide prevention hotlines and centers
+**Housing**
+- Page dedicated to helping veterans understand what housing resources are available in event of homelessness
+- Qualifying for VA loan
+**Disability**
+- Page dedicated to helping veterans apply for service related disability, file for re-evaluation, dispute compensation, options available for service connected incidents that were not properly documented during time of service
+**Finances**
+- Page dedicated to helping veterans understand finances, budgets, taxes, pension, options available for veterans facing hardships or need assistance with financing due to hardships
+
+# Data Model
+Data needed to be stored:
+- User information
+- Forms
+- Benefits
+- VA Facilities
+- Website information (articles, links, etc.)
+
+# Schedule
+**Week 1**
+- Built skeleton of website creating main pages (Home, links, education, career assistance, health care, housing, disability and finances)
+- Build backend admin page and test functionality to ensure data is being passed successfully
+**Week 2**
+- Use Benefits API and test functionality -- enables approved organizations to submit benefits-related
+- Build and test search nav
+**Week 3**
+- Building user profile and user login
+- testing dummy profiles to ensure website
+**Week 4**
+- Styling and troubleshooting open items
\ No newline at end of file
diff --git a/Code/nestor/grocery_proj/grocery_list/__init__.py b/Code/nestor/grocery_proj/grocery_list/__init__.py
new file mode 100644
index 00000000..e69de29b
diff --git a/Code/nestor/grocery_proj/grocery_list/admin.py b/Code/nestor/grocery_proj/grocery_list/admin.py
new file mode 100644
index 00000000..e89576c2
--- /dev/null
+++ b/Code/nestor/grocery_proj/grocery_list/admin.py
@@ -0,0 +1,6 @@
+from django.contrib import admin
+from .models import Department, GroceryItem
+
+# Register your models here.
+admin.site.register(GroceryItem)
+admin.site.register(Department)
\ No newline at end of file
diff --git a/Code/nestor/grocery_proj/grocery_list/apps.py b/Code/nestor/grocery_proj/grocery_list/apps.py
new file mode 100644
index 00000000..0af6fbb4
--- /dev/null
+++ b/Code/nestor/grocery_proj/grocery_list/apps.py
@@ -0,0 +1,6 @@
+from django.apps import AppConfig
+
+
+class GroceryListConfig(AppConfig):
+ default_auto_field = 'django.db.models.BigAutoField'
+ name = 'grocery_list'
diff --git a/Code/nestor/grocery_proj/grocery_list/migrations/0001_initial.py b/Code/nestor/grocery_proj/grocery_list/migrations/0001_initial.py
new file mode 100644
index 00000000..811818f9
--- /dev/null
+++ b/Code/nestor/grocery_proj/grocery_list/migrations/0001_initial.py
@@ -0,0 +1,26 @@
+# Generated by Django 4.0.3 on 2022-04-01 03:27
+
+from django.conf import settings
+from django.db import migrations, models
+import django.db.models.deletion
+
+
+class Migration(migrations.Migration):
+
+ initial = True
+
+ dependencies = [
+ migrations.swappable_dependency(settings.AUTH_USER_MODEL),
+ ]
+
+ operations = [
+ migrations.CreateModel(
+ name='GroceryItem',
+ fields=[
+ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
+ ('list_item', models.CharField(max_length=200)),
+ ('completed', models.BooleanField(default=False)),
+ ('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)),
+ ],
+ ),
+ ]
diff --git a/Code/nestor/grocery_proj/grocery_list/migrations/0002_rename_list_item_groceryitem_items.py b/Code/nestor/grocery_proj/grocery_list/migrations/0002_rename_list_item_groceryitem_items.py
new file mode 100644
index 00000000..e862d351
--- /dev/null
+++ b/Code/nestor/grocery_proj/grocery_list/migrations/0002_rename_list_item_groceryitem_items.py
@@ -0,0 +1,18 @@
+# Generated by Django 4.0.3 on 2022-04-01 04:14
+
+from django.db import migrations
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ ('grocery_list', '0001_initial'),
+ ]
+
+ operations = [
+ migrations.RenameField(
+ model_name='groceryitem',
+ old_name='list_item',
+ new_name='items',
+ ),
+ ]
diff --git a/Code/nestor/grocery_proj/grocery_list/migrations/0003_department_remove_groceryitem_items_and_more.py b/Code/nestor/grocery_proj/grocery_list/migrations/0003_department_remove_groceryitem_items_and_more.py
new file mode 100644
index 00000000..639882f1
--- /dev/null
+++ b/Code/nestor/grocery_proj/grocery_list/migrations/0003_department_remove_groceryitem_items_and_more.py
@@ -0,0 +1,40 @@
+# Generated by Django 4.0.3 on 2022-04-13 01:33
+
+from django.db import migrations, models
+import django.db.models.deletion
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ ('grocery_list', '0002_rename_list_item_groceryitem_items'),
+ ]
+
+ operations = [
+ migrations.CreateModel(
+ name='Department',
+ fields=[
+ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
+ ('name', models.CharField(max_length=20)),
+ ],
+ ),
+ migrations.RemoveField(
+ model_name='groceryitem',
+ name='items',
+ ),
+ migrations.RemoveField(
+ model_name='groceryitem',
+ name='user',
+ ),
+ migrations.AddField(
+ model_name='groceryitem',
+ name='item',
+ field=models.CharField(default=0, max_length=40),
+ preserve_default=False,
+ ),
+ migrations.AddField(
+ model_name='groceryitem',
+ name='department',
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='items', to='grocery_list.department'),
+ ),
+ ]
diff --git a/Code/nestor/grocery_proj/grocery_list/migrations/__init__.py b/Code/nestor/grocery_proj/grocery_list/migrations/__init__.py
new file mode 100644
index 00000000..e69de29b
diff --git a/Code/nestor/grocery_proj/grocery_list/models.py b/Code/nestor/grocery_proj/grocery_list/models.py
new file mode 100644
index 00000000..33b21932
--- /dev/null
+++ b/Code/nestor/grocery_proj/grocery_list/models.py
@@ -0,0 +1,18 @@
+
+from django.db import models
+from django.contrib.auth.models import User
+
+class Department(models.Model):
+ name = models.CharField(max_length=20)
+
+ def __str__(self):
+ return f'{self.name}'
+
+class GroceryItem(models.Model):
+ item = models.CharField(max_length=40)
+ completed = models.BooleanField(default=False)
+ department = models.ForeignKey(Department, on_delete=models.CASCADE, related_name='items', null=True, blank=True)
+
+ def __str__(self):
+ return f'{self.item} -- {self.completed}'
+
\ No newline at end of file
diff --git a/Code/nestor/grocery_proj/grocery_list/templates/grocery_list/index.html b/Code/nestor/grocery_proj/grocery_list/templates/grocery_list/index.html
new file mode 100644
index 00000000..e766568c
--- /dev/null
+++ b/Code/nestor/grocery_proj/grocery_list/templates/grocery_list/index.html
@@ -0,0 +1,62 @@
+
+
+
+
+
+
+ Grocery List
+
+
+
Create a grocery list
+
Add your items below.
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/Code/nestor/grocery_proj/grocery_list/templates/grocery_list/items.html b/Code/nestor/grocery_proj/grocery_list/templates/grocery_list/items.html
new file mode 100644
index 00000000..795b8a39
--- /dev/null
+++ b/Code/nestor/grocery_proj/grocery_list/templates/grocery_list/items.html
@@ -0,0 +1,20 @@
+
+
+
+
+
+
+ Grocery Items List
+
+
+