Skip to content
/ linka Public
forked from linka-app/linka

Self-host & AI powered bookmark management app for linkding, an alternative to linkding front-end, with special optimization for search and quick open functions. Free and open source. Provide web app and PWA.

Notifications You must be signed in to change notification settings

cmsax/linka

 
 

Repository files navigation

Linka!

A smooth bookmarks management web app, shipped with special optimization for quick-search & quick-open, which will boost your productivity.

Currently it supports linkding, we are planning to make Linka a more flexible app to support other popular backends.

About the Logo

❤️ The logo was copied from the project Benthos in this commit.

Features

  • full text search
  • multi keywords, substract keywords support
  • instantly open search results
  • search on type
  • dark/light mode
  • hotkeys

Demo

demo

Following configs are for testing:

How-To use

  • type any keywords, seperated by space, results will be intersection
  • use keywords start with ! to exclude
  • type Enter to open search results in new tabs

Hotkeys

  • cmd+l or ctrl+l to focus on the search box
  • cmd+Down Arrow or ctrl+Down Arrow / cmd+Down Arrow or ctrl+Down Arrow to navigate the results
  • cmd+Enter or ctrl+Enter with an item selected to open it as a new tab or open all bookmarks when no item is selected

Backend Prerequisite

Currently, this app only supports the "linkding" backend. However, our plan is to make Linka a backend-dependent app.

To ensure compatibility with Linka, the backend service must enable "Cross-Origin Resource Sharing" (CORS).

You can nable CORS in backend by adding following headers to HTTP response:

  • Access-Control-Allow-Origin: *
  • Access-Control-Allow-Methods: GET,POST,OPTIONS,PUT,DELETE
  • Access-Control-Allow-Headers: *
  • Access-Control-Max-Age: 1000000

Development Guide

Prerequisite

Install nodejs and yarn.

Start a local development app

Run yarn install & yarn dev to start up.

Deployment Guide

Option 1: Deploy With Static HTTP Server (e.g. Nginx)

Run yarn build then publish the ./build directory to a static http server like nginx, following is a demo nginx config part:

# linka
server {
    listen 443 ssl http2;
    server_name linka.unoiou.com;
    index index.html;
    location / {
        root /home/ubuntu/static_sites/linka/build;
        try_files $uri $uri/ /index.html;
    }
}

Option 2: Deploy with Docker

Use pre build image:

docker pull cmsax/linka:latest
docker run --name my-own-linka -p 80:80 -d cmsax/linka:latest

Build on your own:

docker build -t my/linka:latest .
docker run --name my-own-linka -p 80:80 -d my/linka:latest

Stargazers over time

Stargazers over time

About

Self-host & AI powered bookmark management app for linkding, an alternative to linkding front-end, with special optimization for search and quick open functions. Free and open source. Provide web app and PWA.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • TypeScript 98.1%
  • Other 1.9%