serve-local-markdown v1.0.11
Serve Local Markdown
Serve Local Markdown is a simple Node.js package that allows you to view your local Markdown files in the browser. This package serves the Markdown files from the current directory and renders them using marked and ejs for better formatting and design.
Features
- Recursive directory scanning: Automatically detects and serves markdown files from all subdirectories.
- Base64 encoded paths: File paths are encoded in Base64 to ensure safe URL handling
- EJS templating: Renders markdown files using EJS templates for a more customizable display.
- Static file serving: Supports serving static CSS and other assets from a public directory.
- Use of application in multiple directories: Now you can use this application on different directories. It will not throw any error for already used port.
- Syntax Highlighting: Added syntax highlighting support for code snippets (includes: JavaScript, PHP, SQL C, C++ etc.)
- Table of Contents: Table of contents for h2 elements so that it will be easier to read the topic
Installation
To install the package globally, run the following command:
npm install -g serve-local-markdownUsage
Navigate to the directory containing your Markdown files and run:
serve-local-markdownYou should see the following output:
Markdown server is running at http://localhost:3838Open your browser and go to http://localhost:3838 to view and navigate your Markdown files.
Directory Structure
Ensure your project directory is structured as follows for optimal usage:
your-markdown-directory/
├── file1.md
├── file2.md
├── subdirectory/
│ └── file3.mdCustomization
Static Files and CSS
You can customize the appearance by adding your own CSS files. Place your CSS files in a public directory within the installation path of serve-local-markdown:
serve-local-markdown/
├── public/
│ └── styles.css
├── views/
│ ├── layout.ejs
│ ├── index.ejs
│ └── file.ejsLayout and Templates
You can modify the ejs templates to customize the layout:
views/layout.ejs: The main layout file.views/index.ejs: Template for the file list.views/file.ejs: Template for rendering individual Markdown files.
Contributing
If you would like to contribute, please visit our GitHub repository. Pull requests, issues, and feature requests are welcome.
License
This project is licensed under the MIT License.