Vuepress Paper
Node.js package to fetch content from Dropbox Paper, generate a sidebar and enhance the markdown for Vuepress.
Usage
npm install vuepress-paper --save-dev
Configuration
Generally using Vuepress Paper will take place in Vuepress configuration, for example using all three functionalities:
const fetchPapers generateSidebar paperPlugin = ; module ;
API
fetchPapers({ apiToken, directoryId })
apiToken
Type: String
The Dropbox API access token generated from the Dropbox App Console.
directoryId
Type: Boolean
The directory to fetch content from, the ID is present at the end of a directory URL in Dropbox Paper. For example the Playbook
directory URL ends with:
Playbook-e.1gg8Yut8
. Where e.1gg8Yut8
is the ID.
generateSidebar(documentsMetaData)
documentsMetaData
Type: Array
Information about each document that is fetched from Dropbox Paper, used to create a tree based on their location.
paperPlugin({ documentsMetaData })
documentsMetaData
Type: Array
Information about each document that is fetched from Dropbox Paper, used rewrite links that point to other generated documents.
Development
Quick start
Initial setup
git clone git@github.com:voorhoede/vuepress-paper.gitcd vuepress-papernpm ci
Codebase overview
Testing
Unit tests are present in each file matching the implementation filename ending with .test.js
and are ran with: npm test
.
Style
The code is written in a functional style using Sanctuary to provide simple, pure functions with no need for null
checks.