Skip to content

Latest commit

 

History

50 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Markdown Previewer

The following application is a markdown previewer that uses the MarkedJS package to parse and compile markdown and is built using Parcel, Sass and ReactJS.

Motivation

This project was made for the Front End Development Libraries Certification on Free Code Camp.

Table of contents

Overview

The challenge

Users should be able to:

  • View the optimal layout depending on their device's screen size

  • Turn GitHub flavored markdown into rendered HTML in a separate display element

  • Interpret carriage returns

  • Display sample markdown on first load in the editor field and the corresponding rendered HTML in the preview field

Screenshot

Desktop View

Light theme

Dark theme

Mobile View

Light theme

Dark theme

Links

Features

This project was based on the sample project provided by Free Code Camp as an example output and has a number of additional features to distinguish itself from the provided sample output, these include:

  • The application was built from scratch using ReactJS
  • Parcel was used to bundle all the files to reduce file size
  • The design was based off of the Dillinger.io markdown editor.
  • Has light and dark mode theming
  • Pulls a .txt copy of the README.md file for the initial load sample using the fetch API
  • And is mobile responsive

Getting started

Prerequisites

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

Installation

  1. Clone the repository
    git clone https://github.com/N-Nikolaev/markdown-previewer.git
  2. Install NPM packages
    npm install

Built with

  • 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
  • MarkedJS - Markdown parser and compiler
  • DOMPurify - DOM only XSS sanitizer
  • PrismJS - Light-weight syntax highlighter
  • Favicon.io - Favicon generator
  • Flatuicolors.io - Premade color palettes

License

Distributed under the MIT License. See LICENSE for more information.

Useful resources

  1. FCC - Markdown Previewer Example Project
  2. React passing data between siblings
  3. Composition vs Inheritance
  4. Context API
  5. Using marked in React
  6. How to write secure code in React
  7. Beyond Console Log in 100 Seconds
  8. Get PrismJS working in React

Author

Acknowledgments

About

Free Code Camp (Front End Libraries): Markdown Previewer

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages