rsnext/examples/blog-starter
Jon R 89b8d5856e
[examples] Update remark dependency for blog-starter (#33313)
Upgrade remark-html dependency to resolve the critical vulnerability.

Newer versions like 15.0.1 do not work with this example but version 13.0.2 fixes the security issue and still works.
```
                       === npm audit security report ===

# Run  npm install remark-html@15.0.1  to resolve 1 vulnerability
SEMVER WARNING: Recommended action is a potentially breaking change
┌───────────────┬──────────────────────────────────────────────────────────────┐
│ Critical      │ Unsafe defaults in `remark-html`                             │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ Package       │ remark-html                                                  │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ Dependency of │ remark-html                                                  │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ Path          │ remark-html                                                  │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ More info     │ https://github.com/advisories/GHSA-9q5w-79cv-947m            │
└───────────────┴──────────────────────────────────────────────────────────────┘
```
<!--
Thanks for opening a PR! Your contribution is much appreciated.
In order to make sure your PR is handled as smoothly as possible we request that you follow the checklist sections below.
Choose the right checklist for the change that you're making:
-->

## Bug

- [ ] Related issues linked using `fixes #number`
- [ ] Integration tests added
- [ ] Errors have helpful link attached, see `contributing.md`

## Feature

- [ ] Implements an existing feature request or RFC. Make sure the feature request has been accepted for implementation before opening a PR.
- [ ] Related issues linked using `fixes #number`
- [ ] Integration tests added
- [ ] Documentation added
- [ ] Telemetry added. In case of a feature if it's used or not.
- [ ] Errors have helpful link attached, see `contributing.md`

## Documentation / Examples

- [ ] Make sure the linting passes by running `yarn lint`
2022-01-14 17:18:42 +00:00
..
_posts [Fix] common misspelling errors (#15288) 2020-07-19 04:38:20 +00:00
components Fixed Favicons URL mismatch across the project in [examples/blog-starter] (#29990) 2021-10-19 03:37:44 +00:00
lib Fix falsy values not being returned in post fields (#29011) 2021-09-11 14:24:24 +00:00
pages Fix variable shadowing in blog-starter example (#13988) 2020-06-10 03:30:22 +00:00
public Fixed Favicons URL mismatch across the project in [examples/blog-starter] (#29990) 2021-10-19 03:37:44 +00:00
styles chore(blog-starter): update tailwindcss to v3 (#32398) 2021-12-13 15:25:45 +00:00
.gitignore Added .gitignore to examples that are deployed to vercel (#15127) 2020-07-16 10:52:23 -04:00
package.json [examples] Update remark dependency for blog-starter (#33313) 2022-01-14 17:18:42 +00:00
postcss.config.js Use autoprefixer instead of postcss-preset-env (#21215) 2021-01-22 06:13:33 +00:00
README.md [examples] Add a statically generated blog example using Next.js and Builder.io (#22094) 2022-01-12 21:58:43 +00:00
tailwind.config.js chore(blog-starter): update tailwindcss to v3 (#32398) 2021-12-13 15:25:45 +00:00

A statically generated blog example using Next.js and Markdown

This example showcases Next.js's Static Generation feature using Markdown files as the data source.

The blog posts are stored in /_posts as Markdown files with front matter support. Adding a new Markdown file in there will create a new blog post.

To create the blog posts we use remark and remark-html to convert the Markdown files into an HTML string, and then send it down as a prop to the page. The metadata of every post is handled by gray-matter and also sent in props to the page.

Preview

Preview the example live on StackBlitz:

Open in StackBlitz

Demo

https://next-blog-starter.vercel.app/

Deploy your own

Deploy the example using Vercel:

Deploy with Vercel

How to use

Execute create-next-app with npm or Yarn to bootstrap the example:

npx create-next-app --example blog-starter blog-starter-app

or

yarn create next-app --example blog-starter blog-starter-app

Your blog should be up and running on http://localhost:3000! If it doesn't work, post on GitHub discussions.

Deploy it to the cloud with Vercel (Documentation).

Notes

This blog-starter uses Tailwind CSS (v3.0).