Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/ichowdhury01/match
A social networking platform that allows users to find friends with similar interests in their area.
https://github.com/ichowdhury01/match
geolocation-api jdbc maven mysql pbkdf2 spark
Last synced: about 5 hours ago
JSON representation
A social networking platform that allows users to find friends with similar interests in their area.
- Host: GitHub
- URL: https://github.com/ichowdhury01/match
- Owner: IChowdhury01
- License: mit
- Created: 2019-03-22T17:25:18.000Z (almost 6 years ago)
- Default Branch: master
- Last Pushed: 2021-07-25T18:22:56.000Z (over 3 years ago)
- Last Synced: 2024-12-13T20:38:33.741Z (about 2 months ago)
- Topics: geolocation-api, jdbc, maven, mysql, pbkdf2, spark
- Language: HTML
- Homepage:
- Size: 17.8 MB
- Stars: 2
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# MATCH: Social Networking Platform
![demo](/screenshots/animation.gif)
Team: Ivan Chowdhury, Min JO, Sara Huang, Hanoch Goldfarb
## Description
MATCH is a web app that allows users to find friends with similar interests in their area. MATCH's friend-matching algorithm utilizes user geolocation data, hobbies, and other personal preferences to optimize results. The app also features PBKDF2 encryption, cookies, and account management.### Features
- Account management: registration, login, friends list, and customizable profile
- Accept or reject matches
- Chat with friends
- PBKDF2 encryption
- Cookies
### Tech Stack
- **Web Server**: Spark (embedded Jetty web server)- **Server**: Spark, JDBC
- **Database**: MySQL
## Getting Started
### Prerequisites
- [Java JDK 8 or above](https://www.oracle.com/java/technologies/javase-downloads.html)
- [MySQL](https://www.mysql.com/downloads/)
- [Apache Maven](http://maven.apache.org/download.cgi)### Running Locally
1. Start MySQL and run a server. Record your MySQL credentials.
2. Edit the credentials in the beginning of `MatchJDBC.java` to match your MySQL credentials
3. Run `MatchApp.java`
4. Navigate to `https://localhost:8080` in your browser. If this doesn't work, try https://199.98.27.118:8080/### Testing
To do an **integration test**, run the bash script `test`. This will try creating a new user and checking that their profile page returns the expected results.
## Instructions
- **Creating a new user:** From the homepage select `Register a new account.`. Fill out all the fields, click `Get Location`, and then click `Register`.
- **Viewing a friend's profile:** Clicking on a name in your list of friends will show you their profile.
- **Rejecting a match:** When a viewing a friend's profile, select `Reject`. They will no longer appear on your list of friends and you will no longer appear on theirs.
- **Messaging a friend:** When a viewing a friend's profile, type in the textbox and click `Send Message`. Previously sent messages will also be shown on the page.
## License
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details# Happy Matching!
![logo](https://cdn.pixabay.com/photo/2017/09/02/04/35/fire-2706299_960_720.jpg)