The following application is a quote machine that pulls random quotes from Quotable API and is built using Parcel, Sass and ReactJS.
This project was made for the Front End Development Libraries Certification on Free Code Camp.
Users should be able to:
-
View the optimal layout depending on their device's screen size
-
See a random quote displayed upon first load
-
Display a new quote upon clicking the "New Quote" button
-
Tweet a quote by using the
twitter.com/intent/tweetpath
Desktop View
Mobile View
- Project URL: Github Repository
- Live App URL: Github Page
The design of the project was taken from the sample project provided by Free Code Camp as an example output and includes some features not included with the sample project, these include:
- The application was built from scratch using ReactJS
- Parcel was used to bundle all the files to reduce file size
- The quotes we retrieved using the Fetch API from the "Quotable" API
- Uses CSS variables to change the theming of the application
- Displays a loading animation for the first API request
- And is mobile responsive
You are going to need the latest version of NPM in order to install this project on your machine.
- npm
npm install npm@latest -g
- Clone the repository
git clone https://github.com/N-Nikolaev/random-quote-machine.git
- Install NPM packages
npm install
- Semantic HTML5 markup
- CSS custom properties
- CSS Grid
- Mobile-first workflow
- SASS - CSS Preprocessor
- Parcel - Web Application Bundler
- ReactJS - JavaScript Library / Framework
- FontAwesome - Icon toolkit
- Quoteable API - Open source quote API
- Favicon.io - Favicon generator
Distributed under the MIT License. See LICENSE for more information.
- FCC - Random Quote Machine Example Project
- Why you should be using Parcel.js for React, Sass, CSS, Vue, and more
- Add SASS to React
- Add SASS to a barebones React project
- Fetching Data with React Hooks useEffect
- React hooks fetch data
- Dark theme in a day
- Call Parent Function from Child Component
- Best README Template
- Github - Nikolay Nikolaev
- Frontend Mentor - @N-Nikolaev

