My Showcase

This portfolio covers almost every project I have developed since starting out my computer science path from college. It is a central place for the majority of my projects and almost tells a story about how I have developed my skills and my learning over the years.

There is no enterprise or work experience projects since most of my current work is private sector however I have decided to show the current projects I have made over the many years of development to give a better image of my learning and passion.

Since the heroku update, most of these apps are no longer supported or available to be played around with. Previously I had hosted most of these sites with the free version of Heorku and where available with dummy test accounts.

Many of these websites mark a personal accomplishment with me even if they are not to a professional standard in terms of design, UI, scalability or best practices. However, they are all projects in which I am personally proud as each of them is important to me in different ways and have all formed together to increase my skill set as a web developer.

MyVenu

Personal Business Project : Laravel, Vue, Stripe, Pusher
Slideshow image

MyVenu was a small startup business that I was hired to develop a web venue booking application. I started out contracted to develop the landing page to act as a proof of concept for investors but eventually was taken on as a director to lead the software and web development side of the business. It was a greatly challenging project that I thoroughly enjoyed overcoming obstacles and even with my limited knowledge of web development, got fairly far through each implementation stage of my design however ultimately had to stop due to personal issues. Out of university that was my first real taste at client-driven development since it was not my own personal projects anymore and I was attempting to develop to a professional standard, balancing my workload and managing the project as best as I could.

Even though the business did not take off as well as any of us anticipated, I was still extremely happy with the website I had managed to develop, it was built from the ground up using Laravel, Cashier / Stripe, Vue, Vuex, Sanctum and hosted via Digital Ocean. It was my first major project using a separate business design with an API focused Laravel backend connected to a full Vue/Vuex/Router frontend that, even though I felt way out of my depth, still managed to achieve and was overall happy with the design of. The website was deploying using AWS and also leveraged Amazon's RDS service and S3 for image storing, including SDS for the mailing queue system integrated with Laravel and was a massive milestone for developing a lot of skills that I could use again today.

U-Game

University Year 2 : Vanilla PHP & Javascript
Slideshow image

U-Game was the first website I considered a real milestone for myself. I had been introduced to client-server programming using PHP as a backend language and was the eye-opening moment in where the web and technologies really clicked. It was my first dynamic website using the MVC architecture and full design method that I followed with HTML, CSS and a usage of my first CSS framework - Bootstrap.

This was also my first introduction to PHP as a backend language before my group's win at HackManchester 2020 with Laravel. Learning PHP from scratch gave me the motivation to look deeper into frameworks and enterprise applications since I have always heard mixed opinions about the language. The first area of the assignment was introducing PHP and building a backend server however the second area was more focused on AJAX and real-time javascript integration. It was the perfect starting area to introduce to the way the web works in terms of requests, responses and Javascript integration. This project was my highest ever mark and received 99%, I was immensely proud of myself and I believe this was the starting project that progressed my passion for web development.

Programming 101

University Year 1 : Basic HTML & CSS

Programming 101 was my first ever university website project. It involved using basic HTML & CSS to start up a basic website of a chosen topic and achieve an overall good looking website, without the use of any frameworks or javascript. Since I was fresh out of college, I had only used HTML & CSS before very basically or with bootstrap (the first CSS framework I learned) and it was fun to try to achieve my layouts and styling from scratch.

I designed it by using simple wireframes, a basic colour palette from Material, and tried to push myself out the box by teaching myself flexbox and grid to achieve the best I could do. Overall I ended up achieving 89%; A great start to my web development journey.

Whose Birthday?

Personal Project : React, Next & Firebase

This project was a small introduction for me to learn react and next as I figured that I should not be focusing 100% on just Vue. React is a very popular front-end javascript framework and so I was looking for a small starter project to be introduced to state, components and SSR with React. This was a small dynamic website to keep track of days until birthdays and a place to send messages over firebase and show a mini celebration on the specific day.

Starline

University Year 2 : Design Patterns, JavaFX
Slideshow image

Starline was another project that I greatly enjoyed, it was a module that was aimed to develop a better understanding of design patterns in software architecture and was a great introduction to Java as an 'application' language and involved using java swing to develop a secondary school-based science game. I developed a much wider range of software design with this application and was extremely pleased with the result of the game. In addition to using Java, it also gave me a chance to practice some higher programming fundamentals and was an interesting change from web development to software development.

Even though overall I felt like I could've improved the UI, look and feel of the game, I enjoyed learning basic game fundamentals and mixing design patterns into a real project. Overall it achieved a high first-class honours and vastly improved my knowledge and coding standards since I was aiming for clean object orientated code that was flexible yet readable and was a serious step up from my other personal java projects.

Let's Code

Personal Project : Node, Vue & Web Sockets
Slideshow image

Letscode was my second real attempt at my own personal node/web sockets project. I took inspiration from one of my university lecturers about an easy-setup, fast and live coding solution that users and lecturers can access to develop coding skills online. It was at a time when online learning was becoming the default (due to covid circumstances) and was a project that I started on a whim. The technologies included a fresh start with node, mongodb as well as mongo atlas for a cloud-based service which also involved me getting to grips with basic dev ops and production releases.

The main goal of this project was to push myself outside of the PHP comfort zone and instead try developing with node/mongodb. I also wanted to expand my knowledge on websockets and persistent connections for that 'live' feel for coding. I had already had some small experience using express but decided to learn feathersJS as it boasted a realtime websocket connection and integration with vuex store. Overall I feel the project was a success, I managed to develop the solution to the standard I wanted and included all the features I planned and I was happy with the result even if it would never be used realistically. It definitely was a start in becoming a well-rounded backend developer and learning dev-ops myself.

Emily Eats

Personal Project : Full Stack Vue, Laravel, Inertia & TailwindCSS
Slideshow image

Emily Eats is my most recent laravel project developed as a service for my partner who has a great passion for cooking and loves trying new meals and ingredients in our daily lives. I set out a goal to develop a website where she could easily keep track of meals, ingredients and ratings/reviews. Since she has had trouble storing this information herself, I wanted to make a friendly way of easily uploading images and meals as well as the ability to quickly share with our curious families. It comes with a basic view / search page as well as front admin end for both me and my partner to manage the meals, ingredients and categories.

I wanted to start a fresh full-stack application and leverage some of Laravel's more advanced features such as Inertia, a way of linking Laravel routes and authentication with Vue front end components to take advantage of Vue's development cycle as well as Laravel's powerful routing/request facades. Overall I enjoyed this project as it was a major step forward in developing with TailwindCSS as oppose to bootstrap or material and gave me a good outlook into utility first/ mobile design and development. This is also the first time I chose to host with DigitalOcean and deploy using their 'App' setup which was another step for me in terms of learning deployment and configuration.

Quick Quiz

Personal Project : Quiz App developed with Vue, VueX & Firebase/Firestore

QuickQuiz was a project I developed for myself and my flatmates during the beginning of covid times. Since we could not go anywhere during harsh lockdowns, we made a point of getting together for a quiz night that involved each of us making our own themed quiz on different weeks. I decided this was a perfect opportunity for another quick personal project that could leverage some new technologies that are in my learning queue such as firebase and firestore and working quickly with auth / NoSQL databases and following a 'serverless' architecture.

This project was another step for me to charge forward with web sockets as one of the requirements was a real-time connection with any device to be able to play through their interface. The state and progress of the game must be updated realtime for every connection as well as my machine that was displayed large for everyone to view and showed the current question, answers etc. Since this was a small personal project and only I was going to use the 'management side', the frontend UI design took a hit and definitely is not up the standard I would produce for a professional application however, I was still very proud of the technical accomplishments as that project was a great success and everybody seemed to enjoy themselves!

Espionage

Personal Project Game : Vue, FeathersJS, Mongo Atlas
Slideshow image

Espionage was another project of mine that took place over the first lockdown and was another solution to the boredom of being stuck inside. Both myself and my flatmates enjoyed playing a small web-based Ruby game named Spyfall available online however wished there were more options and customised place/role names that could be unique for us. These specific locations would add an extra comedic value and enjoyment to the game we like playing, some artistic liberties were taken in hommage to the original site, however since I do not have any experience with ruby, all of the 'game' logic server-side and client-side was my own. The focus for me was my first real attempt at a websocket based product and was my first attempt at using feathersJS as a node backend project.

Again like most of my other projects, both the server and client were hosted on Heroku and available publically however the domain I used has expired since but great enjoyment was extracted from all the custom places and names and overall different feel to the original game. The project was a good success for me as there were many problem areas I had to overcome for a playable state namely the state management with feathersJS and web sockets. Another area that I improved upon was linking this state management with VueX and refactoring game logic into 'services' for the client to consume as an API. The realtime web-socket based game approach is one I enjoyed thoroughly and only increased my passion for web development as a whole.

Particle ºC

Univeristy Project: Mobile Development w/ iOS & Swift
Slideshow image

Particle ºC was a small science based project that I produced for the second half of my Mobile Development module. It involved setting up XCode and Swift to develop a native iOS application, taking advantage of the various controls, storyboarding and elements to create a 'science education game'. I opted to develop an app that allowed you to tweak the temperature and scale of particles and watch as they are affected by the temperature changes. Condensation, Evaporation etc etc. I extremely enjoyed this project as I found out the native XCode and Swift environment was absolutely to Apple's modern 'standard' and the suite felt comforting and easy to use, as well as being able to quickly take advantage of the various inputs such as the gyroscope & microphone feedback. Overall I was happy with the outcome as it proved to be quite a nice 'toy' to play around with and if I had more time, I would choose to develop the 'juice' of the app, providing better feedback with haptics and a visual overhaul with more VFX.

Book Review

University Project

...

Smart Reg

Final Year Project : Full Stack Vue, Laravel & Inertia

...

Question that

Personal Project : Expo, React Native, Clerk, Express

...

Cupboard V3

Personal Project : React, NextJs, Prisma, Mailer

...

Coffee Space

Personal Project : Firestore, React, Web-based daily game

...

Lets Code v2

Personal Project : NextJs, Rust, Express

...