Ana içeriğe geç

Console Kütüphanesi

Console, VT100 uyumlu terminallerde metin tabanlı arayüzler oluşturmaya yönelik, hafif fakat oldukça işlevsel bir C++ kütüphanesidir.

Gömülü sistemlerde, IoT cihazlarında veya CLI tabanlı araçlarda çalışırken terminal kontrolü çoğu zaman gereksiz tekrarlarla dolu, hataya açık ve okunması zor bir hâl alır. Console, tam da bu noktada devreye girerek geliştiriciye temiz, anlaşılır ve yeniden kullanılabilir bir yapı sunar.

Kütüphane, manuel VT100 kaçış dizilerini ezberleme veya satır aralarına gizlenmiş kontrol kodlarıyla boğuşma derdini ortadan kaldırır. Bunun yerine:

  • Renk yönetimi,
  • İmleç (cursor) kontrolü,
  • Ekran temizleme,
  • Satır manipülasyonu,
  • Basit terminal UI bileşenleri,

gibi işlemleri tek satırda, okunaklı bir şekilde yapmayı sağlar.

Console, mümkün olduğunca yalın bir API sunarken aynı zamanda modern C++ prensiplerini benimser. Bu sayede hem küçük aygıtlarda hem de masaüstü uygulamalarında hafif, güvenilir ve taşınabilir bir çözüm olarak kullanılabilir.

Kısacası bu kütüphane, terminal çıktısıyla çalışan herkese zaman kazandırmayı; kodu daha temiz, niyet odaklı ve sürdürülebilir hale getirmeyi amaçlayan küçük ama işlevli bir yardımcı araçtır.

Kurulum

git clone https://github.com/akkoyun/Console

Projene include etmen yeterli:

#include "Console.hpp"

Basit Kullanım Örneği

#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.