Ziwa Mukungu

Front-end Developer

About

I am a 23-year-old front-end developer and to me, passion comes easily as long as it challenges my mind. I was a Unity Game Developer before switching to Front-end Development. After making two games, I later decided to expand my coding knowledge by joining the community of web development.

I am self-taught and have built personal projects applying all the skills I know. I love to design and build responsive websites and web apps. The multitude of tools and languages that make up the web environment are what keep me glued to the monitor. I am eager to become part of a team and learn new technologies.

portrait CV

Skills

HTML & CSS

Javascript

Python

C#

React

Redux

SASS

jQuery

Node.js

Express

MongoDB

PostgreSQL

Git & GitHub

Webpack

RESTful API

Firebase

Heroku

Jasmine

Photoshop

Illustrator

Projects

triangle ice cream

Triangle Ice Cream

Lets users view ratings from local ice cream stores in North Carolina's Research Triangle Area.

Application

Triangle ice cream is a web app built with the React framework. It utilizes APIs to view ice cream stores local to North Carolina's research triangle region.

Goals

Create an app that features a map of ice cream stores around the Research Triangle area. Use Zamoto's API to provide ratings, geolocation coordinates, and menu links for each store. Display the stores using the Google Maps API. Apply a service worker for offline functionalities.

Obstacles

Applying the Google Maps API to an individual react component was the most time-consuming part of the project. I applied an async script loader so I could operate on the callback of the script.

Takeaway

Through this project, I learned how to retrieve and use data from a third-party API and to apply it to another API.

React, Zomato API, Sass, Google Maps API
Link Code
image

Team Goals

An app that lets users share goals for everyone to complete.

Application

This is an app Built with React and Redux with Firebase for authentication and data storage. Team goals is an app that provides a platform for teams to share tasks and goals. All users with access can complete any posted task and clear all previous tasks.

Goals

Let users gain access by signing up and providing correct login information. Users can create their own goals. Goals have the tag of users who either posted or completed them. The completed list receives and clears goals by user action.

Takeaway

I learned how to use Firebase’s authentication and to correctly serve client-side information to users who are logged in.

React, Redux, Node.js, Express, Sass, Firebase
Link Code
music sampler

Music Sampler

A web app that uses Spotify's API to retrieve 30-second tracks.

Application

This app was built using the React framework and uses express on server-side for Spotify's server-to-server authentication. Users are able to search for an artist and play 30 seconds of any track retrieved for that artist.

Goals

Create an application that was capable of authenticating through server-to-server endpoints to allow users easier use of an API that has Oauth standards. Another Goal was to implement a functional music player interface with react's state management.

Obstacles

I typically put my projects on Github Pages. I soon realized I couldn't put any apps with any types backends on Pages since Github does that for me. Instead, I used Heroku to post this project.

Takeaway

I learned how to retrieve access_tokens from server requests for client-side applications to use with Spotify's API.

React, Spotify API, Node.js, Express, Sass
Link Code
image

Reminder Pro

A task tracking app with browser cookies for further state retention.

Application

Reminder Pro is a web app that lets users track tasks and revisit them while browser cookies are still active. Tasks have time stamps showing time left before the intended completion date.

Goals

Allow users to add, delete, and clear all reminders. Save reminders in browser cookies for later access.

Obstacles

Working with Redux for the first time was a challenge. Reducers and actions were a new concept I had to get used to. Storing the cookies in the browser through the reducers was a functionality I thought would make the most sense, as it is where state manipulation occurs.

Takeaway

I wanted to try using the Redux library with React. This app is a product of my journey to understanding Redux's state management library.

React, Redux, Sass, Moment
Link Code
image

Restaurant Reviews

A responsive web app using a static database to pull restaurant info.

Application

Restaurant Reviews is a responsive website able to scale for any device. It is a personal project to test my skills in responsive design.

Goals

Create a mobile-ready web application that adheres to the W3C Accessibility standards. The app must be able to deliver requested assets for offline use.

Takeaway

My greatest takeaway from this project was implementing various media breakpoints for keeping fonts and content scalable as device resolution changed. I also learned the methods of caching asset requests for offline use.

Google Maps API, Gulp
Link Code
image

My Reads

A book tracking web app that lets users organize books from a server-side database.

Application

MyReads is a book tracking web app built using the React framework. Users are able to search for books stored in the database and organize than into shelves.

Goals

Create a responsive single-page application that retrieves a collection of books. Allow the user to place the books into shelve categories. I must update the database with the individual book's shelve updates. Then I display the book items beneath the shelves they are sorted under. The shelves must be another component of the page separate from the library component.

Takeaway

I've learned how to switch React components using the react-router plugin and how to persist data between components with React's state management.

React, Sass, Udacity Database
Link Code
image

Jasmine Feedreader

An application that pulls feeds and displays headlines to users.

Application

This is an app that makes ajax request to a variety of feeds and displays the headlines of articles for users to browse.

Goals

Used unit tests to verify the application works in it's intended way.

Takeaway

I learned how to approach a project with tests first and how to create the tests necessary for satisfactory results.

Jasmine, jQuery
Link Code
image

Memory Game

A simplistic rendition of the card matching memory game.

Application

This is a classic take on the card matching memory game. The game features score mechanics in the form of 3-star ratings. There is also a timekeeping mechanic for users to track their best time.

Goals

Utilize jQuery to access DOM elements and compare contents strictly with other elements to assess matching parameters.

Takeaway

I learned of jQuery's DOM traversal library and used it to easily reach elements and manipulate classes to show and hide cards with compliance to the game mechanics.

jQuery
Link Code

Contact