rsnext/examples/blog-starter
Luc Leray f52955ec94
Clean up examples package.json (#27121)
Clean up package.json files in the `examples` directory:
- Add `private: true`
- Remove `version` (because they are irrelevant for packages that are not meant to be published)
- Remove `name` (because they are optional for packages that are not meant to be published, and when someone clones an example, they often rename it and the property becomes stale)
- Remove `author`
- Remove `description`
- Remove `license`

Also remove `with-dynamic-app-layout` example completely, since it does the same as `layout-component` (https://github.com/vercel/next.js/pull/27121#discussion_r668178408).

## Documentation / Examples

- [x] Make sure the linting passes
2021-07-12 19:58:03 +00:00
..
_posts [Fix] common misspelling errors (#15288) 2020-07-19 04:38:20 +00:00
components Update blog starter example (#19698) 2020-12-30 19:04:23 -05:00
lib Update .now.sh to .vercel.app. (#22359) 2021-04-14 09:46:06 -05:00
pages Fix variable shadowing in blog-starter example (#13988) 2020-06-10 03:30:22 +00:00
public [Example] Use .jpg for images in blog-starter (#11176) 2020-03-26 12:45:17 -05:00
styles Update blog-starter to use Tailwind CSS v1.4's new built-in purge option (#12452) 2020-05-06 11:27:21 +02:00
.gitignore Added .gitignore to examples that are deployed to vercel (#15127) 2020-07-16 10:52:23 -04:00
package.json Clean up examples package.json (#27121) 2021-07-12 19:58:03 +00:00
postcss.config.js Use autoprefixer instead of postcss-preset-env (#21215) 2021-01-22 06:13:33 +00:00
README.md Updated Readme (#25575) 2021-06-09 13:40:51 -05:00
tailwind.config.js Update blog starter example (#19698) 2020-12-30 19:04:23 -05: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. To control the generated stylesheet's filesize, this example uses Tailwind CSS' v2.0 purge option to remove unused CSS.