{"id":18944505,"url":"https://github.com/null93/drawille","last_synced_at":"2025-10-05T00:35:27.818Z","repository":{"id":27835409,"uuid":"115302372","full_name":"null93/drawille","owner":"null93","description":"Pixel graphics in console implemented with unicode braille characters","archived":false,"fork":false,"pushed_at":"2023-01-04T13:53:03.000Z","size":124,"stargazers_count":23,"open_issues_count":1,"forks_count":3,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-04-15T23:56:22.470Z","etag":null,"topics":["braille-characters","java-library","maven","terminal-graphics","turtle-graphics"],"latest_commit_sha":null,"homepage":"","language":"Java","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/null93.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2017-12-25T03:12:31.000Z","updated_at":"2024-07-17T04:08:33.000Z","dependencies_parsed_at":"2023-01-14T07:34:59.211Z","dependency_job_id":null,"html_url":"https://github.com/null93/drawille","commit_stats":null,"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"purl":"pkg:github/null93/drawille","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/null93%2Fdrawille","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/null93%2Fdrawille/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/null93%2Fdrawille/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/null93%2Fdrawille/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/null93","download_url":"https://codeload.github.com/null93/drawille/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/null93%2Fdrawille/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":278395885,"owners_count":25979685,"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","status":"online","status_checked_at":"2025-10-04T02:00:05.491Z","response_time":63,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":["braille-characters","java-library","maven","terminal-graphics","turtle-graphics"],"created_at":"2024-11-08T12:47:09.856Z","updated_at":"2025-10-05T00:35:27.783Z","avatar_url":"https://github.com/null93.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Drawille\n\u003e Pixel graphics in terminal implemented with unicode braille characters\n\n![MIT License](https://img.shields.io/badge/License-MIT-lightgrey.svg?style=for-the-badge)\n![Version 1.0.3](https://img.shields.io/badge/Version-1.0.3-lightgrey.svg?style=for-the-badge)\n![Travis CI](https://img.shields.io/travis/null93/drawille.svg?style=for-the-badge\u0026colorB=9f9f9f)\n\n## About\n\nThis project is a Java port of the original [drawille](https://github.com/asciimoo/drawille) python project by [asciimoo](https://github.com/asciimoo). This project serves as a library for Java to draw in the console using braille letters that are part of the unicode character space.  Braille characters in unicode have a 4 by 2 matrix that can be used as a sub-matrix for each character in a console screen.  This braille dot matrix effectively raises the resolution of any console by eight times. The examples below were rendered in the console using this Java library.  The original ideas for these examples came from the original project repository.\n\n## Examples\n\n```java\nCanvas canvas = new Canvas ( 75, 6 );\nfor ( int x = 0; x \u003c= canvas.getWidth () * 8; x++ ) {\n\tcanvas.set ( x / 10, ( int ) Math.round ( 10 + Math.cos ( x * Math.PI / 180 ) * 10 ) );\n}\ncanvas.render ();\n```\n\n![Example #01](docs/assets/example_1.png)\n\n```java\nTurtle turtle = new Turtle ( 75, 50 );\nturtle.move ( turtle.getWidth () / 2, turtle.getHeight () / 2 );\nturtle.down ();\nfor ( int x = 0; x \u003c 72; x++ ) {\n\tturtle.right ( 20 );\n\tfor ( int y = 0; y \u003c 72; y++ ) {\n\t\tturtle.right ( 20 );\n\t\tturtle.forward ( 10 );\n\t}\n}\nturtle.render ();\n```\n\n![Example #02](docs/assets/example_2.png)\n\n## Building \u0026 Running\n\nThis project uses maven as a build system. Therefore to package this library into a jar, execute `mvn package` while in the project root directory. Since braille characters are part of the unicode domain, it is important to append the `-Dfile.encoding=UTF-8` flag when running your Java application.  This will ensure that the braille characters are rendered correctly in your console. If this flag is not passed, then you will likely see the `?` character in place of it.\n\n## Development Environment\n\nDocker can be used to spin up a quick development environment:\n\n```bash\ndocker build -t drawille .\ndocker run -it -v `pwd`:/usr/src/drawille drawille bash\n```\n\nOnce inside the container, you can compile and run the examples:\n\n```bash\nmvn package\njavac -cp target/drawille-1.0.3.jar docs/examples/*Demo.java\njava -cp .:target/drawille-1.0.3.jar docs/examples/CanvasDemo\njava -cp .:target/drawille-1.0.3.jar docs/examples/TurtleDemo\n```\n\n## Bugs / Feature Requests\nIf you have any feature requests, please open up an issue. Similarly if there are any bugs found, please report them by opening up an issue.  If a bug is found, please include steps to reproduce the issue, alongside the expected and actual behavior.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnull93%2Fdrawille","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnull93%2Fdrawille","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnull93%2Fdrawille/lists"}