Skip to content

View your linkding bookmarks as a configurable mosaic of tiles

Notifications You must be signed in to change notification settings

haondt/linktiles

Repository files navigation



Introduction

linktiles is a tile-based read-only frontend for linkding, a minimal bookmark manager. linktiles uses an api key to fetch links from your linkding instance, and displays them in a configurable mosaic.

Feature Overview:

  • Clean UI matching the style of linkding
  • Display tagged bookmarks as tiles
  • Create groups of bookmarks within a tile
  • Various configuration options to change the look of the tiles
  • SSO support via authentication proxies
  • Built-in Glance extension.

Gallery

Glance extension

Quickstart

The recommended method of installation is Docker Compose. By default, linktiles will persist data in memory. This is good for testing it out, but long term you will want to set up a Redis container for persistence.

services:
  linktiles:
    image: haumea/linktiles:latest
    container_name: linktiles
    ports:
      - 5001:5001

Run docker compose up -d and you should be able to visit the UI at http://localhost:5001/. For more details, visit the docs.

Contributing

Contributions are welcome, but may be denied if I feel they don't fit the scope of the app. Please open PRs on GitLab.

Development

The application is built using the Flask web framework. You can get started by checking out the excellent Flask docs. The app folder contains the actual tiles application. The python stuff follows your typical Flask structure, and frontend interactivity is done through htmx and hyperscript.

Prerequisites:

  • Python 3.10

Setup

Create a virtual environment for the application

python3 -m venv venv
. ./venv/bin/activate

Install the requirements

python3 -m pip install -r requirements.txt

By default the application will use an in-memory storage for data, meaninig it will be lost every time you restart the application. To persist data, at the time of writing, the only option is a redis instance. Check the configuration for which environment variables can be used to configure the redis storage.

Start the Flask server with debug mode enabled with

LT_ENVIRONMENT=dev python3 -m app

The frontend is now available under http://localhost:5001

About

View your linkding bookmarks as a configurable mosaic of tiles

Resources

Stars

Watchers

Forks

Packages

No packages published