{"id":16737224,"url":"https://github.com/akxcv/krasivo","last_synced_at":"2025-10-26T00:37:28.104Z","repository":{"id":28341229,"uuid":"118053217","full_name":"akxcv/krasivo","owner":"akxcv","description":"Communicate prettily.","archived":false,"fork":false,"pushed_at":"2022-12-07T19:14:35.000Z","size":4760,"stargazers_count":16,"open_issues_count":35,"forks_count":4,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-03-18T05:34:45.013Z","etag":null,"topics":["ascii","emoji","pretty-print","productivity-2018","slack"],"latest_commit_sha":null,"homepage":"http://akxcv.com/krasivo","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/akxcv.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2018-01-19T00:02:08.000Z","updated_at":"2024-09-25T14:32:40.000Z","dependencies_parsed_at":"2022-07-27T13:49:32.370Z","dependency_job_id":null,"html_url":"https://github.com/akxcv/krasivo","commit_stats":null,"previous_names":[],"tags_count":6,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/akxcv%2Fkrasivo","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/akxcv%2Fkrasivo/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/akxcv%2Fkrasivo/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/akxcv%2Fkrasivo/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/akxcv","download_url":"https://codeload.github.com/akxcv/krasivo/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244880122,"owners_count":20525505,"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":["ascii","emoji","pretty-print","productivity-2018","slack"],"created_at":"2024-10-13T00:25:22.069Z","updated_at":"2025-10-26T00:37:23.073Z","avatar_url":"https://github.com/akxcv.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# krasivo\n\n\u003e Russian for: prettily\n\n![krasivo](images/krasivo.gif)\n\n## Installation\n\nYou can use krasivo without installing it with npm like this:\n```sh\nnpx krasivo [your text] [foreground string] [background string]\n```\n\nInstall with [yarn](https://yarnpkg.com):\n```sh\nyarn global add krasivo\n```\n\nOr, with npm:\n```sh\nnpm i -g krasivo\n```\n\n## Usage\n\nTo use via command line:\n```sh\nkrasivo [your text] [foreground string] [background string]\n```\n\nTo use in JS code:\n```js\nimport krasivo from 'krasivo'\n\nconsole.log(krasivo('hello', 'x', ' '))\n```\n\n## API\n\nTo get help with the API, run:\n```sh\nkrasivo --help\n```\n\n### Available options:\n\n#### - `shortEmoji` (default: `true`)\nWhen true, emoji names like `:no_good:` are converted to Unicode emoji symbols.\n\n**CLI usage**:\n```sh\nkrasivo hello :no_good: :no_entry: --short-emoji\n# or:\nkrasivo hello :no_good: :no_entry: -e\n# To disable:\nkrasivo hello :no_good: :no_entry: --no-short-emoji\n```\n\n**JS usage**:\n```js\nkrasivo('hello', ':no_good:', ':no_entry:', { shortEmoji: true })\n// To disable:\nkrasivo('hello', ':no_good:', ':no_entry:', { shortEmoji: false })\n```\n\n\u003e Slack limits message length, and after the limit is broken, the only way to send the\nmessage is to\nsend a \"code snippet\". The problem is, every symbol in an emoji name is counted as a\nseparate character. `shortEmoji` feature allows you to use any emoji in your message by\nconverting emoji names to actual Unicode emoji symbols, which are all 1 character long in\nSlack.\n\n#### - `skinTone` (default: `undefined`)\nWhen given a number (typically from 2 to 6), adds a skin tone to emoji that support skin tone\nvariations. You can always specify a skin tone yourself (`:no_good::skin-tone-6:`), this will\noverride the value specified in `skinTone`. It's best to configure this option in a [local\nconfig file](#local-config-file).\n\n**CLI usage**:\n```sh\nkrasivo hello :no_good: :no_entry: --skin-tone=2\n# or:\nkrasivo hello :no_good: :no_entry: -s 2\n```\n\n**JS usage**:\n```js\nkrasivo('hello', ':no_good:', :no_entry:, { skinTone: 2 })\n```\n\n### Skin colours\n\nSkin colours are supported in Slack style:\n\n`\":no_good:\"` =\u003e 🙅\n\n`\":no_good::skin-tone-2:\"` =\u003e 🙅🏻\n\n`\":no_good::skin-tone-3:\"` =\u003e 🙅🏼\n\n`\":no_good::skin-tone-4:\"` =\u003e 🙅🏽\n\n`\":no_good::skin-tone-5:\"` =\u003e 🙅🏾\n\n`\":no_good::skin-tone-6:\"` =\u003e 🙅🏿\n\n## Local config file\n\nKrasivo CLI looks for a `.krasivorc` YAML file in your home directory. For example, to configure\na default skin tone, and to disable emoji replacement, create the following file:\n\n```yaml\n# ~/.krasivorc\noptions:\n  skinTone: 2\n  shortEmoji: false\n```\n\n## License\n\nMIT\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fakxcv%2Fkrasivo","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fakxcv%2Fkrasivo","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fakxcv%2Fkrasivo/lists"}