{"id":22509247,"url":"https://github.com/mathematicator-core/vizualizator","last_synced_at":"2025-06-21T23:36:09.222Z","repository":{"id":52426554,"uuid":"206842354","full_name":"mathematicator-core/vizualizator","owner":"mathematicator-core","description":"Elegant graphic visualizer that can render to SVG, PNG, JPG and Base64.","archived":false,"fork":false,"pushed_at":"2024-07-10T04:48:37.000Z","size":50,"stargazers_count":5,"open_issues_count":4,"forks_count":1,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-06-21T23:35:25.551Z","etag":null,"topics":["graphic-visualizations","jpg","math","png","renderer-backend","svg"],"latest_commit_sha":null,"homepage":"http://baraja.cz","language":"PHP","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/mathematicator-core.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/funding.yml","license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null},"funding":{"github":"janbarasek","custom":["https://baraja.cz","https://php.baraja.cz","https://vue.baraja.cz"]}},"created_at":"2019-09-06T17:23:17.000Z","updated_at":"2024-03-24T10:40:41.000Z","dependencies_parsed_at":"2025-06-21T23:35:31.347Z","dependency_job_id":null,"html_url":"https://github.com/mathematicator-core/vizualizator","commit_stats":null,"previous_names":[],"tags_count":8,"template":false,"template_full_name":null,"purl":"pkg:github/mathematicator-core/vizualizator","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mathematicator-core%2Fvizualizator","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mathematicator-core%2Fvizualizator/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mathematicator-core%2Fvizualizator/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mathematicator-core%2Fvizualizator/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mathematicator-core","download_url":"https://codeload.github.com/mathematicator-core/vizualizator/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mathematicator-core%2Fvizualizator/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":261211684,"owners_count":23125543,"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":["graphic-visualizations","jpg","math","png","renderer-backend","svg"],"created_at":"2024-12-07T01:28:17.190Z","updated_at":"2025-06-21T23:36:04.161Z","avatar_url":"https://github.com/mathematicator-core.png","language":"PHP","funding_links":["https://github.com/sponsors/janbarasek","https://baraja.cz","https://php.baraja.cz","https://vue.baraja.cz"],"categories":[],"sub_categories":[],"readme":"# Vizualizator\n\n[![Integrity check](https://github.com/mathematicator-core/vizualizator/workflows/Integrity%20check/badge.svg)](https://github.com/mathematicator-core/vizualizator/actions?query=workflow%3A%22Integrity+check%22)\n[![codecov](https://codecov.io/gh/mathematicator-core/vizualizator/branch/master/graph/badge.svg)](https://codecov.io/gh/mathematicator-core/vizualizator)\n[![Latest Stable Version](https://poser.pugx.org/mathematicator-core/vizualizator/v/stable)](https://packagist.org/packages/mathematicator-core/vizualizator)\n[![Latest Unstable Version](https://poser.pugx.org/mathematicator-core/vizualizator/v/unstable)](https://packagist.org/packages/mathematicator-core/vizualizator)\n[![License: MIT](https://img.shields.io/badge/License-MIT-brightgreen.svg)](./LICENSE)\n[![PHPStan Enabled](https://img.shields.io/badge/PHPStan-enabled%20L8-brightgreen.svg?style=flat)](https://phpstan.org/)\n\nSmart engine for creating elegant images and graphic visualizations.\n\nRender to SVG, PNG and JPG. All output is in base64 format valid in HTML document.\n\n## Installation\n\n```shell\ncomposer require mathematicator-core/vizualizator\n```\n\n## Usage\n\nImagine you can render all your images by simple objective request.\n\nFirst inject `Renderer` to your script and create request:\n\n```php\n$renderer = new Renderer;\n$request = $renderer-\u003ecreateRequest();\n```\n\nNow you can add some lines and more:\n\n```php\n$request-\u003eaddLine(10, 10, 35, 70);\n$request-\u003eaddLine(35, 70, 70, 35);\n```\n\nAnd render to page (output is valid HTML code, `base64` or `svg` tag):\n\n```php\n// Render specific format:\n\necho $request-\u003erender(Renderer::FORMAT_PNG);\necho $request-\u003erender(Renderer::FORMAT_JPG);\necho $request-\u003erender(Renderer::FORMAT_SVG);\n\n// Or use default renderer and __toString() method\n\nechp $request;\n```\n\n## Full simple short example\n\nThis example use short fluid-syntax. Final image size is `200x100`:\n\n```php\necho (new Renderer)-\u003ecreateRequest(200, 100)\n    -\u003eaddLine(10, 10, 35, 70, '#aaa')\n    -\u003eaddLine(35, 70, 70, 35, 'red');\n```\n\n## Mathematicator Framework tools structure\n\nThe biggest advantage is that you can choose which layer best fits\nyour needs and start build on the top of it, immediately, without the need\nto create everything by yourself. Our tools are tested for bugs\nand tuned for performance, so you can save a significant amount\nof your time, money, and effort.\n\nFramework tend to be modular as much as possible, so you should be able\nto create an extension on each layer and its sublayers.\n\n**Mathematicator framework layers** ordered from the most concrete\none to the most abstract one:\n\n\u003ctable\u003e\n    \u003ctr\u003e\n        \u003ctd\u003e\n            \u003cb\u003e\n            \u003ca href=\"https://github.com/mathematicator-core/search\"\u003e\n                Search\n            \u003c/a\u003e\n            \u003c/b\u003e\n        \u003c/td\u003e\n        \u003ctd\u003e\n            Modular search engine layer that calls its sublayers\n            and creates user interface.\n        \u003c/td\u003e\n    \u003c/tr\u003e\n    \u003ctr\u003e\n        \u003ctd\u003e\n            \u003cb\u003e\n            \u003ca href=\"https://github.com/mathematicator-core/vizualizator\"\u003e\n                Vizualizator\n            \u003c/a\u003e\n            \u003c/b\u003e\n        \u003c/td\u003e\n        \u003ctd\u003e\n            Elegant graphic visualizer that can render to\n            SVG, PNG, JPG and Base64.\u003cbr /\u003e\n            \u003cu\u003eExtensions:\u003c/u\u003e\n            \u003cb\u003e\n            \u003ca href=\"https://github.com/mathematicator-core/mandelbrot-set\"\u003e\n                Mandelbrot set generator\n            \u003c/a\u003e\n            \u003c/b\u003e\n        \u003c/td\u003e\n    \u003c/tr\u003e\n    \u003ctr\u003e\n        \u003ctd\u003e\n            \u003cb\u003e\n            \u003ca href=\"https://github.com/mathematicator-core/calculator\"\u003e\n                Calculator\n            \u003c/a\u003e\n            \u003c/b\u003e\n        \u003c/td\u003e\n        \u003ctd\u003e\n            Modular advance calculations layer.\n            \u003cbr /\u003e\n            \u003cu\u003eExtensions:\u003c/u\u003e\n            \u003cb\u003e\n            \u003ca href=\"https://github.com/mathematicator-core/integral-solver\"\u003e\n                Integral Solver\n            \u003c/a\u003e,\n            \u003ca href=\"https://github.com/mathematicator-core/statistic\"\u003e\n                Statistics\n            \u003c/a\u003e\n            \u003c/b\u003e\n        \u003c/td\u003e\n    \u003c/tr\u003e\n    \u003ctr\u003e\n        \u003ctd\u003e\n            \u003cb\u003e\n            \u003ca href=\"https://github.com/mathematicator-core/engine\"\u003e\n                Engine\n            \u003c/a\u003e\n            \u003c/b\u003e\n        \u003c/td\u003e\n        \u003ctd\u003e\n            Core logic layer that maintains basic controllers,\n            DAOs, translator, common exceptions, routing etc.\n        \u003c/td\u003e\n    \u003c/tr\u003e\n    \u003ctr\u003e\n        \u003ctd\u003e\n            \u003cb\u003e\n            \u003ca href=\"https://github.com/mathematicator-core/tokenizer\"\u003e\n                Tokenizer\n            \u003c/a\u003e\n            \u003c/b\u003e\n        \u003c/td\u003e\n        \u003ctd\u003e\n            Tokenizer that can convert string (user input / LaTeX) to numbers\n            and operators.\n        \u003c/td\u003e\n    \u003c/tr\u003e\n    \u003ctr\u003e\n        \u003ctd\u003e\n            \u003cb\u003e\n            \u003ca href=\"https://github.com/mathematicator-core/numbers\"\u003e\n                Numbers\n            \u003c/a\u003e\n            \u003c/b\u003e\n        \u003c/td\u003e\n        \u003ctd\u003e\n            Fast \u0026 secure storage for numbers with arbitrary precision.\n            It supports Human string and LaTeX output and basic conversions.\n        \u003c/td\u003e\n    \u003c/tr\u003e\n\u003c/table\u003e\n\n**Third-party packages:**\n\n⚠️ Not guaranteed!\n\n\u003ctable\u003e\n    \u003ctr\u003e\n        \u003ctd\u003e\n            \u003cb\u003e\n            \u003ca href=\"https://github.com/cothema/math-php-api\"\u003e\n                REST API\n            \u003c/a\u003e\n            \u003c/b\u003e\n        \u003c/td\u003e\n        \u003ctd\u003e\n            Install the whole pack as a REST API service\n            on your server (Docker ready) or\n            access it via public cloud REST API.\n        \u003c/td\u003e\n    \u003c/tr\u003e\n\u003c/table\u003e\n\n\n## Contribution\n\n### Tests\n\nAll new contributions should have its unit tests in `/tests` directory.\n\nBefore you send a PR, please, check all tests pass.\n\nThis package uses [Nette Tester](https://tester.nette.org/). You can run tests via command:\n```bash\ncomposer test\n````\n\nBefore PR, please run complete code check via command:\n```bash\ncomposer cs:install # only first time\ncomposer fix # otherwise pre-commit hook can fail\n````\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmathematicator-core%2Fvizualizator","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmathematicator-core%2Fvizualizator","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmathematicator-core%2Fvizualizator/lists"}