Skip to content

dominic-farquharson/dfarquharson_portfolio

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

41 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Portfolio

This is my personal portfolio website. The website was meant to provide some insight into my background and to showcase my projects.

Link to site

Landing Page

Portfolio Landing Page

Projects Section

Project 1 - Portfolio

Project 2 - Portfolio

Technologies Used:

  • HTML
  • SaSS
  • React.js
  • jquery
  • UI Kit
  • Firebase
  • axios

Installation Instructions

  • Download folder.
  • Run npm install in terminal.
  • Run npm start from terminal.

Sample Code: Printing Projects and Skills

// ajax call to firebase - setting state
fetchSkillsAndProjects() {
  // firebase endpoint
  const url = 'https://portfolio-5e471.firebaseio.com/.json';
  // get request to firebase endpoint - read permission only
  axios.get(url)
    .then( (response) => {
      // Running setState method for skills and projects
      this.setState({
        skills: response.data.skills,
        projects:response.data.projects
      })
    })
    .catch( (error) => {
      console.log(error)
    })

}

Build Strategy

React.js:

  1. Create UI by using JSX.
  2. Fetch Skills and Projects from Firebase endpoint.
  3. Create JSON file containing relevant data.
  4. Upload that JSON file to firebase.

JavaScript/jQuery/axios:
  1. Incorporate into React.
  2. Perform a GET request to firebase database using axios.

Styling:
  1. Use UI Kit to simplify positioning, etc.
  2. Use Sass to allow for easy CSS styling through the use of mixins, etc.

Future Goals:

  • Styling! Styling! Styling!
  • Maybe pull from an inspirational quote API and add that to landing page.
  • Possibly make a fixed header when user scrolls down.

Author

Dominic Farquharson

About

Personal Portfolio Website

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published