1
0
mirror of https://github.com/mattermost/focalboard.git synced 2024-12-03 08:45:40 +02:00
focalboard/experiments/webext
dependabot[bot] a428c7553a
Bump follow-redirects from 1.14.7 to 1.14.8 in /experiments/webext (#2339)
Bumps [follow-redirects](https://github.com/follow-redirects/follow-redirects) from 1.14.7 to 1.14.8.
- [Release notes](https://github.com/follow-redirects/follow-redirects/releases)
- [Commits](https://github.com/follow-redirects/follow-redirects/compare/v1.14.7...v1.14.8)

---
updated-dependencies:
- dependency-name: follow-redirects
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-02-21 03:22:46 -05:00
..
icons [GH-438] Add basic web cliper browser extension (#1582) 2021-11-08 16:07:08 -08:00
src [GH-438] Add basic web cliper browser extension (#1582) 2021-11-08 16:07:08 -08:00
.gitignore [GH-438] Add basic web cliper browser extension (#1582) 2021-11-08 16:07:08 -08:00
.parcelrc [GH-438] Add basic web cliper browser extension (#1582) 2021-11-08 16:07:08 -08:00
manifest.json [GH-438] Add basic web cliper browser extension (#1582) 2021-11-08 16:07:08 -08:00
package-lock.json Bump follow-redirects from 1.14.7 to 1.14.8 in /experiments/webext (#2339) 2022-02-21 03:22:46 -05:00
package.json [GH-438] Add basic web cliper browser extension (#1582) 2021-11-08 16:07:08 -08:00
README.md [GH-438] Add basic web cliper browser extension (#1582) 2021-11-08 16:07:08 -08:00
tsconfig.json [GH-438] Add basic web cliper browser extension (#1582) 2021-11-08 16:07:08 -08:00

Focalboard Web Clipper Browser Extension ✂️

This is the Focalboard Web Clipper browser extension. It aims at supporting various use cases around converting web content from your browser directly into Focalboard cards.

⚠️ Warning: The extension is currently in an early and experimental state. Use it at your own risk only. Don't expect any eye candy.

Status

The extension currently is in a proof-of-concept state with minimal functionality. The only supported use case at the time is building a read-later list. Things that work:

  • Logging in to the Focalboard server from the extension settings
  • Selecting a board to capture cards into from the extension settings
  • Saving websites (title & URL) into cards from a page action (like e.g. Pocket does it)

Only Firefox was tested so far but polyfills have already been enabled so there's a good chance that it'll work in Chrome and maybe even Safari, too.

Next Steps

We're really at the very beginning here so there's a lot to be done. Notable tasks include:

  • Improve the React code by extracting components
  • Style the options and popup pages to mimic the look and feel of Focalboard
  • Replace the logo with something better (the current one was snatched from the Focalboard Windows app)
  • Link to the extension's options page from page action error messages
  • Clip parts of a website into image attachments on cards
  • Extract website content in reader mode into card descriptions
  • Optimise the logic for finding the first URL property (currently the whole board subtree has to be requested because there is no other API available)
  • Add some tests
  • Test the extension on Chrome / Safari and add infrastructure to facilitate this in future (e.g. .web-ext-config.js)
  • Add an onboarding (displayed after first install) and upboarding (displayed after update) page
  • Distribute the extension via the various browser add-on stores (ok, maybe too early 😜)

Hacking

First, install dependencies with

$ npm i

You can then compile and bundle the code with

$ npm run watchdev

This will write output into dist/dev/ and automatically recompile and bundle on any source change.

To run the extension in a separate Firefox instance, use

$ npm run servedev

Note that in the above commands you can substitue dev with prod to build and run the extension with production settings.

Distribution

To build a distributable ZIP archive, run

$ npm run build

The archive will be placed into the web-ext-artifacts folder.