BlogAnnounced at MongoDB.local NYC 2024: A recap of all announcements and updatesLearn more >>
MongoDB Developer
Sign in to follow topics
MongoDB Developer Centerchevron-right
Developer Topicschevron-right


2 min read • Published May 24, 2022 • Updated Jul 07, 2022
Facebook Icontwitter iconlinkedin icon
Rate this code example


Dhiren and Nirbhay contributed this project.

About the project

GoFifa is a PHP-Mongo based Football Stats Client. GoFifa's data has been sourced from Kaggle, Sofifa and FifaIndex. Data has been stored in MongoDB on AWS. The application is hosted on Heroku and deployed using GitHub as a VCS.


The project was part of my course called ‘knowledge representation techniques.’ The assignment was to create a project that used the basic features of MongoDB. Together with my teammate, we decided to make the best use of this opportunity. We thought about what we could do; we needed proper structured and useful quality data, and also supported the idea behind MongoDB. We went to a lot of sites with sample data sites.
We went for soccer because my teammate is a huge soccer fan. We found this sample data, and we decided to use it for our project.

Why MongoDB?

As mentioned briefly, we were asked to use MongoDB in our project. We decided to dive deeper into everything that MongoDB has to offer. This project uses the most known querying techniques with MongoDB, and other features like geodata, leaflet js, grid fs, depth filtering, mapping crawled data to MongoDB, and references, deployment, etc. It can prove to be an excellent start for someone who wants to learn how to use MongoDB effectively and a rest client on top of it.

How it works

GoFifa is a web application where you can find soccer players and learn more about them.
All in all, we created a project that was a full-stack.
First, we started crawling the data, so we created a crawler that feeds the data into the database as chunks. And we also use the idea behind references. When querying, we also made sure what we were querying with wildcards next to the normal querying.
We wanted to create a feature that can be used in the real world. That’s why we also decided to use geo queries and gridFS. It turned into a nice full-stack app. And top it off, the best part has been that since that project, we’ve used MongoDB in so many places.

Challenges and learnings

I (Nirbhay) learned a lot from this project. I was a more PHP centric person. Now that's not the case anymore, but I was. And it was a little difficult to integrate the PHP driver at the time. Now it's all become very easy. More and more articles are written about bothered about all those codes. So it's all become very easy. But at that time, it wasn't easy. But other than that, I would say: the documentation provided by MongoDB was pretty good. It helps understand things to a certain level. I don't think that I've used all the features yet, but I'll try to use them more in the future.

Facebook Icontwitter iconlinkedin icon
Rate this code example

Handling MongoDB PHP Errors

Feb 03, 2023 | 7 min read

Exploring the PHP Driver with Jeremy Mikola - Podcast Episode

May 16, 2022 | 29 min

Symfony and MongoDB Workshop: Building a Rental Listing Application

Apr 08, 2024 | 3 min read

Creating, Reading, Updating, and Deleting MongoDB Documents with PHP

Aug 24, 2023 | 8 min read
Technologies Used
Table of Contents