Amigos is a clever Friend Recommendation Application that inventively suggests friends to Users. The User Database is stored in an array of polished AVL (Adelson-Velsky and Landis) Trees. We are not just any other Social Media. Our remarkable CompatiFriend algorithm is using excellent computation to deliver accurate results.
Everyone needs a good friend who stands next to them during their good and challenging times. We understand this and work towards making everyone's social lives better. At Amigos, we believe in the positive influence a good friend can have in one's life. Our sole motivation is to unite similar-minded people across the world!
checkFriendshipUID()
checkFriendshipName()
recommendFriendsNewUser()
recommendFriendsExisitngUser()
The Detailed Analysis of our choices can be found in our Project Report.
.
├── amigos.c
├── amigos.h
├── data
│ ├── CustomUserDatabase.csv
│ └── RandomUserDatabase.csv
├── friendlist.c
├── graph
├── interface.c
├── lab.c
├── LICENSE
├── main.c
├── Makefile
├── README.md
├── redblack.c
├── src
│ ├── brand
│ │ ├── header.png
│ │ └── header-square.png
│ ├── gifs
│ │ ├── doggo-1.gif
│ │ ├── doggo-2.gif
│ │ ├── nondoggo-1.gif
│ │ ├── nondoggo-2.gif
│ │ └── nondoggo-3.gif
│ ├── interface
│ │ ├── graph.png
│ │ └── menus.png
│ ├── project.pdf
│ └── report.pdf
├── tokencounter.c
└── ui
- Install the necessary Build Setup (
gcc 10.2
andgdb 9.2
)sudo apt-get install build-essential
- Install Graphviz (Graph Visualization Software)
sudo apt-get install graphviz
- Download the source code of the Amigos App from GitHub.
- I have a
Makefile
which allows me to compile/run/test/debug/clean/etc. the Amigos Application using simple short commands in the terminal (tested on Linux).> make
to compile and run the Amigos App.> make com
to only compile the Amigos App.> make run
to run a successfully compiled Amigos App.> make dbg
to compile the Amigos App with the-g
flag to rungdb
for debugging.> make test
to test new features before adding to the main branch.> make import
to import Random User Data created by an online API (Mockaroo).> make clean
to clean the residual files and prepare a consistent file structure.
We have helped many users find their true friends.
This Application was developed as part of the Final Project of the Data Structures and Algorithms Course taught by Sujit Gujar and Ravi Kiran S at IIIT Hyderabad. Special thanks to Dixit Garg for helping us.