This is a WorkFlowy client for Deno and Node. The goal of this library is to enable WorkFlowy power users to access WorkFlowy lists programatically and perhaps create some new automations and integrations.
- Reading and updating WorkFlowy lists
- Export of lists to JSON or formatted plain text
- Basic search of items in lists
- Support for live copies (mirrors)
In order to access WorkFlowy content, you need to provide your WorkFlowy username and password. Authentication via one-time code or two-factor authentication are not supported because of technical limitations of WorkFlowy API.
import{WorkFlowy}from"workflowy";// Log in with your username and passwordconstworkflowy=newWorkFlowy("your@email.com","your-password");// Load WorkFlowy outline into an interactive document structureconstdocument=awaitworkflowy.getDocument();constrootList=document.root;consttopLevelLists=document.items;// array of lists in the rootconstmyList=topLevelLists[0];myList.findOne(/^Needle/);// Finds a sublist using a RegExpmyList.findAll(/^Needle/);// Finds all sublists using a RegExpconstrootList=document.root;constmyList=document.items[0];myList.name;// name of the listmyList.note;// note of the listmyList.isCompleted;// whether or not the list or item is completedmyList.items;// items and sublistsmyList.setName("New name").setNote("New note");// sets a name and a noteconstsublist=myList.createList();// Creates a sublistconstsubitem=myList.createItem();// Alias for createListmyList.move(targetList);// moves a list or item to a different listmyList.delete();// deletes the listif(document.isDirty()){// Saves the changes if there are anyawaitdocument.save();}npm install workflowy # npm
yarn add workflowy # yarn
bun add workflowy # bun
pnpm add workflowy # pnpm
Unlike Node, Deno relies on direct URL imports instead of a package manager like NPM. The latest Deno version can be imported like so:
import{WorkFlowy}from"https://deno.land/x/workflowy/mod.ts";Big thanks to Mike Robertson for providing the
workflowy NPM package name!
MIT