Dirty Paws is a cartoon pet-themed dating app built with Node, React, Express, and PostgreSQL.
- 👩🏻🎨 Ann Bui: the master of frontend, an amateur UX/UI designer and dogs lover
- 👨🏼💻 Dan Lindeblom: the master of backend, data and a sports fanatic
- 👨🏭 Declan Davis: the master of functionality, cats and origami
- Users can create/update profiles
- Users can view other profiles and send 'a love paws' to form matches.
- Only after two users have both liked each others, they can view messages and chat with their matches in real-time.
- Users can earn treats to upgrade their badges to show off.
- Users can register using their Google account/ Google authentication
- Users can enable Location Services and set a maximum search radius for other profiles
- Users can connect to Spotify and share music with their matches
- Users can video chat with their matches
- Users can unmatch
- Matching uses a weighted algorithm to favour users with more treats/badges
We would like to express our appreciation and gratitude for the knowledge and unending support of our instructors, mentors, and staff at Lighthouse Labs.
As well, we want to acknowledge and shout out to all the online resources we consulted during the development of this project.
It is truly by standing on the shoulders of giants that we have made it to where we are today!
Landing-page.mp4
Update.your.profile.mp4
Find-your-perfect-match.mp4
Message-in-real-time.mp4
About-page.mp4
- axios: ^0.27.2
- bootstrap: ^5.2.0
- classnames: ^2.3.1
- react: ^18.2.0
- react-bootstrap: ^2.5.0
- react-dom: ^18.2.0
- react-lottie: ^1.2.3
- react-router-dom: ^6.3.0
- react-scripts: 5.0.
- react-spring: ^9.5.2
- styled-components: ^5.3.5
- cookie-parser: ~1.4.4
- debug: ~2.6.9
- dotenv: ^16.0.1
- express: ~4.16.1
- morgan: ~1.9.1
- pg: ^8.7.3
- nodemon: ^2.0.19
-
Clone this repos.
-
Create the
.env
by using.env.example
as a reference:cp .env.example .env
-
Update the .env file with your correct local information
- username:
labber
- password:
labber
- database:
final
- username:
The root project directory contains two directories: Front-end and Back-end
From here, we recommend you have two separate terminal window opens
-
Navigate to the back-end folder. Install dependencies
npm i
-
Reset database:
npm run db:reset
- Check the db folder to see what gets created and seeded in the SDB
-
Run the server (back-end):
npm start
- Note: nodemon is used, so you should not have to restart your server
-
Navigate to the front-end folder. Install dependencies
npm i --force
-
Run the client (front-end):
npm start
-
React will kick in and auto serve the app in your browser at
http://localhost:3000
-
Start to build your profile, treats, and paws. LET'S GET DIRTY!!!
Hope you enjoy the app and have a nice day :D