Giter VIP home page Giter VIP logo

tap-foster-dog-matching's Introduction

TAP-Foster-Dog-Matching

Setup

Requires:

  • npm
  • node.js

Install all necessary packages for both frontend and backend using npm install.

Running Locally

For frontend, do the following:

cd client

npm start

Open http://localhost:3000 to see it in the browser.

For backend, do the following in the root directory:

npm start

tap-foster-dog-matching's People

Contributors

artyom2001 avatar dnanjunda avatar jacobayu avatar justinyaodu avatar parth4apple avatar petabite avatar portoaj avatar sharmaadvay0 avatar willji0023 avatar wllmwu avatar

Stargazers

 avatar

Watchers

 avatar  avatar  avatar  avatar

Forkers

artyom2001

tap-foster-dog-matching's Issues

Admin signup keys

  • Generate a signup key (5 digit code) on the backend and link it to some temporary object representing the pending account
  • For now, email the code to a set email address (waiting on designers for clarification)
  • Make an API route to check the code entered on the frontend
  • Allow new admin account to be created only if code was correct

Setup Image Hosting

Will be used for profile photos, dog images, and other images used throughout the website

Connect Application Page Progress to Backend

The progress bar on the application page should reflect whatever stage the application is currently in. Also, from both an admin's POV and a user's POV, whenever an action is taken by one of the them (schedule an interview, pass a stage, etc.), the application page needs to be updated to reflect that.

Interview scheduling location input field

In each interview scheduling screen on the admin side, in the "location" row shown below, implement the input field where the admin can enter the interview location. Use placeholder "Location" instead of "URL" from the screenshot, because they might do it over the phone or something else. I believe there is a location field on the application object in the database, and currently it always stores a hardcoded string "[TBD]", so use the value from the text field instead.

Screen Shot 2023-03-13 at 17 35 35

Clean up for deployment part I

  • [Frontend] Admin side - no confirmation after initial interview (step 2) is passed, or step 4 dog is chosen, or step 5 after meet and greet confirmed - show a popup saying "Interview confirmed!" or similar first; when showing the page afterwards, check for existence of message in application object and disable the confirm button if present
  • [Frontend] Foster profile component - make it wider and fix the padding
  • [Frontend] Change default confirmation messages to have more obvious placeholders
  • [Frontend] Use standard status update component for meet and greet (step 5) on admin side
  • [Frontend] Implement internal foster notes
  • [Frontend] Step 4 foster profile and internal foster notes are hardcoded - use existing foster profile component and fill internal notes from application object

Connect Interview Stages to Backend

Update DB whenever an interview is scheduled for any of the stages. Also, display the appropriate information for an interview depending on the stage and the user.

Render Navbar and Header Based on User/Admin Role

Links in the navbar should match what the user has access to:

  • User: Dashboard, Contact Us
  • Ambassador: Pending Applications, Current Fosters, Manage Dog Profiles, Calendar, Profile
  • Management: Pending Applications, Fosters, Manage Dog Profiles, Calendar, Profile
  • Coordinator: My Fosters, Manage Dog Profiles, Profile

The name and role in the header should match the current user's info.

Connect Calendar Page to Backend

Update DB whenever a user sets their weekly schedule. Also, for each day, display all users that are available that day and their respective hours.

Connect Profile Page to Backend

  • Get admin profiles from DB to display on this page
  • Display appropriate information when "My Profile" button is clicked
  • Update data in DB whenever profile is edited

Calendar Page

Contains the component for volunteers to add their schedules

Connect Fosters Page (Management and Ambassador) to Backend

For an ambassador, fill the table with all the fosters this ambassador was assigned to. For management, fill the "All Fosters" table with all past fosters. Then, fill the "My Repeat Fosters" table with all fosters that have a pending application and have already fostered a dog before.

Interview Review Component

This component contains the interview info (date, time, etc.), admin's notes from the interview, and the ability to reject, contingent, or pass the candidate from that stage.

Add Protection for API Routes

Only authenticated users should be able to access all API routes and each user should only have access to the routes necessary for their role.

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.