Design

To bring in new users, our website had to be eye-catching, but not flashy. Simplicity was finally becoming mainstream in the game's community.
We believed the community is what makes the game successful therefore our forum and online chat-room had to be easily accessible. There was no need to have pages leading to other pages. Anything that was needed was right in front of you.
Development
I gained a lot of experience on this project. Learning about how to use requests, sessions, cookies, and how to handle them. Trying to keep the back-end organized, making the front-end represent the design to the best of my abilities as a beginner. I also learned about the importance of a good layout design. The website had to look good on all devices, not just desktops.
Using the root directory index as the website controller, URLs were quite verbose.
http://example.com?base=main&page=register
http://example.com?base=main&page=login
http://example.com?base=cp&page=settings


The template was built using three sections. A top, middle and bottom component. Each component is a PHP file that is included in the main index file.
The top component would contain all the data above the opening body tag (inclusive). The middle component would contain the content of a specific page and the bottom component had JavaScript includes, the closing body tag and the page footer.
Issues
The website layout would always scale to the viewport's maximum width and height which looked terrible on large resolutions or wide aspect ratios. This caused a lot of white space. The navigation bar buttons, various components and columns would stretch to the maximum possible width of the device screen.
Routing was a mess. They could get incredibly long and confusing. For example:
http://example.com?base=cp&page=settings
http://example.com?base=cp&page=logout
In the future, I wanted to "prettify" them. They should be simple and easy to remember.
- http://example.com/settings
- http://example.com/logout
The controller should be handled internally, the end-user doesn't need to see these properties. Unfortunately at the time, I didn't know the terminology for this idea thus making attempts to research about it very difficult.