Home

Awesome

bookmarks app

a simple self-hosted bookmarking app that can import bookmarks from delicious and chrome

Quickstart

mkdir -p target/standalone && cd target/standalone
wget https://cdn.jsdelivr.net/npm/dyu-bookmarks@0.4.1/bin/bookmarks-linux-standalone-x64.tar.gz
tar -xzf bookmarks-linux-standalone-x64.tar.gz
./start.sh

screenshot

Here's the demo with a matching bookmarklet

To import from delicious and/or chrome, see bookmarks-importer/README.md

Server runtime dependencies

Desktop runtime dependencies

Dev requirements

Setup

mkdir -p target/data/main
echo "Your data lives in user/ dir.  Feel free to back it up." > target/data/main/README.txt

# download protostuffdb
yarn add protostuffdb@0.20.0 && mv node_modules/protostuffdb/dist/* target/ && rm -f package.json yarn.lock && rm -r node_modules

wget -O target/fbsgen-ds.jar https://repo1.maven.org/maven2/com/dyuproject/fbsgen/ds/fbsgen-ds-fatjar/1.0.10/fbsgen-ds-fatjar-1.0.10.jar
./modules/codegen.sh
mvn install

cd bookmarks-ts
yarn install

Dev mode

# produces a single jar the first time (bookmarks-all/target/bookmarks-all-jarjar.jar)
./run.sh

# on another terminal
cd bookmarks-ts
# serves the ui via http://localhost:8080/
yarn run dev

Production mode

If run.sh is still running, stop that process (ctrl+c)

cd bookmarks-ts
# produces js/assets in bookmarks-ts/dist/
./build.sh
# finally, run your production app
nw .
# or
node chrome-app.js

To setup the bookmarklet

# close the nw window if you ran 'nw .' prior to this
nw . b
# or
node chrome-app.js b

Packaging for desktop (nwjs)

Exec

./scripts/archive.sh

That script generates: