charcade is a string manipulation library that can animate, color, and bruteforce strings

Related tags

Documentationcharcade
Overview

charcade

charcade is a string manipulation library that can animate, color, and bruteforce strings.

Features

  • Animating text for CLI applications with easy to use syntax.
  • Coloring text with easy to use syntax.
  • Bruteforce strings showing all possible outcomes, or real words that are hidden within.

Usage

Arcade class


This class is for animating text.

There are currently 5 animation types.

  • write()

Writes your string out like a typewriter.

  • casewave()

Sends a casewave across your string.

  • slide()

Slides your string like a billboard.

  • shuffle()

Randomly shuffles your string.

  • load()

Creates an in-place animation. Accepts lists and strings.

Lets look at an example of some code.

from charcade import Arcade

# This will clear your terminal for cleaner looking applications.
Arcade.erase()


# The 'flow=' parameter controls the animation speed. default value is .1
animation = Arcade('charcade charcade', 'light orange', flow=.08)

# To create an animation sequence simply do this.
animation.write()
animation.casewave()
animation.casewave('left')
animation.slide()
animation.slide('right')
animation.casewave()
animation.casewave('left')

# Without stamp() your animation will stack ontop of itself
# It is recommended to use this at the end of every animation sequence
animation.stamp() 

Brute class


This class is for brute-forcing strings

There are 4 ways to brute-force your strings.

  • bulk()

Returns a list of all possible combinations of your string.

  • halfbulk()

Returns a list of all possible combinations of your string that are the same length.

  • genuine()

Returns a list of all possible combinations of your string that are real words.

  • bigfoot()

Returns a list of all possible combinations of your string that are real words and the same length as your string.

Lets look at an example of some code.

from charcade import Brute

words = Brute('ports').bigfoot()

# Since Brute returns a list we're going to iterate over it and print.
for word in words:
    print(word)

Output:

ports
prost
sport
sprot
strop

color function

This function is for coloring strings

There are currently 26 colors to choose from, although you are not limited to just the available colors.

This function also accepts RGB values in place of the color for the fg color and bg color.

All colors here are also available in Arcade

Lets look at an example of some code.

from charcade import color

my_string = 'charcade'

print(color(my_string, fg='red', bg='black'))
# OR
print(color(my_string, fg='255,0,0', bg='0,0,0'))

# Both will output the same thing since RGB values are accepted as colors.

Available colors:


red
red orange
light orange
orange
yellow
yellow green
green
blue green
light blue
blue
violet
purple
light pink
pink
hot pink

white
gray 10
gray 20
gray 30
gray 40
gray 50
gray 60
gray 70
gray 80
gray 90
black

Roadmap

  • Add more animation styles
  • Add custom tailored color palettes for your apps
  • Autocorrect
  • Word mixing to create new words
  • Return definitions of words
Owner
Aaron
Python developer
Aaron
learn python in 100 days, a simple step could be follow from beginner to master of every aspect of python programming and project also include side project which you can use as demo project for your personal portfolio

learn python in 100 days, a simple step could be follow from beginner to master of every aspect of python programming and project also include side project which you can use as demo project for your

BDFD 6 Nov 05, 2022
API spec validator and OpenAPI document generator for Python web frameworks.

API spec validator and OpenAPI document generator for Python web frameworks.

1001001 249 Dec 22, 2022
An MkDocs plugin that simplifies configuring page titles and their order

MkDocs Awesome Pages Plugin An MkDocs plugin that simplifies configuring page titles and their order The awesome-pages plugin allows you to customize

Lukas Geiter 282 Dec 28, 2022
MkDocs plugin for setting revision date from git per markdown file

mkdocs-git-revision-date-plugin MkDocs plugin that displays the last revision date of the current page of the documentation based on Git. The revision

Terry Zhao 48 Jan 06, 2023
Documentation for GitHub Copilot

NOTE: GitHub Copilot discussions have moved to the Copilot Feedback forum. GitHub Copilot Welcome to the GitHub Copilot user community! In this reposi

GitHub 21.3k Dec 28, 2022
A python package to avoid writing and maintaining duplicated python docstrings.

docstring-inheritance is a python package to avoid writing and maintaining duplicated python docstrings.

Antoine Dechaume 15 Dec 07, 2022
Main repository for the Sphinx documentation builder

Sphinx Sphinx is a tool that makes it easy to create intelligent and beautiful documentation for Python projects (or other documents consisting of mul

5.1k Jan 04, 2023
This is the data scrapped of all the pitches made up potential startup's to established bussiness tycoons of India with all the details of Investments made, equity share, Name of investor etc.

SharkTankInvestor This is the data scrapped of all the pitches made up potential startup's to established bussiness tycoons of India with all the deta

Subradip Poddar 2 Aug 02, 2022
A simple flask application to collect annotations for the Turing Change Point Dataset, a benchmark dataset for change point detection algorithms

AnnotateChange Welcome to the repository of the "AnnotateChange" application. This application was created to collect annotations of time series data

The Alan Turing Institute 16 Jul 21, 2022
A tutorial for people to run synthetic data replica's from source healthcare datasets

Synthetic-Data-Replica-for-Healthcare Description What is this? A tailored hands-on tutorial showing how to use Python to create synthetic data replic

11 Mar 22, 2022
Plover jyutping - Plover plugin for Jyutping input

Plover plugin for Jyutping Installation Navigate to the repo directory: cd plove

Samuel Lo 1 Mar 17, 2022
A Python module for creating Excel XLSX files.

XlsxWriter XlsxWriter is a Python module for writing files in the Excel 2007+ XLSX file format. XlsxWriter can be used to write text, numbers, formula

John McNamara 3.1k Dec 29, 2022
A collection of online resources to help you on your Tech journey.

Everything Tech Resources & Projects About The Project Coming from an engineering background and looking to up skill yourself on a new field can be di

Mohamed A 396 Dec 31, 2022
Mozilla Campus Club CCEW is a student committee working to spread awareness on Open Source software.

Mozilla Campus Club CCEW is a student committee working to spread awareness on Open Source software. We organize webinars and workshops on different technical topics and making Open Source contributi

Mozilla-Campus-Club-Cummins 8 Jun 15, 2022
Dynamic Resume Generator

Dynamic Resume Generator

Quinten Lisowe 15 May 19, 2022
A simple XLSX/CSV reader - to dictionary converter

sheet2dict A simple XLSX/CSV reader - to dictionary converter Installing To install the package from pip, first run: python3 -m pip install --no-cache

Tomas Pytel 216 Nov 25, 2022
Data-Scrapping SEO - the project uses various data scrapping and Google autocompletes API tools to provide relevant points of different keywords so that search engines can be optimized

Data-Scrapping SEO - the project uses various data scrapping and Google autocompletes API tools to provide relevant points of different keywords so that search engines can be optimized; as this infor

Vibhav Kumar Dixit 2 Jul 18, 2022
Documentation of the QR code found on new Austrian ID cards.

Austrian ID Card QR Code This document aims to be a complete documentation of the format used in the QR area on the back of new Austrian ID cards (Per

Gabriel Huber 9 Dec 12, 2022
Workbench to integrate pyoptools with freecad, that means basically optics ray tracing capabilities for FreeCAD.

freecad-pyoptools Workbench to integrate pyoptools with freecad, that means basically optics ray tracing capabilities for FreeCAD. Requirements It req

Combustión Ingenieros SAS 12 Nov 16, 2022
SqlAlchemy Flask-Restful Swagger Json:API OpenAPI

SAFRS: Python OpenAPI & JSON:API Framework Overview Installation JSON:API Interface Resource Objects Relationships Methods Custom Methods Class Method

Thomas Pollet 361 Nov 16, 2022