Skip to content
MattpottPublic

About

The Rust-based commandline interface which I made as a tool for interfacing with the database used for storing page information for my website's navigation bar.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

5 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

My Commandline Interface

A Rust-based commandline interface made with a component architecture using ratatui for its display. This interface was made as a tool to ease the interactions with my website's SQLite database, specifically with the upkeep of pages in its navigation bar.

Large thanks to TaKO8Ki's gobang project, which acted as inspiration for the beginning of this project.

Usage Sample

Current Features

Currently the interface features:

  • Strong customisability for actions on pre-defined tables
  • Addition of rows to pre-defined tables
  • Deletion of rows to pre-defined tables
  • Modification of a cell within a pre-defined table
  • Ability to define and use autofill functions associated with a pre-defined table's columns

Planned TODOs

  • Allow for swapping of values in a per-table-specified column for rows
  • Add a way to search for rows in a table
  • Add non-compile-time configurations with a dotfile or toml
  • General improvements on the UI and experience of use

Keymap

Key Description
←, ↑, ↓, → Move left/down/up/right
Ctrl + ←, Ctrl + → Change target screen counter-clockwise/clockwise
Enter Activate current functionality
Esc Exit program

Configuration

Currently the configuration is all done at compile-time through the config.rs file. Changing the WORKING_DIRECTORY constant updates the root which automatically gets searched for to allow ease of calling in subdirectories of a project, and changing the DATABASE_PATH relative path will update where to read the SQLite database from.

About

The Rust-based commandline interface which I made as a tool for interfacing with the database used for storing page information for my website's navigation bar.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages