/notion-pretty-print

A simple tool to print your notion with style

Primary LanguageCSSMIT LicenseMIT

Notion Pretty-Print

This is a simple tool to pretty-print your Notion notes with custom styles. I've taken some code from Samuel Kraft's Guide.

Getting Started

  1. Clone this repo to your machine: git clone https://github.com/pasc4le/notion-pretty-print.git
  2. Go to Your Notion Integrations and create a new integration. (This could be either an Internal or Public Integration)
  3. Get the NOTION_DATABASE_ID you want to use for Notion Pretty Print. Guide
  4. Share your database with the Integration: Open your database on Notion and click on the Share button, then select your integration.
  5. Create a .env file that contains your Integration Token and the Database ID.
NOTION_TOKEN=your_token
NOTION_DATABASE_ID=your_database_id
  1. Build the nextjs webapp with yarn build
  2. Start the webapp with yarn start

Deploy on Vercel

This project is deployable on vercel.com. Use this button for an easy start:

Deploy with Vercel

How to Use

To use this tool you can open your local instance or your vercel project and search for a page on your notion database. If the page exists it should appear in the results, if for some reason it doesn't (Notion API seems a little bit weird) you can use the /notion endpoint to open a page by giving its link.

You did it 🎊! Here you have your custom-styled Notion page.

This application is also made to actually print the notes, you can use the browser's Print menu to do so.

Blocks Support

Not all the Notion blocks are supported unfortunately, this is the complete support list:

Block Name Status
Text βœ…
Sub-Page 🚧
To-do list βœ…
Headings βœ…
Table ❌
Bullet list βœ…
Numbered list 🚧
Toggle βœ…
Quote βœ…
Link to Page ❌
Mention Person 🚧
Mention Date 🚧
Mention Page 🚧
Emojis βœ…
Inline Equation βœ…
Inline Code βœ…
Child Databases (All Types) πŸ”§
Image βœ…
Bookmark βœ…
Video πŸ”§
Block Code βœ…
Table of Contents πŸ”§
Breadcrumb πŸ”§
Any Embed 🚧

Legend:

  • βœ… Fully Supported
  • 🚧 Partially Supported (Not Final)
  • πŸ”§ Not yet implemented
  • ❌ Not supported by Notion API

Development

You can run it in development mode via yarn dev. It is slow (really slow), because of the real-time "translation" of the Notion's blocks.

Pull requests are well accepted ☺️

Issues

If you found something wrong with this tool, sumbit an issue :D