Coder Social home page Coder Social logo

karleenmsrichards / final-project-gp2 Goto Github PK

View Code? Open in Web Editor NEW
3.0 3.0 5.0 400 KB

My Final Group Project is BookMe which is a website that connects experts in various areas of work to customers. Experts signs up for a subscription, then adds their google calendar to their profile so that customers can book an appointment.

Home Page: https://starter-kit-all6.onrender.com/

License: ISC License

Dockerfile 0.78% JavaScript 98.33% HTML 0.89%
expressjs github-actions googleauth googlecalendar javascript mui nodejs react sequelize-orm

final-project-gp2's Introduction

Hi, I'm Karleen 🙋🏾‍♀️!

I am very passionate about programming and I have a meticulous eye. I am also enthusiastic about UX/UI, AI technology and Product Management.

Check out my projects 💼!

PORTFOLIO

Let's Connect ⛓

✉️ [email protected]

karleen richards

Tech Stack

html5 css3 figma javascript react node postman postgresql sequelize

My Stats

Anurag's GitHub stats Top Langs GitHub Streak

final-project-gp2's People

Contributors

farzaneh-haghani avatar henimkh avatar jarrodfolinofc avatar jarrodruby avatar karleenmsrichards avatar tony-devops avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar

final-project-gp2's Issues

Optional Task: Add npm audit for security scanning

Concepts

Sub Tasks

Authentication Spike

Spike Story to investigate options available for App authentication. Time boxed activity terminating on 24 July 2023

Epic: Landing Page -Search Component

Given I am a user
When I see the landing page
Then I should see a search section.

(It's included Location / Date / Time / Service and arrow button)

Epic: Landing Page -LogIn Button

Given I am user
When I see the landing page
Then I should see the login button prominently and easily on the site.

As a potential client, I want to easily navigate the service provider website landing page to quickly be able to find the login button on the top right as I am used to

Epic: Landing Page -Experts Loves By Customers

Given I am a user
When I see the landing page
Then I should see a section for highlighting experts which I can trust them.

As a small business owner, I want the landing page to highlight the service provider's expertise, certifications, and awards, so I can trust that they have the necessary skills and qualifications to meet my business needs.

EPIC: Landing Page - View Landing Page

Given I am an unauthenticated User
When I navigate to the landing Page
Then I should see the landing page

Tech Details:

  • Setup a react project (use KArleen's repo)
  • Set up the CSS framework
  • Deploy it
  • Get some base text to show
  • Favicon

Spike Story for Google Meet Usage For Project

Spike story with time boxed research activity terminating 24 July 2023 on utilisation of Google meet integration into the APP for automated meeting ID generation on a booking/ reservation made by client/customer

Task: Sign Out Button and Send Token to Node

Given I am an authenticated user
When I click the sign out button
Then I see a sign out message

Tech:
Create sign out button and functionality to sign out users
This will delete the apiToken in localstorage.
Create a function that sends jwt token to the node.

Task1: Karleen- Authenticate with Google

Feature: User Authentication and Login with Google

Scenario: Unauthenticated user clicks sign-in button and fails Google sign-in
Given I am an unauthenticated user
When I click the sign-in button
And I am unable to successfully sign in or create an account with Google
Then I see the homepage

Scenario: Unauthenticated user clicks sign-in button and successfully logs in with Google
Given I am an unauthenticated user
When I click the sign-in button
And I am able to successfully sign in or create an account with Google
Then I see the dashboard

Scenario: Authenticated user returns to the webpage and remains logged in
Given I am an authenticated user
When I leave the webpage
And I come back to the webpage
Then I am still logged in

Technical Task:
Authenticate with Google
Receive the token
Save the token in the browser
Configure redirect url to dashboard

Epic: Landing Page - Tabs

Given I am a user
When I see the landing page
Then I should see some Tabs in the header such as Find / Book / Pay which are links to their page

Epic: Landing Page - Header Component

Given I am a user
When I see the landing page
Then I should see a header.

Currently we are incorporating a login button on the top right and a logo on the top left of the Header

Edit home Button

Home button showed the dashboard button even when logged out. the dashboard button should only show when the user is logged in

Epic: Landing Page- Footer Element

Given I am user
When I see the landing page
Then I should see the footer at the bottom which gives me information about contact, about the company, terms and conditions, how my data is used, where your company is located, any associations you are a part of.

As a potential client, I want to easily navigate the service provider website landing page to quickly do my due- diligence to understand if I trust your website

Epic: Authentication Journey- Display Authentication Home Page

Given: I am an unauthenticated user
When: I go to the home page
Then: I see the authentication page with Google

Given: I am an unauthenticated user
When: I am on the Google authentication page
And: I authenticate with a valid Google account
Then: I go/ redirected to the website Dashboard

Given: I am an unauthenticated user
When: I am on the Google authentication page
And: I authenticate with an invalid Google account
And: I cancel
Then: I get redirected to the authentication page.

Based on Google authentication, we may get Name, email and contact telephone number. to be finalised.

Epic: Becoming a Service Provider

Given: I am an authenticated user
When: I am on the dashboard
Then: I can see the button for "Sign Up as a Provider"

Given: I am an authenticated user
When: I click on the sign up as a provider
Then: I can select the Subscription Level on the Subscription Page and confirm button

Given: I am a subscribed user and chosen the subscription
When: I am redirected to the Supplier Profile Form where I can fill the required fields
And: I can see the button for "connect my google calendar" and I authorise
Then: The calendar is added and after clicking submit can access the full functionality of the app.

Project Mock-Ups

Site Mock Ups Provided by PO

Home Page
Image

Search Results
Image

Supplier Dashboard
Image

Checkout Page/ Booking Page
Image

Customer Dashboard

Image

Task1: Tony- Node JS Server

Create the user end point
check the token is valid. if not send it to the unauthorised page
add the routes
swagger

test

test

#13 Decide on Frontend CSS Framework
#2 Authentication Spike

Epic: Landing Page - Locations Link

Given I am user
When I see the landing page
Then I should see the locations link with a link to all locations.

As a potential client, I want to easily navigate the service provider website landing page to quickly find the services offered and understand how they can address my needs.

Optional Task: Add eslint into github actions

Concepts

Github Actions: Everytime you push code to github it run tasks and gives you the results.

Google these concept and try and get an understanding

What to do

  • Make new folder named .github/workflows in the root folder
  • add a new yaml file called eslint.yaml
on:
  push:
name: example
jobs:
  lint:
    name: run lint
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v2
      - name: install dependencies
        run: npm install
      - name: run lint command
        run: npm run lint

Notes

Any questions add here

Epic: Landing Page - Review

Given I am a user
When I see the landing page
Then I should see reviews from previous clients.

As a potential client looking for credibility, I want to see testimonials and case studies on the landing page to understand the experiences of previous clients and the successful outcomes they achieved.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.