Gridonyx / blog

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Railway Blog

This repository contains the source code for the Railway blog. We use a NextJS app with Notion as our CMS.

Deploy on Railway

✨ Features

  • NextJS
  • TypeScript
  • TailwindCSS
  • Notion

πŸ’β€β™€οΈ How to use

We also have a detailed guide on our blog to help users deploy a similar blog using Railway.

Step 1: Create a notion DB

You can find instructions on how to set up the Notion Database, TLDR you need the following fields in a Database - Inline on a page, it needs to be inline, or else it won't work.

  • Page (Title) - The page containing a post
  • Slug (Text) - The URL of a post
  • Published (Checkbox) - Only published blog posts show up on the website
  • Date (Date) - The date the post was published
  • Authors (Person) - A list of users that wrote the post
  • Image (Text) - The URL of the meta image for a post
  • Description (Text) - The preview text for the post
  • Featured (Checkbox) - Show post in the featured section
  • FeaturedImage (Text) - The URL of the image to use when a post is featured
  • Category (Select) - Post category options

Step 2: Create a Notion Integration

This will be done on Notion's Manage Integration page, copy the token, this will be used as NOTION_API_TOKEN

Step 3: Get a hold of your Database ID

You can get this from the URL of the page, which you can obtain by clicking the Share button in the upper-right of the page and clicking Copy Link. The link structure is https://www.notion.so/<user>/<database_Id>?v=.... , the database_Id will be used as POSTS_TABLE_ID during the deploy.

That is it, just make sure the properties on a post within Notion are not empty.

πŸ“ Notes

This blog is heavily based on this example by JJ Kasper.

About


Languages

Language:TypeScript 92.0%Language:JavaScript 6.9%Language:CSS 1.1%