{"id":20326056,"url":"https://github.com/matteoguadrini/dinosay","last_synced_at":"2025-04-11T20:06:21.523Z","repository":{"id":43223712,"uuid":"322817669","full_name":"MatteoGuadrini/dinosay","owner":"MatteoGuadrini","description":"dinosay is a humble, simple, nice and paleolithic alternative to cowsay.","archived":false,"fork":false,"pushed_at":"2022-04-19T10:42:27.000Z","size":120,"stargazers_count":45,"open_issues_count":1,"forks_count":1,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-04-11T20:06:16.238Z","etag":null,"topics":["cli","comic","cowsay","dinosaur","dinosay","hacktoberfest","python","python-library","python3","template"],"latest_commit_sha":null,"homepage":"https://matteoguadrini.github.io/dinosay/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/MatteoGuadrini.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGES.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE.md","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2020-12-19T10:07:12.000Z","updated_at":"2025-03-31T15:37:58.000Z","dependencies_parsed_at":"2022-09-03T08:52:15.369Z","dependency_job_id":null,"html_url":"https://github.com/MatteoGuadrini/dinosay","commit_stats":null,"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MatteoGuadrini%2Fdinosay","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MatteoGuadrini%2Fdinosay/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MatteoGuadrini%2Fdinosay/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MatteoGuadrini%2Fdinosay/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/MatteoGuadrini","download_url":"https://codeload.github.com/MatteoGuadrini/dinosay/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248473127,"owners_count":21109628,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cli","comic","cowsay","dinosaur","dinosay","hacktoberfest","python","python-library","python3","template"],"created_at":"2024-11-14T19:42:46.950Z","updated_at":"2025-04-11T20:06:21.498Z","avatar_url":"https://github.com/MatteoGuadrini.png","language":"Python","funding_links":["https://www.paypal.me/guos"],"categories":[],"sub_categories":[],"readme":"# dinosay\n\u003cimg src=\"https://raw.githubusercontent.com/MatteoGuadrini/dinosay/b8f1d9a89cbe6a9c24ee4d58ce95d288536f3eed/img/dinosay.svg\" alt=\"dinosay\" title=\"dinosay\" width=\"300\" height=\"300\" /\u003e\n\n[![Codacy Badge](https://app.codacy.com/project/badge/Grade/9e5dc7af35744ddfa501192b1eb12ee8)](https://www.codacy.com/gh/MatteoGuadrini/dinosay/dashboard?utm_source=github.com\u0026amp;utm_medium=referral\u0026amp;utm_content=MatteoGuadrini/dinosay\u0026amp;utm_campaign=Badge_Grade)\n[![CircleCI](https://circleci.com/gh/MatteoGuadrini/dinosay.svg?style=svg)](https://circleci.com/gh/MatteoGuadrini/dinosay)\n\n_dinosay_ is a humble, simple, nice and paleolithic alternative to [_cowsay_](https://en.wikipedia.org/wiki/Cowsay).\n\n## How did the idea come about?\n\nThe idea came from my two children. \nTo make them learn the syllables and then how to assemble them to form words, \nI used cowsay on my terminal, so that they learned while having fun.\nOne day, they asked me: \"Dad, isn't there a way to make a dinosaur talk too?\" (both are dinosaur fans, like me).\nSo I used `cowsay -f ~/dinosaur.cow`, but I made a very simple one.\nThe next day, I thought about how to reproduce it in python (my primary programming language) and opened this project.\n\n### Differences\n\n_dinosay_ is an alternative and not a replacement. The library is not meant to be cowsay's rewrite. \nIf you are looking for this then you need to go to [pycowsay](https://github.com/cs01/pycowsay).\n\n### Features\n\n_dinosay_ implements most of the functionality of cowsay, adding freedom in the individual elements. \nFor example, you can add the _tongue_ element or replace the eyes by specifying the _eye_ parameter. \nIf you have suggestions or new implementations, or you are an ASCII designer and would like your template to be added \nto the dinosaur library, open an _issue_ using the _dinosay-enhancement_ issue template, \nattaching your creation if possible. Below you will find instructions for building your template.\n\n## Installation\n\nUnlike its cousin cowsay, _dinosay_ is written in python.\n\n_dinosay_ can be used on the command line or as a python module, to give a dinosaur touch!\n\nFor install package, see below:\n\n```console\n$ pip install dinosay       # for python enviroment\n\n$ dnf copr enable matteoguadrini/dinosay\n$ dnf install python-dinosay -y    # for Red Hat, CentOS, Mageia and fedora\n$ wget https://github.com/MatteoGuadrini/dinosay/releases/download/\u003cversion\u003e/dinosay-\u003cversion\u003e-1.noarch.rpm -O dinosay.rpm\n$ yast -i dinosay.rpm       # for SLES and OpenSUSE\n\n\n$ apt-get install alien     # for debian based and ubuntu based, see here\n$ alien -i dinosay.rpm\n\n\n$ git clone https://github.com/MatteoGuadrini/dinosay.git \u0026\u0026 cd dinosay\n$ python setup.py install   # for other\n```\n\n## Command line\n\nFrom the command line, _dinosay_ looks like this:\n\n```console\n$ dinosay --help\nusage: dinosay [-h] [--version] (-d DINOSAUR | -r | -f FILE | -l) [-c COLOR] [-b BEHAVIOR] [-i]\n               [-t] [-e EYE] [-w WRAP]\n               [message]\n\nprint messages via ASCII dinosaurs\n\npositional arguments:\n  message               message to print\n\noptional arguments:\n  -h, --help            show this help message and exit\n  --version, -v         show program's version number and exit\n  -d DINOSAUR, --dinosaur DINOSAUR\n                        dinosaur to print\n  -r, --random          random dinosaur to print\n  -f FILE, --file FILE  file containing ASCII to print\n  -l, --list            list of all dinosaurs and parts\n  -c COLOR, --color COLOR\n                        color dinosaur\n  -b BEHAVIOR, --behavior BEHAVIOR\n                        behavior of dinosaur\n  -i, --idea            idea's speech bubble\n  -t, --tongue          shape of the tongue\n  -e EYE, --eye EYE     shape of the eye\n  -w WRAP, --wrap WRAP  length of the message\n\n _____     __     __   __     ______     ______     ______     __  __   \n/\\  __-.  /\\ \\   /\\ \"-.\\ \\   /\\  __ \\   /\\  ___\\   /\\  __ \\   /\\ \\_\\ \\  \n\\ \\ \\/\\ \\ \\ \\ \\  \\ \\ \\-.  \\  \\ \\ \\/\\ \\  \\ \\___  \\  \\ \\  __ \\  \\ \\____ \\ \n \\ \\____-  \\ \\_\\  \\ \\_\\\\\"\\_\\  \\ \\_____\\  \\/\\_____\\  \\ \\_\\ \\_\\  \\/\\_____\\\n  \\/____/   \\/_/   \\/_/ \\/_/   \\/_____/   \\/_____/   \\/_/\\/_/   \\/_____/ \n  \n$ dinolist\n\nDINOSAY list elements and dinosaurs\n===================================\n\nDINOSAURS - ALIAS:          BEHAVIOR:      EYE:                 COLORS: \n- tyrannosaurus - trex      - normal       - classic:  O O      - purple\n- dimetrodon - dim          - happy        - borg:     = =      - cyan   \n- ankylosaur - anky         - joking       - stoned:   * *      - darkcyan     \n- hypsilophodon - hypsi     - lazy         - glass:    0-0      - blue     \n- stegosaurus - stego       - tired        - hypno:    @ @      - green     \n- deinonychus - deino       - nerd         - rage:     ° °      - yellow     \n- pterodactyl - ptero       - cyborg       - ko:       x x      - red     \n- archaeopteryx - archa     - dead         - happy:    ^ ^      - default     \n- maiasaur - maia           - trance       - closed:   - -     \n- pleisiosaur - plei        - stoned\n- brachiosaur - brachio\n- corythosaur - cory\n- parasaurolophus - para\n- triceratops - trice\n\n```\n\n## Python module\n\nInstead, using it as a python module, we'll do it like this:\n\n```python\nfrom dinosay import dinoprint, DINO_TYPE\nmsg = \"Hi, I'm dinosay!\"\ndinoprint(msg, DINO_TYPE['tyrannosaurus'])\n```\n\nOr like this:\n\n```python\nfrom dinosay import dinostring, DINO_ALIAS\nmsg = \"Hi, I'm dinosay!\"\nreturn dinostring(message, DINO_ALIAS['brachio'], 'happy')\n```\n\n## Custom template\n\nIf you want to build a custom template to parse to cowsay's _file_ parameter, then you should follow these guidelines.\n\nThe template will have to use ASCII characters, and can use some substitution variables. \nThe variables are included in this table:\n\nName   | Description\n------ | -----------\n$comic | Variable indicating the positioning of the message to be printed. IMPORTANT! if it is missing, the message will NOT be printed.\n$eyes  | Variable indicating the substitution characters of the eyes. The pattern must be the following: `character-space-character`. \n$eye   | Same as _$eyes_ but only prints the first character, so it represents a single eye. \n$tongue| Variable indicating language substitution characters. It can be single, or multiple, for example `\\_\\`. \n\n\n### Simple template example\n\nThis is a simple template:\n\n```console\n$ cat \u003c\u003cEOF \u003e\u003e /tmp/trex.ascii\n\n                             $comic\n                                        O_\n                                       /  \u003e\n                                      -  \u003e   ^\\\n                                     /   \u003e  ^ /   \n                                    ($eye)  \u003e ^ /   / / /  \n       _____                        |            \\\\|//\n      /  __ \\                      _/      /     / _/\n     /  /  | |                    /       /     / /\n   _/  |___/ /                  _/      ------_/ / \n ==_|  \\____/                 _/       /  ______/\n     \\   \\                 __/           |\\\n      |   \\_          ____/              / \\      _                    \n       \\    \\________/                  |\\  \\----/_V\n        \\_                              / \\_______ V\n          \\__                /       \\ /          V\n             \\               \\        \\\n              \\______         \\_       \\\n                     \\__________\\_      \\ \n                        /    /    \\_    | \n                       |   _/       \\   |\n                      /  _/          \\  |\n                     |  /            |  |\n                     \\  \\__          |   \\__\n                     /\\____=\\       /\\_____=\\\nEOF\n\n$ dinosay -f /tmp/trex.ascii -e happy \"I'm a crazy dinosaur\"\n```\n\n## Open source\n_dinosay_ is a open source project. Any contribute, It's welcome.\n\n**A great thanks**.\n\nFor donations, press this\n\nFor me\n\n[![paypal](https://www.paypalobjects.com/en_US/i/btn/btn_donateCC_LG.gif)](https://www.paypal.me/guos)\n\nFor [Telethon](http://www.telethon.it/)\n\nThe Telethon Foundation is a non-profit organization recognized by the Ministry of University and Scientific and Technological Research.\nThey were born in 1990 to respond to the appeal of patients suffering from rare diseases.\nCome today, we are organized to dare to listen to them and answers, every day of the year.\n\n\u003ca href=\"https://www.telethon.it/sostienici/dona-ora\"\u003e \u003cimg src=\"https://www.telethon.it/dev/_nuxt/img/c6d474e.svg\" alt=\"Telethon\" title=\"Telethon\" width=\"200\" height=\"104\" /\u003e \u003c/a\u003e\n\n[Adopt the future](https://www.ioadottoilfuturo.it/)\n\n\n## Acknowledgments\n\nThanks to Mark Lutz for writing the _Learning Python_ and _Programming Python_ books that make up my python foundation.\n\nThanks to Kenneth Reitz and Tanya Schlusser for writing the _The Hitchhiker’s Guide to Python_ books.\n\nThanks to Dane Hillard for writing the _Practices of the Python Pro_ books.\n\nSpecial thanks go to my wife, who understood the hours of absence for this development. \nThanks to my children, for the daily inspiration they give me and to make me realize, that life must be simple.\n\nThanks Python!","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmatteoguadrini%2Fdinosay","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmatteoguadrini%2Fdinosay","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmatteoguadrini%2Fdinosay/lists"}