https://github.com/supercom32/dosktop
Create rich text-based terminal applications and games with BASIC-like syntax in Go! Abstract out low-level terminal operations and spend more time writing your own code!
https://github.com/supercom32/dosktop
ansi command-line command-line-interface hacktoberfest menus mouse-support tui tui-controls
Last synced: 5 months ago
JSON representation
Create rich text-based terminal applications and games with BASIC-like syntax in Go! Abstract out low-level terminal operations and spend more time writing your own code!
- Host: GitHub
- URL: https://github.com/supercom32/dosktop
- Owner: supercom32
- License: mit
- Created: 2020-12-31T20:24:54.000Z (over 5 years ago)
- Default Branch: main
- Last Pushed: 2021-10-04T05:14:54.000Z (over 4 years ago)
- Last Synced: 2024-06-19T17:50:48.789Z (almost 2 years ago)
- Topics: ansi, command-line, command-line-interface, hacktoberfest, menus, mouse-support, tui, tui-controls
- Language: Go
- Homepage: https://github.com/supercom32/dosktop
- Size: 9.11 MB
- Stars: 10
- Watchers: 2
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README

[](https://codecov.io/gh/supercom32/dosktop)



[](https://pkg.go.dev/github.com/supercom32/dosktop@main)
# Dosktop
Dosktop is a package which allow users to easily create rich text-based terminal
applications and games. Dosktop differs from other terminal packages by
providing an extremely simple API that abstracts out all low-level terminal
operations, while avoiding complicated event-driven TUI designs.
# Features
* Straight forward BASIC-like API and syntax!
* Access to an unlimited number of independent text layers, allowing for modal dialogs, windows, parallax scrolling, forgrounds, backgrounds, and more!
* Automatic calculation of shadows and colored transparencies effects!
* High level support for buttons, selection menus, lines, frames, and other TUI controls!
* Full manual and automatic mouse support with TUI integration!
* Dialog text printing with automatic word wrapping, typewriter effects, and dynamic style markup!
* Virtual File System (ZIP & RAR) support, with password protection to ensure resource integrity!
* Automatic conversion and rendering of bitmap images directly to text layers in ansi graphics!
# Screenshots
Create windows and menus with full mouse support!

Ability to scale and draw bitmapped images directly to terminal with dialog printing!

Support for dynamic text layer transparencies!

Fully manipulable and independent text layers!

# Project status
While Dosktop is currently being actively developed, it is at a point where practical use
will determine further areas of usability, existing gaps, and deficiency improvements. If you
like what this package has to offer, have ideas on how to improve it, or just want to
experiment, consider giving Dosktop a try!
# Future Roadmap
* More examples and documentation. (see tests for basic examples)
* More TUI controls (Progress bars, loading icons, etc).
* Bulk addition of images and selections.
* Saving and loading of terminal screenshots.
* Fully text-based sprite system.
* Digital audio and sound integration.