armaria

module
v0.0.24 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 9, 2024 License: MIT

README

Armaria

Armaria are a kind of closed, labeled cupboards that were used for book storage in ancient times up till the middle ages.

Armaria is a new way to manage your bookmarks.

As it stands bookmarks are stored either in the cloud, in browser specific formats, or both. It doesn't have to be this way. Armaria stores bookmarks in a SQLite database. This means your bookmarks are local and stored in a single file. They can then be accessed with a myriad of clients including browsers.

You can sync this file across your devices how you would sync any other file. This allows you to share your bookmarks across many different devices and browsers without having to rely on a web service for something as simple as your bookmarks.

[!CAUTION] This software is still in progress and should be considered pre-alpha

Supported Platforms

Linux x64 Windows x64 MacOS x64/arm64
Snapcraft Yes No No
Winget No Yes No
Homebrew No No Yes

Features

The features for Armaria are similar to other bookmark implementations:

  • URL, Name, and Description fields
  • Nested folder structure
  • Tags
  • Full text search
  • Manual ordering

Clients

This repository contains the core Armaria library as well as the following clients:

  • CLI: A CLI that is used to manage your bookmarks database from the command line.
  • TUI: A TUI that is used to manage your bookmarks (hosted in the CLI at armaria tui).
  • Native Messaging Host: A native messaging host to enable browsers to interact with your bookmarks database.

Getting Started

You can find the installation instructions for your platform here.

Linux

You can install Armaria with Snap on Linux:

snap install armaria

MacOS

You can install Armaria with Homebrew on MacOS:

brew install JonathanHope/homebrew-armaria/armaria

Windows

You can install Armaria with WinGet:

winget install Armaria

Browser Extensions

Armaria has a browser extension. You can read about it here.

Roadmap

This software is still in its early days. This roadmap lays out where it currently is, and where it's going. If there is something that you think should be on it that is not please open an issue.

Platform Support:

  • Windows x64
  • Linux x64
  • MacOS x64
  • MacOS arm64

Distribution:

  • Snap
  • Homebrew
  • Winget
  • Nix

Library:

  • Add bookmark
  • Add folder
  • Delete bookmark
  • Delete folder
  • Update bookmark
  • Update folder
  • Add tag
  • Remove tag
  • List bookmarks/folders
  • Install manifest
  • Config file
  • Import bookmarks from exported files

Native Messaging Host:

  • Add bookmark
  • Add folder
  • Delete bookmark
  • Delete folder
  • Update bookmark
  • Update folder
  • Add tag
  • Remove tag
  • List bookmarks/folders

TUI:

  • Add bookmark
  • Add folder
  • Delete bookmark
  • Delete folder
  • Update bookmark
  • Update folder
  • Add tag
  • Remove tag
  • List bookmarks/folders

Directories

Path Synopsis
cli module
cmd
cli
internal
db
db contains the low level database logic access for Armaria
db contains the low level database logic access for Armaria
null
null makes it easier to deal with values that could be null or undefined.
null makes it easier to deal with values that could be null or undefined.
order
order includes helpers to allow users to manually order lists of things efficiently.
order includes helpers to allow users to manually order lists of things efficiently.
paths
paths manages the paths to the various files Armaria cares about.
paths manages the paths to the various files Armaria cares about.
validate
validate contains validation logic that should be run before DB calls are made.
validate contains validation logic that should be run before DB calls are made.
lib module
pkg
api
armariaapi is the public API for armaria.
armariaapi is the public API for armaria.
model
armaria is the public types for Armaria.
armaria is the public types for Armaria.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL