A personal knowledge management and sharing system for VSCode

Foam

๐Ÿ‘€ This is an early stage project under rapid development. For updates join the Foam community Discord! ๐Ÿ’ฌ

All Contributors

Discord Chat

Foam is a personal knowledge management and sharing system inspired by Roam Research, built on Visual Studio Code and GitHub.

You can use Foam for organising your research, keeping re-discoverable notes, writing long-form content and, optionally, publishing it to the web.

Foam is free, open source, and extremely extensible to suit your personal workflow. You own the information you create with Foam, and you're free to share it, and collaborate on it with anyone you want.

How do I use Foam?

Whether you want to build a Second Brain or a Zettelkasten, write a book, or just get better at long-term learning, Foam can help you organise your thoughts if you follow these simple rules:

  1. Create a single Foam workspace for all your knowledge and research following the [Getting started] guide.
  2. Write your thoughts in markdown documents (I like to call them Bubbles, but that might be more than a little twee). These documents should be atomic: Put things that belong together into a single document, and limit its content to that single topic. (source)
  3. Use Foam's shortcuts and autocompletions to link your thoughts together with [[wiki-links]], and navigate between them to explore your knowledge graph.
  4. Get an overview of your Foam workspace using the [Graph Visualisation], and discover relationships between your thoughts with the use of [Backlinking].

Foam kitchen sink, showing a few of the key features

Foam is a like a bathtub: What you get out of it depends on what you put into it.

Learn more

Head over to the ๐Ÿ‘‰ Published version of this Foam workspace to see Foam in action and read the rest of the documentation!

Quick links to next documentation sections

You can also browse the docs folder.

License

Foam is licensed under the MIT license.

Contributors โœจ

Thanks goes to these wonderful people (emoji key):


Jani Evรคkallio

๐Ÿ’ป ๐Ÿ“–

Joe Previte

๐Ÿ’ป ๐Ÿ“–

Riccardo

๐Ÿ’ป ๐Ÿ“–

Janne Ojanaho

๐Ÿ’ป ๐Ÿ“–

Paul Shen

๐Ÿ“–

coffenbacher

๐Ÿ“–

Mathieu Dutour

๐Ÿ“–

Michael Hansen

๐Ÿ“–

David Nadlinger

๐Ÿ“–

Fernando

๐Ÿ“–

Juan Gonzalez

๐Ÿ“–

Louie Christie

๐Ÿ“–

Sandro

๐Ÿ“–

Simon Knott

๐Ÿ“–

Steven

๐Ÿ“–

Tim

๐Ÿ“–

Saurav Khdoolia

๐Ÿ“–

Ankit Tiwari

๐Ÿ“– โš ๏ธ ๐Ÿ’ป

Ayush Baweja

๐Ÿ“–

TaiChi-IO

๐Ÿ“–

Juan F Gonzalez

๐Ÿ“–

Sanket Dasgupta

๐Ÿ“– ๐Ÿ’ป

Nicholas Stafie

๐Ÿ“–

Francis Hamel

๐Ÿ’ป

digiguru

๐Ÿ’ป ๐Ÿ“–

CHIRAG SINGHAL

๐Ÿ’ป

Jonathan Carter

๐Ÿ“–

Julian Elve

๐Ÿ“–

Thomas Koppelaar

๐Ÿ’ฌ ๐Ÿ’ป ๐Ÿ““

Akshay

๐Ÿ’ป

John Lindquist

๐Ÿ“–

Ashwin Ramaswami

๐Ÿ“–

Claudio Canales

๐Ÿ“–

vitaly-pevgonen

๐Ÿ“–

Dmitry Shemetov

๐Ÿ“–

hooncp

๐Ÿ“–

Martin Laws

๐Ÿ“–

Sean K Smith

๐Ÿ’ป

Kevin Neely

๐Ÿ“–

Arief Rahmansyah

๐Ÿ“–

Vishesh Handa

๐Ÿ“–

Hitesh Kumar

??

Spencer Woo

๐Ÿ“–

ingalless

๐Ÿ’ป ๐Ÿ“–

Josรฉ Duarte

๐Ÿ’ป ๐Ÿ“–

Yenly

๐Ÿ“–

hikerpig

๐Ÿ’ป

Sigfried Gold

๐Ÿ“–

Tristan Sokol

๐Ÿ’ป

Danil Rodin

๐Ÿ“–

Scott Williams

๐Ÿ“–

jackiexiao

๐Ÿ“–

John B Nelson

๐Ÿ“–

Asif Mehedi

๐Ÿ“–

Tan Li

๐Ÿ’ป

Shauna Gordon

๐Ÿ“–

Mike Cluck

๐Ÿ’ป

Brandon Pugh

๐Ÿ’ป

Max Davitt

๐Ÿ“–

Brian Anglin

๐Ÿ“–

elswork

๐Ÿ“–

lรฉon h

๐Ÿ’ป

Nikhil Nygaard

๐Ÿ“–

Mark Dixon

๐Ÿ’ป

Joel James

๐Ÿ’ป

Hashiguchi Ryo

๐Ÿ“–

Michael Overmeyer

๐Ÿ’ป

This project follows the all-contributors specification. Contributions of any kind welcome!

Comments
  • Issue #530: Graph Improvements

    Issue #530: Graph Improvements

    Hello! This is my first attempt at contributing to an open source project. I attempted to address many of the areas identified in regards to the graph visualization. I'm happy with the outcome, but I did make a lot of changes to the core graph logic. It's all backwards compatible as far as I can tell, aside from the actual visualization. It could be made to work with the old force-graph, but I chose to implement cytoscape.js both for handling the graph data in core and the visualization in the webview. I don't know how fast this is. I don't know how to test for that. The highlights:

    • ~~reworked foam-core/graph by implementing cytoscape.js to handle all of the graph data~~
    • implemented a basic gui and filtering in the data visualization (dat.gui made filtering kind of weird, should a panel be used instead?)
    • ~~implemented a command to expose the graph json (I'm fairly certain I put this in the wrong place)~~
    • add color: "red" to yaml frontmatter to change node colors easily. Accepts these formats: "red" / "#ff0000" / rgb(255,0,0)
    • highlight nodes based on text search (todo: use regex instead of simple string matching)
    • folder hierarchy view
    • visualize tags on graph
    • filter by tagged nodes (todo: implement filtering by specific tags)
    • limit graph view to selected nodes (Hold shift or ctrl to add nodes to selection, or use box select. Note: this doesn't play well with any of the other filters. I need update the gui to disable the other parameters when this is selected.)

    I'm still working on the styling, but it is still customizable. The formatting is different though so try something like this to test it out:

    "foam.graph.style" : { "styles": [{
          "selector": "node[type = 'note']",
          "style": {
            "background-color": "cyan",
          }
        }, {
          "selector": "node[type = 'tag']",
          "style": {
            "background-color": "purple",
          }
        }, {
          "selector": "node[type = 'placeholder']",
          "style": {
            "background-color": "pink",
          }
        }
      ]}
    

    Hopefully this works out and can be used as a basis for further improvements. I'm very new to typescript and vscode extensions, so I'm sure there is room for improvement. Let me know and I'll try to get things fixed as soon as I can.

  • [

    ["BUG"] Foam Graph uses inappropriate amount of CPU

    Describe the bug

    As soon as I open the Foam Graph two electron processes starts hogging a questionable high amount of CPU performance. On a workspace with around a dozen notes(i.e. nodes in the graph) they are both between 10% and 15% while on a workspace with ~330 notes one is at roughly 65-75% and the other at a quite stable ~24-26%. Numbers according to htop and on an AMD Ryzen 5 3600

    This is without any interaction with the graph and even if VS Code is on a workspace that isn't even being displayed

    To Reproduce

    1. Check a process manager like htop for the current list of processes requiring the most CPU performance
    2. Open VS Code with your Foam Workspace (which should not yet show a CPU load spike)
    3. Open the Foam Graph and probably observe two new processes hogging roughly an entire CPU core between them

    Expected behavior

    Not hog an absurdly high amount of CPU performance. The Markdown Links graph requires a similar amount of CPU when opening it and occasionally during panning, but this returns to baseline shortly after again.

    Additional Notes

    I assume this is something with the interactivity and live update feature. Potentially this could be deactivated via an option until the exact cause of this issue is found.

  • Automate adding contributors via GitHub Action

    Automate adding contributors via GitHub Action

    It would be great if we had a GitHub Action which ran on "merge pull request" and then opened a new pull request to add a person to the all-contributors table in the README. It wouldn't solve all the use cases for adding contributors to the table, but a majority of them.

    Happy to help guide/mentor someone if they want to pick this up.

  • Remove legacy github slugger

    Remove legacy github slugger

    @riccardoferretti I'm not sure how do you regenerate yarn.lock so I've only changed package.json.

    I decided to leave the slug term as it's used in many places, I think it has a legitimate meaning. Regarding the references used to find resources in the workspace, one could say a reference is:

    • An URI
    • Or a slug (string) which can be:
      • Absolute
      • Relative
      • An identifier

    AFAICS the current code is consistent with this terminology.

    I've added a refactor label since I expect to send a few more purely-refactoring PRs, but feel free to delete or rename it.

  • WIP: Move selected text into a new note and auto create a backlink

    WIP: Move selected text into a new note and auto create a backlink

    This pr resolves #653 , the suggestion adds the functionality to create a new note for a piece of selected text. It will use the functionalities as introduced by @movermeyer to create a new note from the default template or select a template. I've added a configuration to configure foam to always select a note template if desired. Setting it false means it will use the default template.

    To keep behaviour similar to the other two new note command I am reusing that code as much as possible. It simply adds some additional text and view behaviour to the existing methods. This should keep the user interaction consistent and will reduce maintenance work. I need to add tests and do some more manual testing, but first want to validate the approach with @movermeyer and @riccardoferretti. You are welcome to leave your suggestions and comments.

    note-selection

  • Error linking file in subdirectory

    Error linking file in subdirectory

    • Foam version: v0.15.2
    • Platform: macOS Big Sur
    • Issue occur on the foam template repo: Yes

    Summary

    Steps to reproduce

    1. Create a directory d with files a.md and b.md
    2. Add [[d/b]] to a.md
    3. Follow that link: it will offer to create b and the fail because b already exists.

    https://user-images.githubusercontent.com/2845433/139410901-3630da90-297c-4d15-8e14-09901a1c4add.mov

  • fix: fixing casing issue for windows

    fix: fixing casing issue for windows

    Fixes #488

    On Windows, the uri util file contains a compare relative paths with posix functions. The drive letters might not match on Windows (unique problem on win32 platform).

    This fix introduces a small utility that is only relevant to Windows platform that would normalize drive letters in paths.

  • Slugification of wikilinks (was: Foam Graph showing two entries for same wikilink reference)

    Slugification of wikilinks (was: Foam Graph showing two entries for same wikilink reference)

    • Foam version: v0.10.0
    • Platform: Mac (Big Sur 11.2.1)
    • Issue occur on the foam template repo: Yes

    Summary Foam Graph shows two entries for same note. One entry is shown orphan which is active. The actual link is shown as inactive.

    Steps to reproduce

    1. I created a daily journal entry, and types a wiki link to create it
    2. Click on the wiki link to create the desired page
    3. As the page got created in same journal folder I moved it to root folder

    Additional information I have attached a demo project with only the actions I have taken and the foam graph has that issue The project started from Foam Template and I have added some extension suggestions which I am already using

    foam-graph-issue

    foam-graph-test.zip

  • [

    ["BUG"] "Show Graph" command produced a black background without nodes

    To Reproduce Reload VSCode and use Foam: Show Graph command.

    Screenshots There are some files in my repository but foam did't show these nodes. image

    Supplement Sometimes after linking a file to another, and reuse the command, both the two files' nodes will appear. Or type any words in a file, and reuse the command, the file's node will also appear. But if you reload VSCode and reuse the command, all the nodes will disappear again. It's not stable and I'm not sure when and why this bug will appear, as if it will only show the nodes which has been modifed. Once VSCode is reloaded, all the files will be regarded as "not modified". By the way, all the links in my repository are regular markdown links, not wikilinks.

    This is the contrast between Foam: Show Graph command (left) and Markdown Links: Show Graph command (right) : image

    Test Environment Windows 10 version 1909 Plugin version 0.7.0

  • Improve documentation of vscode extension

    Improve documentation of vscode extension

    • [ ] improve extension manifest (see https://code.visualstudio.com/api/references/extension-manifest#marketplace-presentation-tips)
    • [x] update the docs/ directory to separate ideas/features/thoughts/...
    • [x] update README to become entry point into structured documentation for existing features
    • [ ] test the presentation of the newly released extension in the marketplace (e.g. title, icon, readme, links to repo/bugs/..)
  • Path bug in Windows

    Path bug in Windows

    • Foam version: v0.9.1
    • Platform: Windows
    • Issue occur on the foam template repo: Not sure

    Summary

    Windows wiki-link bug

    The Windows path is very weird. It's not at all portable because it is not a relative path.

    Steps to reproduce

    1. Add a link to todo.md by [[todo]]
    2. Ctrl + S

    Additional information

    Feel free to attach any of the following that might help with debugging the issue:

    • screenshots
    • a zip with a minimal repo to reproduce the issue
    • the Foam log in VsCode (see instructions)
  • Hierarchical tag explorer only goes one level down.

    Hierarchical tag explorer only goes one level down.

    Describe the bug

    The tag explorer does not properly handle tags more than two levels. For instance #bydate/2022/11/30, #bydate/2022/12/11, #bydate/2022/12/12 should nest properly like the filesystem view but don't. All of the tags after the first slash are just treated as a single node so the tag hiearchy looks like "bydate > 2022/12/12" instead of "bydate > 2022 > 12 > 12".

    Small Reproducible Example

    No response

    Steps to Reproduce the Bug or Issue

    Create tags in a node or nodes: #bydate/2022/11/30 #bydate/2022/12/11 #bydate/2022/12/12

    Expected behavior

    As a user, I expect the tag explorer to present a hierarchical filesystem view of tags that treats each tag separated by slashes as an expandable node in a hierarchy.

    Screenshots or Videos

    Screenshot_20230108_103136

    Operating System Version

    Windows

    Visual Studio Code Version

    1.74.2

    Additional context

    No response

  • Bump json5 from 1.0.1 to 1.0.2

    Bump json5 from 1.0.1 to 1.0.2

    Bumps json5 from 1.0.1 to 1.0.2.

    Release notes

    Sourced from json5's releases.

    v1.0.2

    • Fix: Properties with the name __proto__ are added to objects and arrays. (#199) This also fixes a prototype pollution vulnerability reported by Jonathan Gregson! (#295). This has been backported to v1. (#298)
    Changelog

    Sourced from json5's changelog.

    Unreleased [code, diff]

    v2.2.3 [code, diff]

    v2.2.2 [code, diff]

    • Fix: Properties with the name __proto__ are added to objects and arrays. (#199) This also fixes a prototype pollution vulnerability reported by Jonathan Gregson! (#295).

    v2.2.1 [code, diff]

    • Fix: Removed dependence on minimist to patch CVE-2021-44906. (#266)

    v2.2.0 [code, diff]

    • New: Accurate and documented TypeScript declarations are now included. There is no need to install @types/json5. (#236, #244)

    v2.1.3 [code, diff]

    • Fix: An out of memory bug when parsing numbers has been fixed. (#228, #229)

    v2.1.2 [code, diff]

    ... (truncated)

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

  • Configure Foam's default file extension(s)

    Configure Foam's default file extension(s)

    Is your feature request related to a problem? Please describe.

    Currently Foam supports only .md files as notes, and will always create .md files when clicking on a link (well, unless differently instructed by the template being used)

    Describe the solution you'd like

    As a user, I expect to be able to configure the list of extensions to be considered notes, e.g. txt, mdx, qmd, ...

    There are really two issues here:

    1. support for multiple file extensions to be included as notes - this would need to be a setting, similar to what we have for foam.files.attachmentExtensions

    2. support for the creation of non-.md files. Here I can see two approaches: a. use note templates - this requires no further changes and is the current workaround b. use the first extension from the setting above as the default extension for new notes

    Describe alternatives you've considered

    No workarounds are available at the moment for including non-.md files in the graph.

    To create non-.md files the current workaround would be to use the filepath property in templates.

    Screenshots or Videos

    No response

  • markdown links should use readme.md as index file of directory

    markdown links should use readme.md as index file of directory

    Describe the bug

    foam navigates to somedir/.md instead of somedir/readme.md

    Small Reproducible Example

    No response

    Steps to Reproduce the Bug or Issue

    lets say i have this markdown file

    # asdf
    
    [somedir/](somedir/)
    

    then Control-Click on [somedir/](somedir/) navigates to somedir/.md

    Expected behavior

    foam should use somedir/readme.md as the index file of the somedir/ folder

    ... or show a directory listing, if there is no index file

    my goal is a "buildless" wiki on the github blob api so readme.md is the default index file, and i can use only markdown links

    Screenshots or Videos

    No response

    Operating System Version

    x

    Visual Studio Code Version

    x

    Additional context

    No response

  • [WIP] Enable support for vscode.dev

    [WIP] Enable support for vscode.dev

    I started on enabling Foam for https://vscode.dev, the online version of VSCode. I decided to work in public to make this a broader effort. It's not an easy task and could use any help and knowledge.

    Right now I have been able to get the webpack compilation going and enable a local test environment. It's not loading Foam currently. So tackling that one to see what remaining tasks are left.

  •  Closed foam.openDailyNote.directory does not create daily notes in the correct location with multiple (named) workspace folders

    Closed foam.openDailyNote.directory does not create daily notes in the correct location with multiple (named) workspace folders

        So I think I found a good solution for this issue, and I have committed it. It will come out with the 0.20.1
    

    Originally posted by @riccardoferretti in https://github.com/foambubble/foam/issues/1073#issuecomment-1263969563

    This solved it for multiple workspace folders. But it still happens for me when I change the "name" value of a workspace folder e.g. to "my notes" instead of "notes" like in the path value it creates a "my notes/journal/" subfolder in notes.

    {
      "folders": [
        {
          "name": "test of folder1",
          "path": "./folder1"
        },
        {
          "name": "test of folder2",
          "path": "./folder2"
        }
      ],
      "settings": {
        "foam.openDailyNote.directory": "journal"
      },
      "extensions": {
        "recommendations": [
          "foam.foam-vscode"
        ]		]
      }
    }
    

    creates:

    ./folder1/test of folder1/2022-12-24.md


    "foam.openDailyNote.directory": "./folder1/journal"

    creates

    ./folder1/test of folder1/folder1/journal/2022-12-24.md


    "foam.openDailyNote.directory": "~/tmp/folder1/journal"

    creates

    ./folder1/test of folder1/~/tmp/folder1/journal/2022-12-24.md


    Changing "name": "test of folder1", to "name": "folder1" resolves the issue for the moment.

Modern ls command with vscode like File Icon and Git Integrations. Written in Golang
Modern ls command with vscode like File Icon and Git Integrations. Written in Golang

logo-ls modern ls command with beautiful Icons and Git Integrations . Written in Golang Command and Arguments supported are listed in HELP.md Table of

Dec 29, 2022
Libraries and CLIs for my personal all-in-one productivity system including components like bookmarks, notes, todos, projects, etc.

bntp.go Libraries and CLIs for my personal all-in-one productivity system including components like bookmarks, notes, todos, projects, etc. Neovim int

Sep 13, 2022
CLI for Shamir's Secret Sharing and AES key generation, encryption, and decryption.
CLI for Shamir's Secret Sharing and AES key generation, encryption, and decryption.

Shush ?? This simple program will help you run Shamir's Secret Sharing algorithm on any file using the split and merge commands.

Feb 1, 2022
Creating a simple CLI tool in the Go Programming Language for personal learning and fun

Creating a simple CLI tool in the Go Programming Language for personal learning and fun Open to feedback :) Build docker dev environment docker build

Dec 12, 2021
StudentMgmtSystem - Project for Student Management System and use of CURD Operation

StudentMgmtSystem Project for Student Management System and use of CURD Operatio

Jan 4, 2022
Upterm is an open-source solution for sharing terminal sessions instantly over the public internet via secure tunnels.
Upterm is an open-source solution for sharing terminal sessions instantly over the public internet via secure tunnels.

Upterm is an open-source solution for sharing terminal sessions instantly over the public internet via secure tunnels.

Jan 8, 2023
Clipsync: a high performance clipboard sharing application for linux

clipsync: Clipboard sync Clipsync is a high performance clipboard sharing applic

Sep 18, 2022
The personal information dashboard for your terminal
The personal information dashboard for your terminal

WTF (aka 'wtfutil') is the personal information dashboard for your terminal, providing at-a-glance access to your very important but infrequently-need

Dec 31, 2022
Grit is an experimental personal task manager that represents tasks as nodes of a multitree
Grit is an experimental personal task manager that represents tasks as nodes of a multitree

Grit is an experimental personal task manager that represents tasks as nodes of a multitree, a class of directed acyclic graphs. The structure en

Jan 2, 2023
A personal collection of handy CLI tools

Toolkit A personal collection of handy CLI tools Installation 1.) Download and extract the ZIP package for the the latest release 2.) Copy the appropr

Nov 8, 2021
remindme is a simple application to set reminders from the CLI that integrates with your system's notification system.
remindme is a simple application to set reminders from the CLI that integrates with your system's notification system.

remindme remindme is a simple application to set reminders from the CLI that integrates with your system's notification system. Examples Once the serv

Nov 24, 2022
Jsos - A operating system that runs system-level javascript, based on the Linux kernel

JsOS ?? An linux-based operating system that runs Javascript code at the system-

Jan 6, 2023
A Target Tracking , NoteTaking , CheckLists and Data Management GUI App for Bug Hunter's and Pentesters.
A Target Tracking , NoteTaking , CheckLists and Data Management GUI App for Bug Hunter's and Pentesters.

Screenshots Features โ€ข Installation โ€ข Usage โ€ข Features โ€ข Notes โ€ข Sandman A Target Tracking , NoteTaking , CheckLists and Data Management GUI App for B

Dec 25, 2022
tfacon is a CLI tool for connecting Test Management Platforms and Test Failure Analysis Classifier.

Test Failure Classifier Connector Description tfacon is a CLI tool for connecting Test Management Platforms and Test Failure Analysis Classifier. Test

Jun 23, 2022
Go library and CLI utility for /etc/hosts management.
Go library and CLI utility for /etc/hosts management.

Etc Hosts Management Utility & Go Library /etc/hosts Management It is easy to open your /etc/hosts file in text editor and add or remove entries. Howe

Nov 27, 2022
wrench - Schema management tool for Cloud Spanner -

wrench wrench is a schema management tool for Cloud Spanner. Please feel free to report issues and send pull requests, but note that this application

Dec 19, 2022
SSH Lightweight management tools
SSH Lightweight management tools

tssh golang ๅฎž็Žฐ็š„ssh ๅทฅๅ…ท ๅฎ‰่ฃ… ไธ‹่ฝฝๅฎ‰่ฃ… ไธ‹่ฝฝๅœฐๅ€ release windows็”จๆˆท่ฏทๆ‰‹ๅŠจไธ‹่ฝฝ๏ผŒๆš‚ๆ—ถไธๆไพ›ไธ€้”ฎๅฎ‰่ฃ…ๆจกๅผ๏ผˆ ไธป่ฆๆ˜ฏๆ‰นๅค„็†่„šๆœฌไธไผšๅ†™ ๏ผ‰ Macไธ€้”ฎๅฎ‰่ฃ… /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.

Sep 14, 2022
a work time management CLI tool for any platform
a work time management CLI tool for any platform

english |ๆ—ฅๆœฌ่ชž jobgosh | job management tool made with golang for shell a multi-platform work time management CLI tool to track and improve your day to

May 16, 2022
Google KMS backed Solana key management CLI tool

solana-kms solana-kms is a Google KMS backed Solana token management CLI utility. The main purpose of the tool is to ensure that the private key is ne

Jan 13, 2022