Skip to content

floccusaddon/floccus

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Floccus

Sync your bookmarks privately across browsers and devices

Tests

  • πŸ”– Syncs your real, native browser bookmarks directly
  • ☸ Sync via Nextcloud Bookmarks, Google Drive, any Git server (like GitHub, Gitlab, Gitea, etc.) or any WebDAV-compatible service
  • βš› Use any browser that supports Web extensions (e.g. Firefox, Chrome, Edge, Opera, Brave, Vivaldi, ...; Safari not yet)
  • πŸ“² Install the floccus Android app to access your bookmarks on your phone
  • πŸ’Ό Create as many sync profiles as you need
  • 🚚 Control sync strategy (i.e. uni- or bidirectional), ⏳ sync interval and πŸ“‚ synced folder
  • πŸ“¦ Easily export your configuration
  • πŸ”’ Keep your credentials secure with an encryption passphrase

Download now

This is the SHA-256 fingerprint of the certificate used to sign the floccus APKs:

ffed2778ff07371e6367b6dcf5d7c1327c57ff7158b8444029182a9aa2dd7085

If you'd like to support the creation and maintenance of this software, please consider donating. :)

Open Collective

🎬 Getting started

If you don't know how to start with Floccus, read these guides.

If you need help, talk to us on gitter, matrix (#marcelklehr_floccus:gitter.im), in the official Nextcloud Bookmarks talk channel, or drop me a mail! πŸ‘‹

Troubleshooting

If you need help sorting out problems, try the gitter chat room: https://gitter.im/marcelklehr/floccus

Considerations

Is this a good idea? I think so. If you'd like to know more, check out the considerations file

What's with the name?

Cirrus floccus is a type of cloud, that can sync your browser data looks very nice.

Contributors

This project exists thanks to all the people who contribute.

Bernd Wechner
Bernd Wechner

πŸ› πŸ€” ⚠️
jlbprof
jlbprof

πŸ’» πŸ› ⚠️
TeutonJon78
TeutonJon78

πŸ› πŸ€”
Scott P.
Scott P.

πŸ› πŸ€”
Lantizia
Lantizia

πŸ› πŸ€”
TCB13
TCB13

πŸ’» πŸ€” πŸ”Œ 🌍
gohrner
gohrner

πŸ›
Tank-Missile
Tank-Missile

πŸ›
Torsten Kurbad
Torsten Kurbad

πŸ›
gerroon
gerroon

πŸ›
Matija Nalis
Matija Nalis

πŸ€” πŸ’¬ πŸ›
Marcel Klehr
Marcel Klehr

πŸ’¬ πŸ’» πŸ–‹ 🎨 πŸ“– πŸš‡ 🚧 πŸ“†
binsee
binsee

πŸ’»
Marc Shapiro
Marc Shapiro

πŸ’»
Marllus Lustosa
Marllus Lustosa

πŸ’»
Izzy
Izzy

πŸ› πŸ€” πŸš‡
sunjam
sunjam

πŸ€” ⚠️
Danny Siminiuk
Danny Siminiuk

⚠️ πŸ€”
Seirade
Seirade

πŸ€” πŸ›
pinpontitit
pinpontitit

πŸ€” πŸ› πŸ’»
Motte
Motte

πŸ’» πŸ›
macrogreg
macrogreg

πŸ’»
Andy Balaam
Andy Balaam

πŸ’» πŸ›

This project follows the all-contributors specification.

Contribute

All contributions, code, feedback and strategic advice, are welcome. If you have a question you can contact me directly via email or simply open an issue on the repository. I'm also always happy for people helping me test new features -- see the issues for announcements of beta versions.

Translating

Translations can now be provided over at transifex.

Development

Setting up a dev environment

For building the android app you'll need Android Studio

  • Open the android/ folder in Android studio and build the App like any other Android app.
  • npm run build and npm run watch will push changes to android/ as necessary.

Building

  • npm run build

Run the following to automatically compile changes as you make them:

  • npm run watch

Releasing

  • npm run build-release

Windows-specific considerations

Follow the above general guidance on setting up a dev environment.
There are Windows-specific versions of some npm scripts:

  • build: npm run build-win
  • build-release: npm run build-release-win
  • watch: watch-win

When building for the first time you may get an error about gulp not being found.
You can install gulp globally on your system by executing npm install -g gulp from your repo root. It is recommended that you do this proactively after executing npm install in the repo root for the first time.

Running the browser extension and corresponding tests locally

  • Build the browser extension:
    npm run build-release
    (npm run build-release-win if you use Windows)

  • After a successful build, the extension package will be found in:
    RepoRoot/builds/

  • The following steps use Firefox as an example; other browsers work similarly.
    The Firefox extension package is a file with an .xpi-extension. It is a simple archive. To modify it, you can rename it to .zip, make the changes, and then rename it back to .xpi. Many archive-related tools know this and allow you to work with the .xpi-file directly (e.g. Total Commander).

  • Enable the extension package for local testing:
    By default, tests are not included into the release archive. To run tests in your local browser, copy the file
    RepoRoot/dist/js/test.js
    into the release package, so that it is located at
    FloccusPackage.xpi/dist/js/test.js

  • Open Firefox using a dedicated test-profile:
    If you use your main profile for testing, the test scripts will likely destroy your existing bookmarks and open tabs!
    To interact with profiles, go to this address:
    about:profiles

  • Load the extension:
    In the a dedicated Firefox profile window, go to
    about:debugging
    Select "This Firefox", and then under "Temporary Extensions", select "Load Temporary Add-on...". Then select the .xpi-file you prepared earlier.
    (Remember to unload the extension if you need to modify/rebuild the extension package.)

  • The extension is now loaded. You can access it via the browser's extensions menu.

  • Run tests:
    After loading the extension, click on "Manifest URL". It will open a new tab with the URL moz-extension://SomeGuid/manifest.json Modify the URL to read
    moz-extension://SomeGuid/dist/html/test.html
    , keeping the same GUID and press enter. The test run should start automatically.

  • Debug or pause tests:
    Press F12 to open developer tools.
    On the "Debugger" tab, you can pause the execution, set breakpoints and step through the code.

Happy developing and thank you for your contributions!

Backers

Thank you to all our backers! πŸ™ [Become a backer]

Sponsors

Support this project by becoming a sponsor. Your logo will show up here with a link to your website. [Become a sponsor]

License

(c) Marcel Klehr MPL-2.0 (see LICENSE.txt)