sebasptsch / NextBlogMono

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

The Ultimate NextJS and KeystoneJS Blog Monorepo

Build Status

About

This is the code for my personal blog where I publish posts and experiement with new technology. Over time it has gone through many different iterations with this being the latest (Late 2021). It's build using KeystoneJS as the CMS and NextJS with Incremental Server Side Rendering.

Commands

Here are the different commands that are avaialable in the root package.json file. As a rule each app's commands can be run individually by appending :keystone or :frontend. For example, yarn dev runs the two apps concurrently but yarn dev:frontend only runs the frontend in dev mode. The same is true for all the other commands:

  • yarn dev
  • yarn build
  • yarn start

The notable exception to these are the application specific commands which still follow the same pattern but only work on one of the apps. For example, yarn generate:frontend generates types and graphql-request arguments based on the keystone schema.graphql file. yarn migrate:keystone runs the migrations that are generated during development.

Frontend Libraries and Structure

The frontend is build using NextJS' ISR data fetching which fetches data from the keystone graphql endpoint using graphql-request and the types generated by graphql-codegen.

The UI of the app is built using Chakra-UI React components.

Backend/CMS

The CMS is build using KeystoneJS which is an extremely versatile NodeJS based CMS.

About


Languages

Language:TypeScript 95.4%Language:JavaScript 3.2%Language:Dockerfile 1.4%