# Project pack: linkding @ 27b7303 Facts about **linkding** for an AI following the [BespokeAI handover guide](https://handoff.bespokeai.software/guide/v4.md). Pinned to one version; never changes after publication. > linkding is a self-hosted bookmark manager that is easy to run and use. You save links with tags and notes, search them instantly, and keep archived copies of pages. There is a browser extension, a bookmarklet, an API, and import and export for common formats. ## Setup path (checked 2026-11-03) - **Needs Docker.** Tell the person before any setup work; no light non-Docker route is documented upstream. Docker Desktop on Windows may need a computer restart and an admin-only Windows feature (virtualisation); say so and let the person decide. - Verdict source: https://linkding.link - You may be unable to download source archives or run commands in this session. The person downloads and runs things; if you cannot fetch something, give any changed file in full in chat with its path. ## Version and source - Repository: https://github.com/sissbruecker/linkding - Pinned commit: `27b7303baf41bb28babc610ac8eaa486e1ddfab5`. Use exactly this version. - Zip the person can download in a browser: https://github.com/sissbruecker/linkding/archive/27b7303baf41bb28babc610ac8eaa486e1ddfab5.zip - Fresh checkout (only if you have a shell and git): use the commands below in an empty folder. If this exact source is already checked out, keep your branch and use the development command; do not clone again or reset local changes. - Official docs: https://linkding.link - Live demo: https://demo.linkding.link/login/. Shared demo. See the site for sign-in details. Don't enter real data. - Licence: **MIT**. Free to use, change and share, even commercially. Keep the original copyright notice. ## Commands from the pinned source - Developer commands (they may use Docker): ```sh git clone https://github.com/sissbruecker/linkding bespoke-linkding cd bespoke-linkding git checkout --detach 27b7303baf41bb28babc610ac8eaa486e1ddfab5 # Prepare development requirements and local configuration first. make init uv run manage.py createsuperuser --username=admin --email=admin@example.com make serve ``` - Separate trial of the current upstream release (not your changes; sample data and a separate data directory only): ```sh docker run -d --name linkding -p 9090:9090 -v linkding-data:/etc/linkding/data -e LD_SUPERUSER_NAME=admin -e LD_SUPERUSER_PASSWORD=choose-a-strong-password sissbruecker/linkding:latest # then open http://localhost:9090 ``` - Tools these commands use: Docker for a trial, Python 3.12 with uv and Node for development - Develop: `make serve` - Test: `make test` - Check/lint: `make lint` - Stack: python, javascript (Django, Svelte, uWSGI). Difficulty for a non-developer with an AI: **easy**. A small Django app with a little Svelte. Clear structure and good tests. Most changes are a view, a template or a setting. Personal data: **yes**. Stored in: A SQLite database and saved assets under /etc/linkding/data. Secrets are entered by the person, never in chat. --- Later, only when a step needs it: [reference.md](https://handoff.bespokeai.software/p/linkding/27b7303/r3/reference.md) (customisation points, must-keep-working, data and costs, coding conventions) · [hosting.md](https://handoff.bespokeai.software/p/linkding/27b7303/r3/hosting.md) (long-term hosting; hosts are paid third parties) · [bespoke.yaml](https://handoff.bespokeai.software/p/linkding/27b7303/r3/bespoke.yaml) · [SKILL.md](https://handoff.bespokeai.software/p/linkding/27b7303/r3/SKILL.md)