Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/davestewart/workflowy-multiflow
Navigate, organise & maintain context between separate WorkFlowy trees
https://github.com/davestewart/workflowy-multiflow
Last synced: about 2 months ago
JSON representation
Navigate, organise & maintain context between separate WorkFlowy trees
- Host: GitHub
- URL: https://github.com/davestewart/workflowy-multiflow
- Owner: davestewart
- Created: 2021-02-03T12:18:40.000Z (almost 4 years ago)
- Default Branch: main
- Last Pushed: 2024-06-19T10:20:26.000Z (6 months ago)
- Last Synced: 2024-06-22T03:20:23.668Z (6 months ago)
- Language: TypeScript
- Homepage:
- Size: 1.72 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
Awesome Lists containing this project
- awesome-webext-dev - workflowy-multiflow - A column view for Workflowy (Learning)
README
# WorkFlowy MultiFlow
> Columns view for Workflowy
![screenshot](assets/screenshot.png)
## Intro
WorkFlowy MultiFlow adds a multi-column view to WorkFlowy, which enables you to maintain an overview of or relationship between several trees at once.
It can also make moving data within large trees easier, as you can open a new column and cut and paste between columns, rather than scrolling up and down or collapsing and uncollapsing bullets.
Columns are opened by Cmd/Ctrl+Clicking on:- bullets
- links to other pages
- the breadcrumbs' page titleYou can open and close as many columns as you require, and change the layout by clicking on the toolbar icon and selecting the layout from the popup.
When you first click the icon your previous session will be loaded so you can start where you left off.
See the [home page](https://davestewart.co.uk/products/workflowy-multiflow) for more information.
## Development
To build the project, run:
```bash
npm run dev
```To run the extension as you develop, load the unpacked extension:
- Open Chrome
- Go Window > Extensions
- Click "Load unpacked"
- Choose the project's `dist` folderYou'll need to reload the extension from its settings page if you make changes.
*TODO: migrate to a build setup that supports HMR*
## Releasing
To release, update the `src/manifest.json` version field, and run:
```
npm run release
```A zip file will be saved to `../releases`.
Upload this file to the [Chrome Developer Dashboard](https://chrome.google.com/webstore/devconsole/8051cfa9-44b7-4869-9a94-1843ebf8c388?hl=en-GB) and publish using the tools provided.
## Extension Interoperability
Because MultiFlow uses `iframe`s to simulate columns, it can break other extensions which target WorkFlowy via the main `window` object.
If you're an extension developer, you can use the code in [`src/interop/multiflow.js`](https://github.com/davestewart/workflowy-multiflow/tree/main/src/interop/multiflow.js) to grab the active frame (or main window), or respond to state changes:
```js
// copy and paste the MultiFlow Interop API
const MultiFlow = { ... }// get a reference to the active frame or main window
MultiFlow.getWindow()// log when MultiFlow state changes
MultiFlow.onChange(function (attr, value, oldValue) {
console.log({ attr, value, oldValue })
})
```Hopefully this covers most use cases!
If not, feel free to create an [issue](https://github.com/davestewart/workflowy-multiflow/issues).
## Assets
The file `assets/multiflow.sketch` is a [Sketch](https://www.sketch.com/) file containing the icons and UI images for the extension.
## Links
- [MultiFlow home page](https://davestewart.co.uk/products/workflowy-multiflow)
- [Chrome Web Store](https://chrome.google.com/webstore/detail/workflowy-multiflow/khjdmjcmpolknpccmaaipmidphjokhdf)
- [Product Hunt](https://www.producthunt.com/posts/workflowy-multiflow)
- [Reddit](https://www.reddit.com/r/Workflowy/comments/l9eoqz/workflowy_multiflow_navigate_organise_maintain/)