A cross-platform terminal database tool written in Rust

Overview

gobang

gobang is currently in alpha

A cross-platform terminal database tool written in Rust

github workflow status crates

gobang

Features

  • Cross-platform support (macOS, Windows, Linux)
  • Multiple Database support (MySQL PostgreSQL, SQLite)
  • Intuitive keyboard only control

Installation

Cargo

If you already have a Rust environment set up, you can use the cargo install command:

$ cargo install --version 0.1.0-alpha.0 gobang
Comments
  • Question: Error returned when using filter with PostgreSQL

    Question: Error returned when using filter with PostgreSQL

    When using Gobang with PostgreSQL, I encounter the error

    error returned from database: LIMIT #, # syntax is not supported
    

    The screenshot below described my error.

    My table sec_modules contain the column id. And I type the filter expression id = 23, when press "Enter", I got the error.

    Screenshot of the error: image

    I'm using Gobang installed from "gobang-0.1.0-alpha.3-x86_64-pc-windows-msvc.zip", Windows 10, and PostgreSQL 13.2.

    Is there any syntax error with my filter expression? Thanks.

    bug question 
    opened by jhhom 3
  • Adding help and README for exit pop up key

    Adding help and README for exit pop up key

    This PR adds a description for exit pop up.

    I noticed that the key to close the popup (Esc) exists but is not in the help.

    Thank you in advance.

    changelog: Adding help for exit pop up.

    スクリーンショット 2022-04-11 14 21 36
    opened by kyoto7250 0
  • Fix JSON conversion of the table name which is also a keyword for PostgreSQL

    Fix JSON conversion of the table name which is also a keyword for PostgreSQL

    Hi all :wave: Similarly to escape the table name in the SELECT command query, here we escape the table name with apostrophes. In fact, to_json() raised a "Syntax error" for table that uses a keyword as its name.

    An example is a table named order.

    opened by dcariotti 0
  • Fix tiny bug in checking whether a SQL statement is a SELECT statement or not

    Fix tiny bug in checking whether a SQL statement is a SELECT statement or not

    changelog: none

    In checking whether a SQL statement is a SELECT statement or not, Only cases beginning with SELECT or select were considered to be SELECT statements, so we changed the check to be case-insensitive.

    opened by mi-wada 0
  • feature connection alias

    feature connection alias

    closes #105

    Hi, I'm beginner by rust, but I like this project so I tried this issue.

    1. Load value of name from config.toml.
    2. Check if name exists, and if so returns [{name}] postgres://... else returns the same value as before.
    opened by susiyaki 0
  • Expand tilde and environment variables in path field

    Expand tilde and environment variables in path field

    closes #104

    [[conn]]
    type = "sqlite"
    path = "$HOME/Downloads/chinook.db"
    
    [[conn]]
    type = "sqlite"
    path = "~/Downloads/chinook.db"
    
    opened by TaKO8Ki 0
  • Add the way to install gobang on NetBSD to README

    Add the way to install gobang on NetBSD to README

    Discussed in https://github.com/TaKO8Ki/gobang/discussions/116

    Originally posted by 0323pin September 17, 2021 FYI, I've packaged gobang for NetBSD and merged it into the main branch. https://pkgsrc.se/databases/gobang

    Regards, pin

    opened by TaKO8Ki 0
  • pool timed out while waiting for an open connection

    pool timed out while waiting for an open connection

    Discussed in https://github.com/TaKO8Ki/gobang/discussions/110

    Originally posted by ac5tin September 15, 2021 i just installed gobang using cargo install --version 0.1.0-alpha.4 gobang

    i've edited the config.toml

    [[conn]]
    type = "postgres"
    user = "xxxxxxx"
    host = "xxxxxxxxxx.us-east-1.rds.amazonaws.com"
    port = 5432
    database = "fastapg"
    

    When i launch gobang and then select the connection i see the error. 2021-09-15-163059_531x179_scrot

    opened by TaKO8Ki 0
  • Document `name` config field

    Document `name` config field

    hi, thought it would be worth using name in a couple of the example config fields

    This would require a new release though, since the latest release predates #105

    Thanks for the cool project :)

    changelog: document name config field

    opened by zdog234 0
  • Feature request: Prompt for password

    Feature request: Prompt for password

    I don't want to write the password for the production DB in plain text into a file for security reasons.

    Instead I'd like to enter it into a prompt when having selected a DB connection.

    This could be the default if the password field in the config file is empty.

    opened by pylipp 0
  • Unable to select a table called

    Unable to select a table called "user"

    I have a postgres database with a user table, whenever I try to select it an error screen pops up with error returned from database: syntax error at or near ".". Maybe something to do with the table name?

    opened by nyonson 1
  • add option for using unix_domain_socket

    add option for using unix_domain_socket

    in local hosts, UDS connections are faster than TCP, so we should support UDS.

    close #151

    TODO

    • [x] mysql
    • [x] postgres
    • [x] add tests

    Thanks for your time to review.

    changelog: support connecting unix domain socket

    opened by kyoto7250 0
  • mask database password on the initial page

    mask database password on the initial page

    close #156

    This PR will hide the password on the first selection screen. The password is written in the config file, so it is not necessary to see it at the time of selection.

    Thank you in advance.

    スクリーンショット 2022-05-31 8 27 56

    opened by kyoto7250 0
Releases(v0.1.0-alpha.5)
Owner
Takayuki Maeda
Software Engineer?
Takayuki Maeda
A cross-platform redis gui client

Redis-Manager A cross-platform redis gui client started developing with Tauri, React and Typescript in Vite. Get Started Prerequisites Install Node.js

Kurisu 11 Mar 31, 2023
Rust version of the Haskell ERD tool. Translates a plain text description of a relational database schema to dot files representing an entity relation diagram.

erd-rs Rust CLI tool for creating entity-relationship diagrams from plain text markup. Based on erd (uses the same input format and output rendering).

Dave Challis 32 Jul 25, 2022
Grsql is a great tool to allow you set up your remote sqlite database as service and CRUD(create/read/update/delete) it using gRPC.

Grsql is a great tool to allow you set up your remote sqlite database as service and CRUD (create/ read/ update/ delete) it using gRPC. Why Create Thi

Bruce Yuan 33 Dec 16, 2022
Command-line tool to convert Apple HealthKit data to a SQLite database.

healthkit-to-sqlite Command-line tool to convert Apple HealthKit data to a SQLite database. Getting Started Open the Health app on your iOS device. Cl

Justin Shrake 3 Jan 7, 2023
A user crud written in Rust, designed to connect to a MySQL database with full integration test coverage.

SQLX User CRUD Purpose This application demonstrates the how to implement a common design for CRUDs in, potentially, a system of microservices. The de

null 78 Nov 27, 2022
AgateDB is an embeddable, persistent and fast key-value (KV) database written in pure Rust

AgateDB is an embeddable, persistent and fast key-value (KV) database written in pure Rust. It is designed as an experimental engine for the TiKV project, and will bring aggressive optimizations for TiKV specifically.

TiKV Project 535 Jan 9, 2023
A programmable document database inspired by CouchDB written in Rust

PliantDB PliantDB aims to be a Rust-written, ACID-compliant, document-database inspired by CouchDB. While it is inspired by CouchDB, this project will

Khonsu Labs 718 Dec 31, 2022
FeOphant - A SQL database server written in Rust and inspired by PostreSQL.

A PostgreSQL inspired SQL database written in Rust.

Christopher Hotchkiss 27 Dec 7, 2022
GlueSQL is a SQL database library written in Rust

GlueSQL is a SQL database library written in Rust. It provides a parser (sqlparser-rs), execution layer, and optional storage (sled) packaged into a single library.

GlueSQL 2.1k Jan 8, 2023
A programmable document database inspired by CouchDB written in Rust

BonsaiDb Formerly known as PliantDb. Not yet released on crates.io as BonsaiDb. BonsaiDb aims to be a Rust-written, ACID-compliant, document-database

Khonsu Labs 721 Jan 2, 2023
Distributed SQL database in Rust, written as a learning project

toyDB Distributed SQL database in Rust, written as a learning project. Most components are built from scratch, including: Raft-based distributed conse

Erik Grinaker 4.6k Jan 8, 2023
A fast and simple in-memory database with a key-value data model written in Rust

Segment Segment is a simple & fast in-memory database with a key-value data model written in Rust. Features Dynamic keyspaces Keyspace level control o

Segment 61 Jan 5, 2023
A "blazingly" fast key-value pair database without bloat written in rust

A fast key-value pair in memory database. With a very simple and fast API. At Xiler it gets used to store and manage client sessions throughout the pl

Arthur 16 Dec 16, 2022
ReefDB is a minimalistic, in-memory and on-disk database management system written in Rust, implementing basic SQL query capabilities and full-text search.

ReefDB ReefDB is a minimalistic, in-memory and on-disk database management system written in Rust, implementing basic SQL query capabilities and full-

Sacha Arbonel 75 Jun 12, 2023
Pure rust embeddable key-value store database.

MHdb is a pure Rust database implementation, based on dbm. See crate documentation. Changelog v1.0.3 Update Cargo.toml v1.0.2 Update Cargo.toml v1.0.1

Magnus Hirth 7 Dec 10, 2022
influxdb provides an asynchronous Rust interface to an InfluxDB database.

influxdb influxdb provides an asynchronous Rust interface to an InfluxDB database. This crate supports insertion of strings already in the InfluxDB Li

null 9 Feb 16, 2021
A pure Rust database implementation using an append-only B-Tree file format.

nebari nebari - noun - the surface roots that flare out from the base of a bonsai tree Warning: This crate is early in development. The format of the

Khonsu Labs 194 Jan 3, 2023
PackDb is a simple messagepack based database in rust

PackDb is a simple key value messagepack store Inspired by kwik It uses your local storage

Tricked 2 Apr 1, 2022
A prototype of a high-performance KV database built with Rust.

async-redis A prototype of a high-performance KV database built with Rust. Author: 3andero 11/10/2021 Overview The project starts as a fork of mini-re

null 3 Nov 29, 2022