Go to file
Isaac Johnson 616685c9b2 cool boot animation, done in WSL 2026-06-02 17:31:24 -05:00
src cool boot animation, done in WSL 2026-06-02 17:31:24 -05:00
.gitignore first 2026-05-31 19:59:22 -05:00
README.md cool boot animation, done in WSL 2026-06-02 17:31:24 -05:00
SYSTEM.md cool boot animation, done in WSL 2026-06-02 17:31:24 -05:00
ascii-art-2.txt cool boot animation, done in WSL 2026-06-02 17:31:24 -05:00
ascii-art.txt cool boot animation, done in WSL 2026-06-02 17:31:24 -05:00
package-lock.json first 2026-05-31 19:59:22 -05:00
package.json first 2026-05-31 19:59:22 -05:00
swagger.json issue details shows assignee 2026-06-02 13:41:33 -05:00
test-api-add.js tests, add and view time 2026-06-01 18:34:20 -05:00
test-api-issue-times.js tests, add and view time 2026-06-01 18:34:20 -05:00
test-api-times.js tests, add and view time 2026-06-01 18:34:20 -05:00
test-api.js tests, add and view time 2026-06-01 18:34:20 -05:00
test-create.js fixing column endings, sort 2026-06-01 19:02:10 -05:00
test-frames.js open and close animations 2026-06-01 19:36:39 -05:00
test-header.ts fix repo display on list pass 2026-05-31 22:01:08 -05:00
test-output.txt fix repo display on list pass 2026-05-31 22:01:08 -05:00
test-sort.js fixing column endings, sort 2026-06-01 19:02:10 -05:00
test-sort2.js fixing column endings, sort 2026-06-01 19:02:10 -05:00
test-width.js fixed width of header column and times on issue list 2026-06-01 18:40:04 -05:00
test-wrap.ts fix repo display on list pass 2026-05-31 22:01:08 -05:00
tsconfig.json first 2026-05-31 19:59:22 -05:00

README.md

Gitea TUI (fjtui)

A premium interactive CLI TUI Dashboard for exploring Gitea and Forgejo issues directly from your terminal.

Features

  • Interactive TUI: A full-featured terminal user interface using Node.js.
  • Multiple Screens:
    • Setup Wizard: Easy configuration and connection testing.
    • Repository Picker: Browse and select repositories seamlessly.
    • Issue List: View, filter, sort, and search issues in a repository.
    • Issue Details: Read full issue descriptions and comments in a dedicated view.
    • Create Issue: Draft and submit new issues directly from the terminal.
    • Add Comment: Participate in issue discussions seamlessly.
  • Configuration Management: Save your connection settings and tokens securely for future sessions.
  • Support for Forgejo & Gitea: Built to integrate smoothly with Forgejo and Gitea APIs.

Installation

Ensure you have Node.js (v20+) installed.

Clone the repository and install dependencies:

git clone <repository-url> fjtui
cd fjtui
npm install

Build the project:

npm run build

Link globally (optional):

npm link

You can then run the tool anywhere using gitea-tui.

Usage

You can start the interactive setup wizard by simply running:

npm start

Or, if installed globally:

gitea-tui

Direct Connection

You can also use command-line options to connect directly and bypass the setup wizard:

npm start -- --url "https://forgejo.example.com" --userid "myuser" --repo "myuser/myrepo" --token "my-access-token"

Command-Line Options

  • -u, --url <url>: Forgejo/Gitea instance base URL (e.g. https://forgejo.freshbrewed.science)
  • -i, --userid <userid>: Forgejo/Gitea user ID / username
  • -r, --repo <owner/repo>: Repository path (e.g. owner/repo)
  • -t, --token <token>: Personal Access Token (optional for public repositories)
  • -s, --save: Save the provided settings to the global config file (~/.config/fjtui/fjtui.json)

Configuration

Settings can be saved interactively via the Setup Wizard or by passing the -s or --save flag in the CLI. The application configuration file is stored safely at ~/.config/fjtui/fjtui.json.

Development

  • npm run build: Compiles the TypeScript code to JavaScript in the dist/ directory.
  • npm start: Runs the built dist/index.js file.

Technologies Used

  • TypeScript / Node.js
  • Commander: Command-line argument parsing.
  • Chalk: Terminal styling.
  • Axios: API interactions.