All Projects → jonhadfield → sn-cli

jonhadfield / sn-cli

Licence: AGPL-3.0 license
a command line interface for standard notes

Programming Languages

go
31211 projects - #10 most used programming language
Makefile
30231 projects
shell
77523 projects

Projects that are alternatives of or similar to sn-cli

jackliu-golang-notes
Jack Liu's Golang personal summary main points notes, notes to fast understand golang
Stars: ✭ 17 (-69.64%)
Mutual labels:  notes
sn-gruvbox-dark-theme
Gruvbox Dark Theme for Standard Notes
Stars: ✭ 70 (+25%)
Mutual labels:  standardnotes
open-in-notion
Chrome Extension to redirect Notion pages links to the desktop app.
Stars: ✭ 42 (-25%)
Mutual labels:  notes
Textylic
A note taking app developed for the 22nd century
Stars: ✭ 34 (-39.29%)
Mutual labels:  notes
standard-www
👆 Website for JavaScript Standard Style (@standard)
Stars: ✭ 28 (-50%)
Mutual labels:  standard
bearclaw
Menubar app to quickly create new notes in Bear
Stars: ✭ 60 (+7.14%)
Mutual labels:  notes
sNotz
An open-source, privacy-friendly, and completely offline application to manage notes
Stars: ✭ 38 (-32.14%)
Mutual labels:  notes
tigefa4u.github.io
🆙 for personal notes
Stars: ✭ 13 (-76.79%)
Mutual labels:  notes
note
📝个人知识体系 算法与数据结构 / 操作系统 / 数据库 / 计算机系统 / 网络 / 中间件 / Java / 架构 / 前端 / 运维 / 网络安全 / 软技能
Stars: ✭ 40 (-28.57%)
Mutual labels:  notes
Learning Linux
Linux 学习笔记,基于《鸟哥的 Linux 私房菜 第四版(CentOS7)》以及各种的网络资源
Stars: ✭ 16 (-71.43%)
Mutual labels:  notes
rino
A better way to write Markdown
Stars: ✭ 28 (-50%)
Mutual labels:  notes
standard-substrate
substrate implementation of Standard protocol
Stars: ✭ 15 (-73.21%)
Mutual labels:  standard
webidl
Web IDL Standard
Stars: ✭ 296 (+428.57%)
Mutual labels:  standard
Code-Collection
个人博客、解决方案、遇到的问题记录、代码片段、笔记
Stars: ✭ 14 (-75%)
Mutual labels:  notes
nixnote2
Nixnote - Evernote desktop client for Linux
Stars: ✭ 281 (+401.79%)
Mutual labels:  notes
MakeNotes
📝 Made a Note App . User can make important notes 📑as well as save it for future 📆 reference. You can mark important✔️ as well as non important which makes it very easy to distinguish between different notes📰. (Html,Bootstrap,CSS,Javascript)
Stars: ✭ 18 (-67.86%)
Mutual labels:  notes
wgsrpd
World Geographical Scheme for Recording Plant Distributions (WGSRPD)
Stars: ✭ 32 (-42.86%)
Mutual labels:  standard
MusicManipulations.jl
Manipulate music data, humanize, quantize and analyze music performances with Julia
Stars: ✭ 41 (-26.79%)
Mutual labels:  notes
notes
📓 Notes related to Computer Science stuff.
Stars: ✭ 15 (-73.21%)
Mutual labels:  notes
standard-action
Github Action to lint with `standard` and friends
Stars: ✭ 15 (-73.21%)
Mutual labels:  standard

sn-cli

a command-line interface for Standard Notes.

Build Status Go Report Card

Important

This is an early release to add support for SN accounts using encryption version 004 so please ensure you have a backup in case of any issues caused by this app. This is only compatible with accounts either created since November 2020, or older accounts that have backed up, then restored to force an upgrade to 004.

current features

COMMANDS:
     add        add items
     delete     delete items
     tag        tag items
     get        get items
     export     export data
     import     import data
     stats      show statistics
     wipe       deletes all tags and notes
     session    manage session credentials
     test-data  create test data (hidden option)

installation

Download the latest release here: https://github.com/jonhadfield/sn-cli/releases

macOS and Linux

Install:
$ install <sn-cli binary> /usr/local/bin/sn

Windows

An installer is planned, but for now...
Download the binary 'sncli_windows_amd64.exe' and rename to sn.exe

running

To see commands and options:
$ sn --help

authentication

By default, your credentials will be requested every time, but you can store them using either environment variables or, on MacOS and Linux, store your session using the native Keychain application.

environment variables

Note: if using 2FA, the token value will be requested each time

export SN_EMAIL=<email address>
export SN_PASSWORD=<password>
export SN_SERVER=<https://myserver.example.com>   # optional, if running personal server

session (macOS Keychain / Gnome Keyring)

Using a session is different from storing credentials as you no longer need to authenticate. As a result, if using 2FA (Two Factor Authentication), you won't need to enter your token value each time.

add session
sn session --add   # session will be stored after successful authentication

To encrypt your session when adding:

sn session --add --session-key   # either enter key as part of command, or '.' to hide its input
using a session

Prefix any command with --use-session to automatically retrieve and use the session. If your session is encrypted, you will be prompted for the session key. To specify the key on the command line:

sn --use-session --session-key <key> <command>

To use your session automatically, set the environment variable SN_USE_SESSION to true

known issues

  • sessions added to keychain do not currently refresh themselves. The workaround is to run re-add the session if an invalid session message is returned.
  • accounts registered via sn-cli are initialised without initial encryption key(s). The workaround is to log in via the offical web/desktop app, to create these keys, after initial registration.

bash autocompletion

tool

the bash completion tool should be installed by default on most Linux installations.

To install on macOS (Homebrew)
$ brew install bash_completion
then add the following to ~/.bash_profile:
[ -f /usr/local/etc/bash_completion ] && . /usr/local/etc/bash_completion

installing completion script (found here)

macOS

$ cp bash_autocomplete /usr/local/etc/bash_completion.d/sn

Linux

$ cp bash_autocomplete /etc/bash_completion.d/sn

autocomplete commands

$ sn <tab>

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].