Interactive Design - Final Project

25/06/2025 - 27/07/2025 (Week 10 - Week 14)
Shema Goldie Angwen / 0372129
Interactive Design
Bachelor of Design (Hons) in Creative Media / Taylor's University
Final Project


CONTENT LIST

Objective: The objective of this assignment is to bring your website redesign to life by developing a fully functional website (MINIMUM OF FIVE (5) PAGES) based on the prototype created in the previous assignment. This final product should reflect all the design and user experience decisions made throughout the project, resulting in a polished and professional website.

Assignment Description: Building on your redesign proposal and prototype, you are now required to develop the final working website. This website should be fully functional, demonstrating your ability to implement web design principles, front-end development techniques, and best practices in user experience (UX) and accessibility.


EXERCISE

We were given an exercise to create a layout in order to understand how to link one page to another when clicked, as well as how to create a navigation menu.

         
Figure 1.1: Layout Tutorial

Figure 1.2: Layout Tutorial Code


FINAL PROJECT
Website Redesign  

- DEVELOPMENT PROCESS & CHALLENGES FACED -

For my redesign project, I chose https://mahanaim.sch.id. I plan to redesign five main pages: the HomepageAcademicNewsContact, and Registration pages.

In Project 2, we were asked to create a Figma prototype with at least three pages. I completed this by designing the HomepageAcademic, and Contact pages. I made changes to improve the look, make the site easier to use, and better match the school’s identity.


Figure 2.1: Figma Prototype Task 2

After that, to prepare for creating the actual website with code, I decided to create two additional pages in Figma, such as Registration and News Page, even though it wasn’t part of the requirement. This helped me get a clearer idea of the layout and structure for the full website. I also added one more page, I designed a revised version of the Contact page to improve the layout.

Figure 2.2: Additional Figma Prototype 

The first thing I did when I started coding the website was choosing fonts from Google Fonts that matched the overall style of my design. I selected two fontsMontserrat and Rosarivo, and added their embed code to the <head> section of my HTML file. By using a limited number of fonts, the website maintains a clean, modern, and consistent look across all pages.

Figure 2.3: Embedded Code Google Fonts

The next step I took was organizing all the images I planned to use by placing them into a single folder within my project directory. This helped keep my project files tidy and made it easier to manage and link the images correctly in my HTML and CSS files.

HEADER 
After organizing the images, I began creating the website header. I inserted the Mahanaim School logo along with the school name as a text title. This part was not that easy for me because arranging these elements using code was not easy for me, especially as I’m new to coding and had no prior experience, except for the one time Mr. Shamsul guided us through the exercise inserted above.

I knew I had to catch up quickly and overcome my lack of knowledge. I went through a lot of trial and error, adjusting margins, positions, etc.

Figure 2.4: Header

 
Figure 2.5: Header Code

Footer
Creating the footer was also challenging. At one point, I copied and pasted the same footer code to all the pages, but when I previewed the site, it looked different on every pages. I felt overwhelmed because there were many issues to solve while building the website. It turned out that I had already updated the HTML code on one page but hadn’t updated it on the others. I’m grateful for this experience because it taught me important lessons, like being careful and patient while coding so that small mistakes don’t affect the entire website.
- Homepage -
Hero Section
Next, I added an image of the Mahanaim school building, placing it directly below the navigation menu. This helps create a strong visual impact and immediately introduces visitors to the school’s environment. Adding an image using code wasn’t too difficult, I simply adjusted the image width to 100% so that it would stretch across the entire page and fit nicely below the navigation menu. I also experimented with applying contrast filters through code.

Figure 2.6: Hero Section

Figure 2.7: Hero Section Code

CTA Button
Below the image of the school building, I added an inviting message that says “Come & Join Us” to encourage visitors to take action and engage with the school. To make it easier for users to respond, I included a clear and prominent call-to-action button labeled “Register Now.” This button is linked directly to the registration page, guiding interested visitors smoothly through the next step of enrollment. I didn’t encounter any problems while doing this. One thing I learned is that when writing code, I can’t use the ‘&’ symbol directly, instead, I should use &amp; .

Figure 2.8: CTA Button

Figure 2.9: CTA Button Code

Vission & Mission Section
For the Vision and Mission section, it was a bit tricky because I had to adjust the vision mission hover text size. It appeared differently on various pages, and in some cases, the text got cut off, so I needed to fix that.


Figure 2.10: Vision and Mission across different size devices

Figure 2.11: Vission Mission Section Code

Carousel
Creating a carousel was really challenging for me. I watched several YouTube tutorials and tried using Bootstrap, experimenting with lots of trial and error. Thankfully, I was able to get it working in the end. I added carousels for the Alumni and Events sections. Although it was difficult, I felt really proud and happy when my carousel finally worked as expected.

Figure 2.12: Trying Youtube Tutorials 


Figure 2.13: Carousel Code


Figure 2.14: Event Carousel

Figure 2.15: Alumni Carousel

- Academic Page -

Besides the carousel, the Academic page was the hardest for me to create. The layout I designed in Figma was quite complex, and at one point, I even thought about changing the design because I felt overwhelmed and unsure if I could bring it to life exactly as planned.

My prototype design is using multiple layer, half of the section was overlaid with an image, other left was also overlaid with image but not fully, then there was another semi-transparent rectangle on top to make the image look more interesting, plus rotated text and a title layered above everything. At first, as a beginner, I thought this would be too difficult to code.

I then decided to work on the layout step by step, but almost lost hope when my Adobe Dreamweaver suddenly crashed. It was very frustrating because I had spent several hours on the work, and I had to start over again. However, I saw this as a challenge I needed to overcome and learned an important lesson about saving my work regularly, I also decided to switch to Visual Studio Code. In Visual Studio Code, I enabled the auto-save feature and carefully rebuilt the layout layer by layer. After completing one section, I simply copied and pasted it, then changed the text, adjusted the colors, and flipped the layout. I reused this template throughout the process until I finished creating all the academic pages. In the end, I was glad to see that the academic page matched my Figma prototype exactly. Completing such a complex page gave me a great sense of satisfaction, and I learned a lot from making this section.

Figure 2.16: Academic Section Code

- News Page -
Compared to the Academic page, the News page was much simpler to create. It mainly consisted of a title, subtitle, date, and an image for each news. I only needed to create one news, then copy and paste it while changing the text and image for each of them. Because of its straightforward layout, I didn’t encounter any major problems while building this page. 

Figure 2.17: News Section Code

- Contact & Registration Page -
Creating the contact and registration pages wasn’t too difficult because Mr. Shamsul had already given us a tutorial on how to make forms. I didn’t encounter any major problems while working on these pages, but the process still required careful attention to detail.

Figure 2.18: Contact Section Code

Figure 2.19: Registration Section Code

- RESPONSIVE DESIGN - 
To make a website responsive, I add <meta name="viewport" content="width=device-width, initial-scale=1.0"> because it's not included by default. This is something Mr. Shamsul emphasized in class.

Figure 2.20: Responsive Code

Next, I perform responsive testing across various devices. I use browser inspection tools as well as physical testing by opening the website on my phone, iPad, and Mac. The website proves to be fully responsive, adapting seamlessly to different screen sizes. 

Below is a video of me testing the responsiveness on various devices: my phone (1179 px), iPad (2732 px), and laptop (3024 px).

Figure 2.21: Testing responsiveness on phone (1179 px)

Figure 2.22: Testing responsiveness on iPad (2732 px)

Figure 2.23: Testing responsiveness on laptop (3024 px)

- CROSS-BROWSER COMPATIBILITY -

After that, I do compatibility test to ensure that the website functions correctly across multiple browsers (e.g., Chrome, Firefox, Safari, Edge).

Figure 2.24: Compatibility Test in Microsoft Edge

Figure 2.25: Compatibility Test in Firefox

Figure 2.26 : Compatibility Test in Chrome

Figure 2.27: Compatibility Test in Safari

"I realized that coding isn’t just about theory, it requires experience. The more mistakes I make, the more I learn, and the more my skills improve."

- FINAL RESULT LINKS -

Fully Functional Website Live URL: 

Google Drive Link: 


FEEDBACK

WEEK 12
Mr. Shamsul advised me to remove the underlining on the Academic page to improve its visual appearance and make the design look cleaner.

WEEK 14
Mr. Shamsul suggested that the currently opened page should appear in a different color to help users easily identify which page they are on. He also advised me to either create placeholder pages for the navigation links that are not yet available. In the end, I decided to reduce the number of navigation menu items instead of creating unavailable or empty pages.


REFLECTION
Learn coding has been quite a challenge for me. At first, I had no idea how to start coding based on the designs I created. It felt overwhelming and confusing. I couldn't imagine how those designs could be translated into actual code. It definitely wasn’t easy, but that’s part of the learning process. What helped me get through was taking personal notes. I documented everything that Mr. Shamsul taught me, and those notes became my guide whenever I got stuck. This experience reminded me that learning isn't just about theory. Coding requires experience, the more mistakes I made, the more I learned. Each error became a lesson, and slowly, my skills began to grow. I’ve come to realize that persistence is key. Not giving up, daring to bring my imagination to life, and being willing to go through the complicated parts are what helped me move forward. Even though the journey was tough, I learned that consistency, patience, and a willingness to explore more and more are what really shape a good coder.


Comments

Popular Posts