Skip to content

udithavithanage/thyra

Repository files navigation

thyra

A tiny CLI to bookmark project folders under short names and open them instantly in your favorite editor.

npm version npm downloads Node License: MIT

thyra is designed for developers who hop between multiple projects and want a faster, keyboard-only way to jump straight into a folder—no file explorer, no hassle.


Features

  • Save any directory under a short, memorable name
  • Import multiple project folders from a parent directory
  • Open saved directories instantly from the terminal
  • Check the CLI version easily (thyra version)
  • Works with any editor (VS Code, WebStorm, Vim, Sublime Text, Emacs, etc.)
  • Stores configuration in your user directory
  • Cross-platform: macOS, Linux, Windows
  • Simple, fast, no fluff

Installation

npm install -g thyra

Requires Node.js v18+.

After install, the thyra command will be available system-wide.


Quick Start

# Save projects
thyra config blog ~/projects/personal-blog
thyra config api /var/www/company/api

# Import projects from a directory
thyra import ~/projects

# Open instantly
thyra open blog
# See everything you saved
thyra list

# Check thyra version
thyra version

Usage

Save a project folder

thyra config <name> <path>

Examples

thyra config blog ~/projects/personal-blog
thyra config api /var/www/company/api

Import project folders from a directory

thyra import <directory>

Example

thyra import ~/projects

This scans the target directory, registers each project folder it finds, and skips entries that already exist.

Open a saved project

thyra open <name>

Example

thyra open blog

This opens the saved path in your configured editor.

List all saved projects

thyra list

Sample output

blog     → /Users/you/projects/personal-blog
api      → /var/www/company/api

Show CLI version

thyra --version

Output

v1.3.0

This shows the currently installed version of thyra.

Update a saved project

thyra update <name> <path>

Update the stored path for an existing alias. The folder must exist on disk.

Example

thyra update blog ~/projects/personal-blog-v2

Remove a saved project

thyra remove <name>

Remove an alias from your saved mappings. This cannot be undone except by re-running thyra config.

Example

thyra remove api

You can also remove all saved projects at once using the --all flag. By default this prompts for confirmation; pass --force to skip the prompt.

# Prompt for confirmation
thyra remove --all

# Skip confirmation
thyra remove --all --force

Help

thyra --help

Editor Configuration

By default, thyra uses VS Code (code) if it’s available.

To use a different editor, set the EDITOR environment variable:

# one-off for current shell
EDITOR=webstorm thyra open blog

# or set it permanently (bash/zsh)
export EDITOR=webstorm

Common editor commands

Editor Command
Visual Studio Code code
WebStorm webstorm
PhpStorm pstorm
Vim / Neovim vim, nvim
Sublime Text subl
Emacs emacs

Tip (Windows, PowerShell):

setx EDITOR "webstorm"

How It Works

thyra stores your mappings in a JSON file:

Platform Path
macOS / Linux ~/.config/thyra/thyra.json
Windows %APPDATA%\thyra\thyra.json

Each entry maps a nameabsolute path.

When you run thyra open <name>:

  1. thyra reads the target path from the config
  2. thyra launches your editor with that directory

Example Workflow

# Save projects
thyra config frontend ~/code/myapp/frontend
thyra config backend  ~/code/myapp/backend
thyra config docs     ~/code/myapp/docs

# Hop around instantly
thyra open frontend
thyra open backend
thyra open docs

# View all
thyra list

# Check thyra version
thyra version

Troubleshooting

  • Command not found Ensure global npm binaries are on your PATH. On macOS/Linux, this is often $HOME/.npm-global/bin or the Node version manager’s bin directory.

  • Editor doesn’t open Confirm the editor command works by itself (e.g., run webstorm . or code . in any folder). If it does, set EDITOR to that command.

  • Paths with spaces Wrap the path in quotes when configuring: thyra config design "/Users/you/Work/Client A/Design"


Uninstall

npm uninstall -g thyra

Your config file is left in place so you can reinstall later. Remove it manually if you want a clean slate.


Keywords

cli, command-line, open-folder, project-manager, developer-tools, shortcuts, vscode, jetbrains, vim, productivity, workspace, folder-alias

Author


License

MIT License – You are free to use, modify, and distribute this tool.

About

A tiny CLI to bookmark project folders under short names and open them instantly in your favorite editor.

Topics

Resources

License

Stars

10 stars

Watchers

1 watching

Forks

Packages

 
 
 

Contributors