{"id":15107786,"url":"https://github.com/vkcom/elephize","last_synced_at":"2025-08-17T20:32:20.211Z","repository":{"id":39920419,"uuid":"272942808","full_name":"VKCOM/elephize","owner":"VKCOM","description":"Typescript to PHP translation tool","archived":false,"fork":false,"pushed_at":"2024-06-26T11:46:36.000Z","size":2858,"stargazers_count":34,"open_issues_count":21,"forks_count":7,"subscribers_count":13,"default_branch":"master","last_synced_at":"2024-12-17T19:07:51.133Z","etag":null,"topics":["php","transpiler","typescript"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","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/VKCOM.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-06-17T10:17:07.000Z","updated_at":"2024-09-27T09:17:35.000Z","dependencies_parsed_at":"2024-01-15T14:59:38.064Z","dependency_job_id":"c18a4efc-0e80-4734-b637-717eacb48b93","html_url":"https://github.com/VKCOM/elephize","commit_stats":{"total_commits":412,"total_committers":19,"mean_commits":21.68421052631579,"dds":0.645631067961165,"last_synced_commit":"c428ebc6cdfd6ac68ea838d41c069fd830474e93"},"previous_names":[],"tags_count":75,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/VKCOM%2Felephize","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/VKCOM%2Felephize/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/VKCOM%2Felephize/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/VKCOM%2Felephize/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/VKCOM","download_url":"https://codeload.github.com/VKCOM/elephize/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":230167798,"owners_count":18183845,"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":["php","transpiler","typescript"],"created_at":"2024-09-25T21:41:37.628Z","updated_at":"2024-12-17T19:07:56.841Z","avatar_url":"https://github.com/VKCOM.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Elephize\n\nLibrary and tool for transpiling limited set of React \u0026 Typescript constructions into PHP for use in server-side rendering.\n\n### Usage\n\n**NPM**:\n\n`npm install -D @vkontakte/elephize`\nor\n`yarn add -D @vkontakte/elephize`\n\nCheck error messages for peerDependencies errors, as elephize requires typescript to work.\n\n**Play with lib and demo (github)**:\n\n`git clone https://github.com/VKCOM/elephize.git`\n\n`cd elephize \u0026\u0026 yarn`\n\n`yarn demo_start`\n\nThis will set up demo files in demo/public folder and run two servers:\n- React node server with native ReactDOM on port 3000\n- Php simple server with transpiled sources on port 8000\n\nTo see help, use `bin/elephize --help` or `./node_modules/.bin/elephize --help` if you've installed elephize as a module. \n\nYou can use `debugger;` statement in your ts code to debug transpilation process and check context variables. When run with\nnode debugger, this statement will pause the execution process when source file transpilation reaches the statement.\nIt's useful to combine it with manual breakpoints to check particular cases.\n\n### Documentation (ru)\n\n- [Использование CLI](doc/usage-cli.md)\n- [Модульная структура транспилируемого кода](doc/modules.md)\n- [Поддержка синтаксиса и стандартной библиотеки](doc/support.md)\n\n#### Описание проекта\n- [Мотивация и ответы на вопросы](doc/project-description/motivation.md)\n- [Ограничения и возможности](doc/project-description/restrictions-and-opportunities.md)\n- [Базовые сведения о транспиляции](doc/project-description/transpilation-basics.md)\n- [Транспиляция базового синтаксиса](doc/project-description/basic-syntax.md)\n- [Функции и области видимости](doc/project-description/functions-and-visibility.md)\n- [Уничтожение неиспользуемого кода](doc/project-description/unused-code-elimination.md)\n- [Обзор архитектуры библиотеки](doc/project-description/basic-architecture.md)\n- [Обзор рабочего процесса разработки](doc/project-description/basic-workflow.md)\n\n### Documentation (en)\n\nHelp wanted! If you have time to translate docs to english, please feel free to send us your PRs.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvkcom%2Felephize","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fvkcom%2Felephize","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvkcom%2Felephize/lists"}