About bluegill.world
My name is Fadi Tawfig. I'm a Toronto, Ontario based data engineer and anlaytics professional. I've recently developed a love (read: obsession) for fishing. I've always had a deep love and fascination of the natural world, and my foray into angling has given me an opportunity to engage with, and experience, the incredible natural environments that Southern Ontario has to offer.
One of the chief reasons I've been so drawn to fishing is for the opportunity to learn about, and deepen my udnerstanding of these fascinating animals and the complex ecosystems that they are an integral part of. To this end, I thought to build an app that would serve as a logbook that would allow my to index, and document the fish that I catch, along with any pertinent information regarding the circumstances of the catch.
About the app
This application was built using Next.js, Mantine, and TypeScript. The backend API is built using express.js and is hosted on the AWS App Runner service. The database is a PostgreSQL database that is hosted on Amazon's RDS service. The web-app is deployed and hosted using Vercel.
This was my first project developed using Next.js's app router, and also the first one where I used Mantine. I'll definitely be using both Mantine and the app router for future projects, as I've found both to be highly intuitive, flexible and conducive to rapid development.
Regarding the design of the app, I've kept it fairly bare bones; for the most part relying on the default styling and design of the components provided by Mantine library, which as I familiarized myself with it, drove the design of the app. As some point during the development process, the app, began to take on a design similar to that of a social media platform such as Twitter or Instagram. This is most evident in the CatchList compoent, with its "post feed" design, complete with "Likes" and comment counts. While this wasn't initially the intended design that I had in mind, it was one that, as mentioned, was driven in part by the design of the Mantine components, and also provided me with some clear examples from which to draw inspiration.
While this app was created primarily for my own use, and the use of my girlfriend/friends, it's available to public users, and anyone can sign up and contribute information around their catches if they so choose. Anyone interested can also view the public repository for the app on Github.
Why bluegill.world?
As for the name, the bluegill was the first fish I had ever caught using my own gear, and the one that kicked off my obsession with the sport of fishing. Since that first fish, I've caught many more of the species and learned a great deal about them and their nature. Though bluegill are small, and not particularly challenging to catch, they are a beautiful fish, and put up a strong fight for their size. They are also a very important species in the ecosystems that they inhabit, and are a key indicator of the health of the waters that they live in. As such, I've developed a deep respect and admiration for these humble fish, and I thought it fitting to name my app after them.
Future plans
Now that this project is launched and publicly available, I'm ready to put it on maintenance mode and move on to other things for the time being. While I didn't get around to implementing every feature that I thought up along the way (e.g. a notification system, and an admin section, among others...), I'm generally pleased with the state it's in currently and, while I may come back to this project some day, I'm at the point where I'd prefer to move on to another project, rather than grinding out a laundry list of features for this app and becoming burnt out in the process.
As mentioned, I currently work full time as a data analytics professional, and also offer freelance and consulting services. If you're interested, you can visit my website at faditawfig.com to learn more. I'm also an avid software/application developer, and a hobbyist game-dev, and I've always got at least one project in the works. If you're interested in reviewing some of my other projects, you can visit my portfolio at portfolio.faditawfig.com.