5

NodeJs - Static site generator Release 0.1

 2 years ago
source link: https://dev.to/minhhang107/nodejs-static-site-generator-release-0-1-oel
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

mh-ssg

mh-ssg is a simple static site generator that allows users to convert text files into HTML files. The tool is written in NodeJs with 4 main features. New features will be added on later. Visit the repo on Github.

Installation

  1. Clone the repo
  2. Install Node
  3. Redirect to project directory
  4. Install mh-ssg globally with npm i -g .

Features

  1. Creates HTML files from specified file/directory
  2. Allows users to specify an output folder or use folder dist as default
  3. Allows users to specify a stylesheet
  4. Detects and sets the title of the file into the title and h1 of the HTML file (if any)

Usage

To use the tool, users can specify 3 options

-i --input

The tool accepts input as a single text file or or directory. If a directory is specified, the tool will ignore other file types and only process text files.

mh-ssg -i <file.txt>
mh-ssg -i <directory>
Enter fullscreen modeExit fullscreen mode

-o --output

Users can specify an output directory where they want to save the HTML files to. If the specified directory is not found, the tool will display an error message and will not process the input file. If no directory is given, the tool will use the default ./dist/

mh-ssg -i <file.txt> -o <directory>
Enter fullscreen modeExit fullscreen mode

-s --stylesheet

To use a custom stylesheet, simply pass in the link to the stylesheet to stylesheet option

mh-ssg -i <file.txt> -s <link-to-stylesheet>
Enter fullscreen modeExit fullscreen mode

Example

mh-ssg -i file.txt -o folder -s https://cdn.jsdelivr.net/npm/water.css@2/out/water.css
Enter fullscreen modeExit fullscreen mode

will convert

./file.txt
Silver Blaze


I am afraid, Watson, that I shall have to go,” said Holmes, as we
sat down together to our breakfast one morning.

“Go! Where to?”

“To Dartmoor; to King’s Pyland.”
Enter fullscreen modeExit fullscreen mode
./folder/file.html
<!doctype html>
<html lang="en" dir="ltr">
<head>
<title>Silver Blaze</title>
<meta charset="utf-8">

<meta name="viewport" content="width=device-width, initial-scale=1"/>
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/water.css@2/out/water.css">


</head>
<body>
<h1>Silver Blaze</h1>

<p>I am afraid, Watson, that I shall have to go,” said Holmes, as we sat down together to our breakfast one morning.</p>

<p>“Go! Where to?”</p>

<p>“To Dartmoor; to King’s Pyland.”</p>

</body>
</html>
Enter fullscreen modeExit fullscreen mode

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK