Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/nate-xyz/chess-cli
Play chess from the terminal.
https://github.com/nate-xyz/chess-cli
chess cli go golang lichess lichess-api tui
Last synced: about 2 months ago
JSON representation
Play chess from the terminal.
- Host: GitHub
- URL: https://github.com/nate-xyz/chess-cli
- Owner: nate-xyz
- License: gpl-3.0
- Created: 2021-04-23T00:01:35.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2023-02-23T17:54:12.000Z (almost 2 years ago)
- Last Synced: 2023-09-05T03:37:13.028Z (over 1 year ago)
- Topics: chess, cli, go, golang, lichess, lichess-api, tui
- Language: Go
- Homepage:
- Size: 6.74 MB
- Stars: 8
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
README
chess-cli ♟️
A chess tui app written in Go.
Play locally with a friend or online with Lichess!
♞♞♞♞♞♞♞♞♞♞♞
chess-cli is a tui (terminal user interface) that allows you to play chess, both offline with a friend or online as a Lichess api client.
![home](https://user-images.githubusercontent.com/57846867/182972093-c9917d32-81c3-4ba5-a6ec-a783bf254f33.png)
![game](https://user-images.githubusercontent.com/42559123/183780181-a4cb62c0-8515-4371-8406-932e11e84f77.png)♞♞♞♞♞♞♞♞♞♞♞
# Features
- Mouse input support
- Displays move history
- UCI chess notation input
- Saving and restoring local games
- Lichess features:
- Lichess login w/ oauth
- Lichess challenge request for real time, unlimited, or correspondence games, with all variants and options supported
- Challenge a friend or a random player
- Play against the stockfish AI
- Join ongoing games
- Join from your incoming challenges♞♞♞♞♞♞♞♞♞♞♞
### dependency documentation:
https://lichess.org/api for lichess
https://pkg.go.dev/github.com/notnil/chess chess lib
https://docs.rocketnine.space/code.rocketnine.space/tslocum/cview/ cview
https://code.rocketnine.space/tslocum/cview/src/branch/master/demos cview demos
https://pkg.go.dev/net/http
https://mholt.github.io/json-to-go/
♞♞♞♞♞♞♞♞♞♞♞
### todo:
#### general
- Handle all notation types or choose notation to start
#### local client- add time options
#### oauth- handle if oauth rejected mid process
#### online
- exit option on loader
- challenge construction
- set default interval position for sliders
- custom starting position option for challenges
- client
- chat
- rematch option post game
♞♞♞♞♞♞♞♞♞♞♞