Skip to content

ConsoleCrafter is a flexible, cross-platform C++ library for creating interactive and visually appealing console applications πŸŽ¨πŸ’». It offers tools for colorful text 🌈, selection prompts βœ…, multi-selection prompts πŸ”˜, and stylish text formatting ✨. The library will soon be packaged into a reusable binary πŸ“¦ for easy integration into C++ projects.

Notifications You must be signed in to change notification settings

MagedGDEV/ConsoleCrafter

Repository files navigation

ConsoleCrafter

This repository is dedicated to creating a powerful and flexible C++ library for designing beautiful console applications. The library will allow developers to enhance terminal output with interactive elements, colorful designs, and stylish text formatting. Whether you're building simple utilities or complex command-line interfaces, this library will help transform your console into an engaging and interactive user experience.

Next Steps

With the must-have features now completed and thoroughly tested, the next step is to organize and package them into a fully functional library. The goal is to publish a binary file for developers, so they can use the library in their projects just like any standard C++ library, without the need to manually download or include source files.

Features Roadmap

Must-Have Features (High Priority)

  • Clear Screen
    • Clear the terminal screen to provide a clean slate for new content.
  • Colorful Text
    • Display text in various colors to improve visual clarity and appeal.
  • Selection Prompts
    • Allow users to select between multiple items in a single-choice prompt.
  • Multi-Selection Prompts
    • Enable users to choose multiple items from a list.
  • Styled Text
    • Add support for text styling, including:
      • Underline
      • Bold
      • Dim
      • Strikethrough

Compatibility:
All features have been tested and completed, and they are fully functional on macOS, Windows 10, and Linux (Raspberry Pi 2 [1GB RAM]).

Planned Enhancements (Next in Line)

  • Tables
    • Create dynamic tables with adjustable column sizes that handle any text type.
  • Borders for Text
    • Add customizable borders around text using characters like |, -, and #.
  • Large Font Text
    • Allow the creation of text in large, artistic fonts for headers or emphasis.
Future Aspirations (Advanced Features)
  • Loading Bars
    • Show progress bars for tasks and operations.
  • Page Layouts
    • Create structured layouts for better organization of terminal content.
  • Trees
    • Render hierarchical data as expandable/collapsible trees.
  • Bar Charts
    • Display data visually using bar charts.

Goals

This project is designed to:

  • Simplify terminal application development by providing a rich set of tools for customization and interactivity.
  • Produce a reusable library that is community-friendly and easy to integrate into any C++ project.

About

ConsoleCrafter is a flexible, cross-platform C++ library for creating interactive and visually appealing console applications πŸŽ¨πŸ’». It offers tools for colorful text 🌈, selection prompts βœ…, multi-selection prompts πŸ”˜, and stylish text formatting ✨. The library will soon be packaged into a reusable binary πŸ“¦ for easy integration into C++ projects.

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages