diff --git a/.github/workflows/check_lesson_05_pr.yaml b/.github/workflows/check_lesson_05_pr.yaml
new file mode 100644
index 00000000..3f5cc1c5
--- /dev/null
+++ b/.github/workflows/check_lesson_05_pr.yaml
@@ -0,0 +1,32 @@
+name: Check Lesson 05 Quiz Pull Request
+
+on:
+ pull_request:
+ branches: [ "main" ]
+ paths:
+ - "lesson_05/quiz/**"
+
+jobs:
+ build:
+
+ runs-on: ubuntu-latest
+ permissions:
+ contents: read
+
+ steps:
+ - uses: actions/checkout@v4
+
+ - name: Use Node.js
+ uses: actions/setup-node@v4
+ with:
+ node-version: '20.x'
+
+ - name: Build Shared Lib with Node.js
+ working-directory: ./lib/typescript/codedifferently-instructional
+ run: npm ci
+
+ - name: Build Lesson 06 with Node.js
+ working-directory: ./lesson_05/quiz
+ run: |
+ npm ci
+ npm run check
\ No newline at end of file
diff --git a/lesson_04/chelseaogbonnia/README.md b/lesson_04/chelseaogbonnia/README.md
new file mode 100644
index 00000000..67d1cedc
--- /dev/null
+++ b/lesson_04/chelseaogbonnia/README.md
@@ -0,0 +1,77 @@
+# Prime Number Finder (Python and JavaScript) #
+
+This project demonstrates how to find prime numbers between 1 and 100 using two programming languages: Python and JavaScript. Each function uses a for loop to check whether a number is prime, and both include inline comments to explain the code step by step. Additionally, there are detailed explanations after each function.
+
+## Prime Number Finder in Python ##
+```
+# Function to find prime numbers between 1 and 100 in Python
+def find_prime_num_py():
+
+ # Loop through numbers from 2 to 100
+ for num in range(2, 101):
+ is_prime = True # Assume the number is prime
+
+ # Check if num is divisible by any number between 2 and its square root
+ for i in range(2, int(num**0.5) + 1):
+ if num % i == 0:
+ is_prime = False # If divisible, not a prime number
+ break # Exit the loop early
+
+ # If is_prime is still true, num is a prime number
+ if is_prime:
+ print(num) # Output the prime number
+
+# Call the Python function
+find_prime_num_py()
+```
+### Python Explanation: ###
+The Python function, find_prime_num_py, uses a for loop to iterate through the numbers between 2 and 100. The is_prime variable is set to True for each number. Inside the inner loop, we check if the number is divisible by any integer between 2 and the square root of the number. If the number is divisible, it is marked as not prime, and we break out of the inner loop to stop further unnecessary checks. The square root limit ensures better performance. When the number is confirmed to be prime, it is printed to the console.
+
+
+## Prime Number Finder in JavaScript ##
+```
+// Function to find prime numbers between 1 and 100 in JavaScript
+function findPrimeNumberJS() {
+
+ // Loop through numbers from 2 to 100
+ for (let num = 2; num <= 100; num++) {
+ let isPrime = true; // Assume the number is prime
+
+ // Check if num is divisible by any number between 2 and its square root
+ for (let i = 2; i <= Math.sqrt(num); i++) {
+ if (num % i === 0) {
+ isPrime = false; // If divisible, not a prime number
+ break; // Exit the loop early
+ }
+ }
+
+ // If isPrime is still true, num is a prime number
+ if (isPrime) {
+ console.log(num); // Output the prime number
+ }
+ }
+}
+
+// Call the JavaScript function
+findPrimeNumberJS();
+```
+
+### JavaScript Explanation: ###
+In this JavaScript function, findPrimeNumberJS, we use a for loop to iterate over the numbers from 2 to 100. The isPrime variable initially assumes that each number is prime. For each number num, we check if it is divisible by any number from 2 to the square root of num. If the number is divisible, it is marked as not prime by setting isPrime to false, and we break out of the inner loop to save time. If the number remains prime after the check, it is printed to the console. The square root check ensures we minimize the number of iterations for efficiency.
+
+## Similarities and Differences Between Python and JavaScript Prime Number Functions ##
+
+### Similarities
+
+* Logic (Using Square Roots to Check Primes): Both functions in Python and JavaScript use the same fundamental logic to determine if a number is prime. By checking divisors only up to the square root of the number, we can efficiently reduce the number of checks. This optimization works in both languages because if a number has a divisor greater than its square root, it must also have a corresponding smaller divisor, which would have been checked already.
+
+* Looping Structure: Both functions use a for loop to iterate over potential divisors, starting from 2. While the exact syntax differs, the purpose is the same—to test whether the number is divisible by any number within this range. If no divisor is found, the number is prime.
+
+
+### Differences:
+
+* Syntax: Python uses range() to generate numbers in a loop, while JavaScript directly declares the loop variable and sets its conditions. Python also uses indentation to define code blocks, while JavaScript uses curly braces {}.
+
+* Case Sensitivity: Python commonly uses snake_case for function and variable names (e.g., is_prime), while JavaScript typically uses camelCase (e.g., isPrime).
+
+* Variable Declarations: In Python, variables are declared by simply assigning a value to them (e.g., num = 5). In JavaScript, variables must be explicitly declared using let, const, or var (e.g., let num = 5).
diff --git a/lesson_04/dasiaenglish/lesson_04.md b/lesson_04/dasiaenglish/lesson_04.md
new file mode 100644
index 00000000..ecf6dc95
--- /dev/null
+++ b/lesson_04/dasiaenglish/lesson_04.md
@@ -0,0 +1,70 @@
+```Javascript
+#Javascript
+
+function findPrimes(numberToCheck) { // A machine that helps find prime numbers
+
+ if (numberToCheck <=1){
+ return `${numberToCheck} is not a prime number.`; //any number that is less or equal to 1 it is NOT a prime number
+ }
+ let isPrime = true; //I am start with assuming the number is prime
+
+
+ for (let factor = 2; factor <= Math.floor(numberToCheck / 2); factor++) { //this is another loop but it checks to see if the number is divisible by other numbers.
+ if (numberToCheck % factor === 0) { // this is checking to see if the number can divide evenly and if so then it is not a prime number
+ isPrime = false; // states that the number is not prime if it comes out as 0 (should have a remainder)
+ break; //states that it can STOP the loop once it finds a 0, no need to keep going through
+ } //this is closing the loop
+ }
+
+ if (isPrime) { //if said number is still true that means that we did not find any number that is divided evenly so it is prime
+ return `${numberToCheck} is a prime number.`; //if the numbe is prime it will say^^
+ } else{
+ return `${numberToCheck} is not a prime number.`; // if it is NOT prime it will say so
+ }
+} //closing the loop of if it is a prime number or not
+
+const input = process.argv[2]; // telling the computer to save the 3rd thing you type
+
+let number = parseInt(input); // if it types a word the computer does the math and makes it a number
+
+ if (isNaN(number)) { // make sure you type a number
+ console.log("Please enter a valid number."); // letting the user know you have to type a number
+ } else {
+ console.log(findPrimes(number)); //now the computer can check if it is prime or not
+ }
+
+// credit from Coding with John youtube video https://www.youtube.com/watch?v=I9-3drnfyp0 and Chatgpt for a explanation of things I still might have been confused about
+```
+
+```python
+# Python
+# this is a function that will help us find all the prime numbers
+def find_primes(number_to_check):
+ if number_to_check <= 1: # this is an empty list for now until we run the test for all the prime numbers we find
+ return f"{number_to_check} is not a prime number."
+
+ is_prime = True # I am saying that it is a prime until I find out it is not
+
+ # checks to see if the number can be divided by a smaller number evenly
+ for factor in range(2, number_to_check // 2 + 1):
+ if number_to_check % factor == 0: # trying to see if there is a remainder after the divison and if it is equal to zero
+ is_prime = False # if it is equal to zero it is flase meaning it is not prime
+ break # again it means STOP
+ if is_prime: # after checking all
+ return f"{number_to_check} is a prime number."
+ else:
+ return f"{number_to_check} is not a prime number."
+
+number = int(input("Enter a number to check to see if its prime: "))
+print(find_primes(number))
+
+```
+
+## Explanation
+My first thought was to use Javascript and html because those were the 2 languages that I was familiar with. I did some research and quickly came to the realization that html would not be the most effective. That's when I found out that I should use Python and Javascript.
+Python is known for how easy it is to read and how simple it is. But is super space indentation sensitive. Whereas Javascript is a little more complex because it uses different characters, which makes it a little harder to understand.
+
+Similarities: Both Javascript and Python are finding prime numbers between 2 and 100 even though in pyton it says 101. That is becuase we did not plug in 101 we stopped right before it.
+
+Diffreneces: A diffrence that Javascript uses let for declaring variables while python uses simplier words becuase you do not need a keyword
+
diff --git a/lesson_04/dennislipscomb/README04.md b/lesson_04/dennislipscomb/README04.md
new file mode 100644
index 00000000..eeac3d48
--- /dev/null
+++ b/lesson_04/dennislipscomb/README04.md
@@ -0,0 +1,57 @@
+## Javascript
+```Javascript
+
+function isPrime (num) {
+ /* first condtion is checking if 7 is less than or equal to 1. */
+if (num <= 1) return false;
+/*checking if the number has a remainder or 0 if divided 2 */
+for (let i = 2; i < num; i++) {
+if (num% i === 0)
+return false;
+}
+return true;}
+
+
+console.log(isPrime (7))
+```
+
+## Java
+```Java
+
+public class PrimeChecker {
+
+ public static boolean isPrime(int num) {
+ // First condition: check if num is less than or equal to 1
+ if (num <= 1) return false;
+
+ // Check for factors from 2 to num - 1
+ for (int i = 2; i < num; i++) {
+ if (num % i == 0) {
+ return false;
+ }
+ }
+ return true;
+ }
+
+ public static void main(String[] args) {
+ System.out.println(isPrime(11)); // Test the function
+ }
+}
+```
+
+## Explination
+
+In javascript, the function "isPrime" is checking if the number is less than or equal to 1. if so the fuction will fail. If it passes it will run the next fuction to see if the input has a remainder of 0 if divided by 2.
+
+In Java, the function "isPrime(int num)" is checking if the number is less than or equal to 1. if the number is indeed greater than or less than it will return false. if true the function will run through a for loop to determine if divided by 2 will the remainder be 0.
+
+
+### Differences
+
+Java and Javascript have numerous similarites but arent related. Java runs a more strict ruleset with certain elements such capital vs lower case letters where as javascript is more lenient in its functionality. In javascript the print out to test the fuction is console.log where as in Java the print out is system.out.println
+
+
+#### Citing
+
+I got my Javascript code from a youtube video https://www.youtube.com/watch?v=ZdoiS_qUOSE I took that code and pasted it into https://playcode.io/ to test if the code worked. I had to make a few changes through trial and error. Once i got the correct code, i asked chatGPT to convert the javascript into java.
+
diff --git a/lesson_04/hummadtanweer/README.md b/lesson_04/hummadtanweer/README.md
new file mode 100644
index 00000000..59310a39
--- /dev/null
+++ b/lesson_04/hummadtanweer/README.md
@@ -0,0 +1,57 @@
+
+
+```Java
+static boolean checkPrime(int num) {
+ boolean prime = false;
+ if (num == 0 || num == 1) {
+ prime = true;
+ }
+ for (int i = 2; i <= num / 2; i++) {
+ if (num % i == 0) {
+ prime = true;
+ break;
+ }git
+ }
+ return !prime;
+ }
+
+# Example usage:
+print(checkPrime(4)) # Output: false
+print(checkPrime(7)) # Output: true
+
+## JavaScript implementation
+
+```javascript
+function checkPrime(num) {
+ let prime = false;
+ if (num === 0 || num === 1) {
+ prime = true;
+ }
+ for (let i = 2; i <= num / 2; i++) {
+ if (num % i === 0) {
+ prime = true;
+ break;
+ }
+ }
+ return !prime;
+}
+// Example usage:
+console.log(checkPrime(4)); // Output: false
+console.log(checkPrime(7)); // Output: true
+
+
+## Explanation
+
+The Javascript implementation uses a function named `checkPrime` that takes a single argument `number`. It returns `True` if the number is prime, otherwise, it returns `False`.
+
+The Java implementation uses a function named `checkPrime` that also takes a single argument `int number`. It returns `true` if the number is Prime and `false` otherwise.
+
+Java uses `true` and `talse` for boolean values and JavaScript uses `true` and `false`.
+
+### Differences
+
+ **Function Calls**:
+ - The syntax for calling functions and printing to the console/output is slightly different. Java uses `print()`, while JavaScript uses `console.log()`.
+
+**Citation
+https://www.programiz.com/java-programming/online-compiler/?ref=8039b165git
\ No newline at end of file
diff --git a/lesson_04/pablolimonparedes/README.md b/lesson_04/pablolimonparedes/README.md
new file mode 100644
index 00000000..29d010a1
--- /dev/null
+++ b/lesson_04/pablolimonparedes/README.md
@@ -0,0 +1,50 @@
+## Java Implementation
+```Java
+public class Main {
+ public static void main(String[]args){
+ int num = 19;
+ boolean isPrime = true;
+ for (int i = 2; i < num; i++){
+ if (num % i == 0){
+ isPrime = false;
+ break;
+ }
+ }
+ if (isPrime){
+ System.out.println(num + " is a Prime number.");
+ } else {
+ System.out.println(num + " is not a Prime number.");
+ }
+ }
+}
+//Had help from Chat GPT to help me understand how to make one and break it down step by step//
+```
+## Python Implementation
+``` Python
+def is_prime(num):
+ if num <= 1:
+ return False
+
+ for i in range(2, num):
+ if num % i == 0:
+ return False
+
+ return True
+num = 19
+if is_prime(num):
+ print(f"{num} is a Prime number.")
+else:
+ print(f"{num} is Not a Prime number.")
+
+## I Had Chat GPT convert this from the Java equation ##
+```
+## Explanation
+Here i have the equations to find prime numbers in both Java and Python, however it is hard coded which means that if you wanted to figure out that another number was a prime number you would need to change the value in the variable num.
+
+## Differences
+- Java uses curly braces with `else`, while python uses a colon with `else` to define the blocks of code.
+- Java has to use `public static boolean` to define the method, as in this Python equation does not use any class to define its method since it does not have one in this case, but instead uses a function with the keyword `def` to declare it.
+- Java and Python both use a `for` loop however Python uses `range` to create the sequence of numbers from 2 till num and in the Java code `for (int i = 2; i < num; i++)` you have to initialize, then have the condition, and lastly increment.
+## Similarities
+- Both Codes print out whether or not the number is prime, if you would like to find another number you just need to change the value from the variable num.
+- They both use some type of print to output what the solution of your value is to know whether or not your number that is inputted is prime.
\ No newline at end of file
diff --git a/lesson_05/CG_User_Stories/README.md b/lesson_05/CG_User_Stories/README.md
new file mode 100644
index 00000000..53a80b12
--- /dev/null
+++ b/lesson_05/CG_User_Stories/README.md
@@ -0,0 +1,15 @@
+# Lesson 05: User Stories
+
+## Amazon User Stories
+
+### Persona - As a Amazon Seller:
+
+- **As an** Amazon seller, **I want** to have a large platform that's well known and popular **so that** I can sell my product.
+
+### Persona - As a Business Owner:
+
+- **As a** business owner **I want** to have a way to easily purchase items in bulk **so that** I can create my product.
+
+### Persona - As a Common Consumer:
+
+- **As a** common consumer **I want** to have a fast and secure package delivery **so that** I have a reliable way to order online.
\ No newline at end of file
diff --git a/lesson_05/Pablo_limon_paredes_User_stories/README.md b/lesson_05/Pablo_limon_paredes_User_stories/README.md
new file mode 100644
index 00000000..60a002d5
--- /dev/null
+++ b/lesson_05/Pablo_limon_paredes_User_stories/README.md
@@ -0,0 +1,13 @@
+# Lesson 05 User Stories
+## User Story 1
+I am a fellow consumer of **musi** which is a music app and here are a few things I would like to see
+- I want to be able to see my songs have a *history/record* to see a listening time and how many times I have played that song, so the app can recommend me songs similar to that due to constant listening or the opposite if I did not listen to that song.
+- I want to distinguish the genres and categories my songs are in, so a different section in the app to show you the genres of music you have so if you did not know what genre your favorite song was then you would have no trouble in finding it and delete a whole genre if you wanted.
+## User Story 2
+I am the owner of an app called **Stars Of The Night**, and i have a few ideas for implemenations on my app that would make it better
+- I want to be able to have my consumers interact with the constellations, so if they are looking at the sign Leo it would be traced and then you can move it around how you like and hit another constellation.
+- I want to have it that even if the clouds are in the way the app will clear it up for you as long as it has your location while you use the app so that it can track where you are and give you a real time view with no obstruction.
+## User Story 3
+I am a frequent user of **Youtube** however the algorithm is always changing and showing me things i do not usually watch so I tried to come up with a few ideas
+- I want to be able to have the algorithm change only if I like a video or save it for later.
+- I want to be able to watch two things at once such as one is music and the other is a tutorial I am watching so that I can possibly focus more.
\ No newline at end of file
diff --git a/lesson_05/cogbonnia/README.md b/lesson_05/cogbonnia/README.md
new file mode 100644
index 00000000..c6a8d29c
--- /dev/null
+++ b/lesson_05/cogbonnia/README.md
@@ -0,0 +1,34 @@
+# Pomodoro Timer App - User Stories
+
+## User Story 1: Setting the Study Timer
+**As a** student,
+**I want to** set a custom study timer that defaults to 25 minutes but allows me to adjust the time,
+**so that** I can focus on tasks for a duration that matches my specific needs and preferences.
+
+**Acceptance Criteria:**
+- The timer should default to 25 minutes upon launch.
+- The user should be able to modify the duration of the timer.
+- The timer should display the time remaining during the countdown.
+- The user should be able to start, pause, and reset the timer at any point.
+
+## User Story 2: Break Notifications
+**As a** user who follows the Pomodoro technique,
+**I want to** receive a notification when the timer ends, indicating that it’s time for a break,
+**so that** I can take regular breaks to prevent burnout and stay productive over long periods.
+
+**Acceptance Criteria:**
+- The app should notify the user with a sound or popup when the timer reaches zero.
+- The notification should include the option to start a break timer (e.g., 5 minutes).
+- After the break timer ends, the user should receive a notification to resume studying.
+- The user should have the ability to customize the notification sound or message.
+
+## User Story 3: Tracking Pomodoro Sessions
+**As a** busy professional,
+**I want to** track how many Pomodoro sessions I’ve completed in a day or week,
+**so that** I can monitor my productivity, understand my work habits, and optimize my study/work routine.
+
+**Acceptance Criteria:**
+- The app should record each completed Pomodoro session.
+- The user should be able to view the total number of Pomodoro sessions completed for the day and week.
+- The user should have the option to export or share their session data.
+- A visual representation (e.g., bar chart or calendar view) of the completed sessions should be available.
diff --git a/lesson_05/dennislipscomb/README_05.md b/lesson_05/dennislipscomb/README_05.md
new file mode 100644
index 00000000..7df4306d
--- /dev/null
+++ b/lesson_05/dennislipscomb/README_05.md
@@ -0,0 +1,31 @@
+## User Stories
+
+## Example 0
+
+AIR PODS - As a busy professional, I want to connect my AirPods to multiple devices so that I can easily switch between my laptop and phone without the hassle of re-pairing.
+
+## Acceptance Criteria
+
+- Be able to pair devices amongst the same appleID
+- Recognize when a device is open and audio is in use
+- Enable a feature that promps user to connect to a device upon opening it if airpods are in use
+
+## Example 1
+
+APPLE WATCH - As a fitness enthusiast, I want my Apple Watch to track my heart rate and workout metrics in real-time so that I can monitor my performance and stay motivated during my exercises.
+
+## Acceptance Criteria
+
+- Provide the user with ability to enter health information for more accurate analysis
+- Pulse reading technology to monitor heart rate
+- User replicated motions to mimic an actual workout to best replicate progress
+
+## Example 2
+
+iPhone - As a musician, I want my iPhone to have a high-quality audio recording app so that I can capture song ideas and practice sessions quickly and easily, no matter where I am.
+
+## Acceptance Criteria
+
+- Enhance micprophone quality for clear and consise vocal recording
+- Noise cancelation recording
+- Multitalking ablity to play and record music at the same time for more accurate recording
diff --git a/lesson_05/kimberleehaldane/README.md b/lesson_05/kimberleehaldane/README.md
new file mode 100644
index 00000000..5a8764d9
--- /dev/null
+++ b/lesson_05/kimberleehaldane/README.md
@@ -0,0 +1,36 @@
+1. User Story: Customizing Sims
+ - Title: Enhanced Sim Life Control
+ - As a player,
+ - I want to have more input and control over my Sim's career and life choices
+ - So that I can build Sim worlds reflecting my own creativity and preferences.
+
+ Acceptance Criteria:
+ 1. Players can create the jobs in a specific career field.
+ 2. Players can download custom/job-specific items, outfits and accessories.
+ 3. Personality traits can be created/expanded/combined.
+ 4. Players can share their customized worlds on a platform for others to watch/view.
+
+
+2. User Story: Apple Music Playlist
+ - Title: Enhanced Playlist Function
+ - As a music lover,
+ - I want to optimize the functions of my playlist
+ - So that I can move between and create new playlists without losing my place in the others.
+
+ Acceptance Criteria:
+ 1. Users can start a playlist, pause it, open/create a new playlist and be able to open the previous playlist in the same place it was paused.
+ 2. The playlist can offer a filter function for when users want to exclude certain songs but not remove them from the playlist.
+
+3. User Story:
+ - Title: Functional Assistant
+ - As a teacher,
+ - I want to access all technology, references, student and parent interaction from one platform
+ - So that I can keep everything organized.
+
+ Acceptance Criteria:
+ 1. The platform should provide a user-friendly interface.
+ 2. Teachers should be able to add sections for grades, attendance, newsletter, resources, lesson plans, etc.
+ 3. Other chosen educational programs, apps and software should be able to interact/connect with the platform.
+ 4. Teachers should be able to share access to platform with administrators and lessons with colleagues.
+ 5. There should be a search function to quickly find things based on keywords.
+
\ No newline at end of file
diff --git a/lesson_05/ljmcwilliams/README.md b/lesson_05/ljmcwilliams/README.md
new file mode 100644
index 00000000..4c482122
--- /dev/null
+++ b/lesson_05/ljmcwilliams/README.md
@@ -0,0 +1,84 @@
+## User Story 1: Offline Learning Mode for Language App
+As a language learner,
I want an offline mode in the language learning app,
so I can continue learning without an internet connection.
+
+### Acceptance Criteria
+