Console Library
Console is a lightweight yet highly functional C++ library for creating text-based interfaces on VT100 compatible terminals.
When working on embedded systems, IoT devices, or CLI-based tools, terminal control often becomes filled with unnecessary repetitions, error-prone, and difficult to read. Console comes into play at this point, offering developers a clean, understandable, and reusable structure.
The library eliminates the hassle of memorizing manual VT100 escape sequences or dealing with control codes hidden between lines. Instead, it allows you to perform operations such as:
- Color management,
- Cursor control,
- Screen clearing,
- Line manipulation,
- Simple terminal UI components,
in a single line, in a readable manner.
While Console offers as simple an API as possible, it also embraces modern C++ principles. This way, it can be used as a lightweight, reliable, and portable solution on both small devices and desktop applications.
In short, this library is a small but functional helper tool that aims to save time for anyone working with terminal output; making the code cleaner, intent-focused, and more maintainable.
Installation
git clone https://github.com/akkoyun/Console
Just include it in your project:
#include "Console.hpp"
Simple Usage Example
#include "Console.hpp"
int main() {
Console::Clear();
Console::SetForeground(Console::Color::Green);
Console::WriteLine("VT100 Console Test");
Console::MoveCursor(5, 10);
Console::Write("Cursor moved!");
Console::Reset();
}
Bu kütüphane, gerçek sahada kullanılan projelerden gelen ihtiyaçlara göre sürekli gelişen bir açık kaynak projedir. Kullanıcı geri bildirimleri, yeni fonksiyonların eklenmesi ve mevcut yapının iyileştirilmesi açısından kritik öneme sahiptir.
Bu kütüphaneyi hem kişisel hem de ticari projelerinde özgürce kullanabilirsin. Herhangi bir lisans kısıtı uygulanmamaktadır; amacım, bu kütüphanenin mümkün olduğunca fazla gerçek dünya projesinde yer almasıdır. Özel bir entegrasyon ihtiyacın, ticari bir planın veya teknik bir sorunun varsa bana e‑posta üzerinden her zaman ulaşabilirsin: akkoyun@me.com Geri bildirimlerini veya kullanım senaryolarını paylaşman, projeyi geliştirmem açısından büyük katkı sağlar.