Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/blenderskool/pencil
:pencil: Static documentation website generator using Markdown
https://github.com/blenderskool/pencil
documentation generator markdown nodejs static website
Last synced: 19 days ago
JSON representation
:pencil: Static documentation website generator using Markdown
- Host: GitHub
- URL: https://github.com/blenderskool/pencil
- Owner: blenderskool
- License: mit
- Created: 2018-06-19T20:30:20.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2022-12-02T08:03:27.000Z (almost 2 years ago)
- Last Synced: 2024-10-15T03:23:50.442Z (about 1 month ago)
- Topics: documentation, generator, markdown, nodejs, static, website
- Language: JavaScript
- Homepage: http://penciljs.netlify.com/
- Size: 1.58 MB
- Stars: 3
- Watchers: 2
- Forks: 0
- Open Issues: 18
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
Pencil is a powerful static documentation website generator that works on Markdown.## What can it do?
Pencil allows you to write content in [Markdown](https://en.wikipedia.org/wiki/Markdown), which has a very **powerful** and **easy** to learn markup syntax. You can quickly start creating your website without much code.Pencil will automatically create the required files for your website, which are **ready to be deployed** to services like Netlify, GitHub Pages.
## Features
**Static site generation**
- Minified files
- SEO friendly
- Integrate external files**Built-in markdown plugins**
- Table of contents
- Anchored Headings
- Code highlighting
- Callouts
- YouTube player embed
- Emoji**Customization**
- Control theme color
- Dark theme :dark_sunglasses:
- Custom plugins support## Quick start
Pencil site can be created quickly using the CLI tool. Make sure you have recent LTS version of [Node.js](https://nodejs.org/) installed. Follow the commands below:
```bash
npm install -g @penciljs/core
pencil init
# follow steps shown in CLI
```
> Installing dependencies via `npm install` is not necessary if CLI is globally installed.## Development
Following commands must be followed to setup Pencil development environment.```bash
git clone https://github.com/blenderskool/pencil
cd pencil
npm install
npm run dev
```
By default, the dev server opens at port `3000` with the playground.
Playground is where you can test the code and make live changes to it.### Directory structure
Pencil follows the following directory structure,
- `src` - Contains the source code.
- `core` - Core modules that are used.
- `functions` - Contains the code for the builder.
- `templates` - Template files that define the structure, design and basic functionality of documentation website.
- `utils` - Helper functions used extensively in functions.
- `playground` - A sample documentation website setup to test Pencil features during development.
- `bin` - Contains the scripts for the CLI.## Contributing
Make sure you create a fork of this repository before you start contributing.
```bash
git clone
cd
npm install
npm run devgit checkout -b some-fix
# make changes to the codegit commit -m "Your commit message"
git push origin some-fix
```> Use the playground to test your code.
> **Do not commit changes made in the `playground`.**Once you are done with the changes, you can open a pull request to `dev` branch.
## License
Pencil is [MIT Licensed](https://github.com/blenderskool/pencil/blob/master/LICENSE)