Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/rintaroutw/gatsby-markbook

Markdown Book with gatsby
https://github.com/rintaroutw/gatsby-markbook

code-highlight gatsby graphviz latex markbook markdown markdown-to-html

Last synced: 16 days ago
JSON representation

Markdown Book with gatsby

Awesome Lists containing this project

README

        

# Markdown Book



This is modified from `gatsby-default-starter`.
Support some features I required for lots of my markdown key note files.

- $\LaTeX$ (with $\KaTeX$ and `gatsby-remark-mathjax`, no server rendering thougth)
- Graphviz (via `gatsby-transformer-graphviz`)
- Using `Typography.js` Themes ([https://kyleamathews.github.io/typography.js/](https://kyleamathews.github.io/typography.js/))
- Code Highlight (`.md` via `gatsby-remark-vscode`, `.mdx` via `primjs`)
- GeoGeBra Component to load and show GeoGeBra graphic much faster than iframe.
- A simple filter to find the markdown pages by keyword. It's important for ppl like me who got tons of markdown files as notes.

Demo Site : [*https://markbook.netlify.com*](https://markbook.netlify.com)

## GitHub Source

[*https://github.com/RintarouTW/gatsby-markbook*](https://github.com/RintarouTW/gatsby-markbook)

## Screen Shots

### Code Highlight

![Screen Shot - Code Hightlight](https://i.imgur.com/BnI2xlh.png)

### Graphviz

![Screen Shot - Graphviz](https://i.imgur.com/BCJj3pC.png)

### LaTeX

![Screen Shot - LaTeX](https://i.imgur.com/wGKYKV4.png)

## Netlify Deployment

[![Netlify Status](https://api.netlify.com/api/v1/badges/74fac30d-002b-4ea4-b443-3e4b7875f44b/deploy-status)](https://app.netlify.com/sites/markbook/deploys)

1. Fork this repository ([*https://github.com/RintarouTW/gatsby-markbook*](https://github.com/RintarouTW/gatsby-markbook)) to your own account.
2. Goto [*https://app.netlify.com/*](https://app.netlify.com/) and click on the `New Site from Git` button.
3. Choose your forked respository and deploy it. (All default setting is good. nothing to change.)
4. Wait for 2min and 32 seconds, your site would be alive just like my demo site.

## Local Installation

You can see this as another gatsby starter project with the features listed above, so u don't need to start from scratch.

```bash
npm install -g gatsby-cli

gatsby new gatsby-markbook https://github.com/RintarouTW/gatsby-markbook.git

# It is even better to use the forked repository on your account.

cd gatsby-markbook

gatsby develop

# or production build

gatsby build
gatsby serve
```

## Test

1. Browse [*http://localhost:8000/*](http://localhost:8000/)
2. Click on Test page (which is `src/pages/Test.md`)
3. Check `src/pages/Test.md` for the usage example for $\LaTeX$, Graphviz, code highlight and more.
4. Put your `.md` files to `src/pages/` and they would be presented right away.

## Commit and Auto Publish to *Netlify*

If you had your *Netlify* deployed on the forked repository, any time you add/modify `.md` files to `src/pages/`, commit and push, *Netlify* will get notified, update and publish automatically. So, push your commit means publish to *Netlify* automatically. 100% Focus on the content writing feels really good.

Enjoy it.