Skip to content

Latest commit

Β 

History

History
44 lines (29 loc) Β· 2.26 KB

File metadata and controls

44 lines (29 loc) Β· 2.26 KB

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.