Skip to main content

A modular TUI for managing development workflows

Reason this release was yanked:

Outdated README

Project description

Nexus

Nexus is a terminal interface designed for creating efficient development workflows. It serves as a centralized dashboard for launching command line utilities and managing projects across various operating systems.

Prerequisites

  • Python 3.12 or newer.
  • The uv package manager.
  • A modern terminal emulator such as Windows Terminal, ghostty, or iTerm2.

Installation

Install Nexus globally using the uv tool manager:

# Always latest stable
uv tool install nexus-tui

Upgrade

To update to the latest version:

uv tool upgrade nexus-tui

Local Development

git clone https://github.com/jdluu/Nexus
cd Nexus
uv tool install --editable .

Cross Platform Support

Nexus supports Linux, MacOS, and Windows.

  • Linux: Fully supported on standard terminals.
  • MacOS: Fully supported.
  • Windows: Recommended to use PowerShell 7 or Git Bash within Windows Terminal.

Configuration

Nexus utilizes the standard configuration paths for your operating system.

  • Linux: ~/.config/nexus/tools.toml
  • MacOS: ~/Library/Application Support/Nexus/tools.toml
  • Windows: %LOCALAPPDATA%\Nexus\tools.toml

Project Directory

To define the workspace where Nexus looks for projects, add the project_root key to your configuration file.

# Example configuration
project_root = "~/Development"

Tool Definitions

Tools are defined in the configuration file using the [[tool]] table.

[[tool]]
label = "Neovim"
category = "DEV"
description = "Text editor"
command = "nvim"
requires_project = true
  • label: The display name.
  • category: The grouping identifier (for example DEV, UTIL).
  • description: A short explanation of the function.
  • command: The executable command line instruction.
  • requires_project: Indicates if the tool needs a working directory.

Keybindings

Custom keybindings can be defined in the [keybindings] section.

[keybindings]
quit = "alt+q"
toggle_favorite = "ctrl+f"

Usage

Launch the application using the following command:

nexus

Features

  • Smart Search: Filter projects using fuzzy matching logic.
  • Persistence: Automatically tracks recent projects and favorites.
  • Favorites: Pin frequently used tools for quick access.

Controls

  • Arrow Keys: Navigate through lists.
  • Enter: Confirm selection or launch tool.
  • F: Toggle the favorite status of a tool.
  • Type: Instantly filter lists by text.
  • Esc: Return to the previous screen.
  • Q: Exit the application.

Development

To configure the development environment:

  1. Synchronize dependencies:

    uv sync
    
  2. Run the application locally:

    uv run nexus
    
  3. Execute the comprehensive test suite:

    uv run pytest --cov=nexus
    
  4. Perform static analysis and type checking:

    uv run ruff check .
    uv run mypy .
    

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

nexus_tui-0.1.0.tar.gz (3.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

nexus_tui-0.1.0-py3-none-any.whl (3.9 kB view details)

Uploaded Python 3

File details

Details for the file nexus_tui-0.1.0.tar.gz.

File metadata

  • Download URL: nexus_tui-0.1.0.tar.gz
  • Upload date:
  • Size: 3.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"CachyOS Linux","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for nexus_tui-0.1.0.tar.gz
Algorithm Hash digest
SHA256 e05cff5bdb338bf9fba342efdade125b4c44b92346922c363780ce14080873d9
MD5 a57a50e4f6b2130e0e23b5853b9b0fcf
BLAKE2b-256 489495eea0b92de190e49d174ee88416399deb92ea8f621b738066dc4242fe36

See more details on using hashes here.

File details

Details for the file nexus_tui-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: nexus_tui-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 3.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"CachyOS Linux","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for nexus_tui-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 5009427afbfd4d9e71ba20ad4d24b64051fc605def24f3ef8fe8ce46c19ffe56
MD5 df15c3b495c675c642477912b30c94f7
BLAKE2b-256 3d3f065f61c7de6ce9597b5b0679cb3922467fb5e29d33931fbd770e65e650ca

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page