Skip to content
API wrapper for Notion's database [WIP]
JavaScript
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.vscode beta version Aug 17, 2019
src
.gitignore init Aug 10, 2019
README.md
package-lock.json 0.6.8 Sep 10, 2019
package.json 0.6.8 Sep 10, 2019
test.js fix import error in nodejs Sep 7, 2019
yarn.lock beta version Aug 17, 2019

README.md

Notabase (WIP)

API Wrapper For Notion's Database

Getting Started

Installing

yarn add notabase

Example

import Notabase from 'notabase'

// node env

// just Read public data
let nb = new Notabase()

// CRUD support
let nb = new Notabase({
  token: <token_v2>
})

// browser env
// without authCode Read public data
// with authCode CRUD support
let nb = new Notabase({
  proxy: {
    url: <cloudflare worker url>,
    authCode: <>
  }
})
 

// get my music data
let db = await nb.fetchAll({
  songs: "https://www.notion.so/2628769120ad41d998ec068d6e2eb410?v=e8e69ac68a8d483792c54541e4d8ba72",
  albums: "https://www.notion.so/15f1759f38a34fedaa79262812b707f0?v=b385656739214101b2b8a159092a52e8",
  artists: "https://www.notion.so/31b8544ffb034964b1aa56bfa78497c1?v=1d9cbfcd279d4534964acdd374c9824e"
})

// get all songs
let allSongs = db.songs.rows
 
// get song by index
let song = allSongs[0]

// get one song's title (base props)
console.log(`${song.tile}`)

// get artist's name of the song (related props)
console.log(`${song.artist[0].Name}`) // a song maybe has two or more artists

// search song by title in song's table
let aSong = allSongs.find(song=> song.title === "Bad Guy")

// search all song by artist's name in song's table
let songByArtistName = allSongs.filter(song=> song.artist[0].name === "someone")
// search all song by artist's name in artist's table
songByArtistName = db.artists.rows.filter(a=> a.name === "someone").songs

Todos

collection

  • collection.addRow({title:"",Tags:["tag1"]}) // add new row
  • collection.Tags = [...collection.Tags, newTag] // modify tags or mutil-select

row

  • row.delete() // delete a row
You can’t perform that action at this time.