{"id":15107756,"url":"https://github.com/vkcom/kphpstorm","last_synced_at":"2025-12-24T13:47:00.492Z","repository":{"id":37090081,"uuid":"284436466","full_name":"VKCOM/kphpstorm","owner":"VKCOM","description":"A PhpStorm plugin that makes IDE understand KPHP specifics","archived":false,"fork":false,"pushed_at":"2025-08-04T11:52:04.000Z","size":2285,"stargazers_count":44,"open_issues_count":16,"forks_count":5,"subscribers_count":10,"default_branch":"master","last_synced_at":"2025-08-04T12:15:44.883Z","etag":null,"topics":["intellij-plugin","kphp","phpstorm-plugin"],"latest_commit_sha":null,"homepage":"https://vkcom.github.io/kphpstorm/","language":"Kotlin","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":"CHANGELOG.md","contributing":null,"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,"zenodo":null}},"created_at":"2020-08-02T10:09:24.000Z","updated_at":"2025-07-31T14:14:12.000Z","dependencies_parsed_at":"2023-12-18T17:02:57.701Z","dependency_job_id":"2d0ce65b-8849-4a25-a281-36ccadd72143","html_url":"https://github.com/VKCOM/kphpstorm","commit_stats":null,"previous_names":[],"tags_count":6,"template":false,"template_full_name":null,"purl":"pkg:github/VKCOM/kphpstorm","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/VKCOM%2Fkphpstorm","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/VKCOM%2Fkphpstorm/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/VKCOM%2Fkphpstorm/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/VKCOM%2Fkphpstorm/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/VKCOM","download_url":"https://codeload.github.com/VKCOM/kphpstorm/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/VKCOM%2Fkphpstorm/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":268845078,"owners_count":24316127,"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-08-05T02:00:12.334Z","response_time":2576,"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":["intellij-plugin","kphp","phpstorm-plugin"],"created_at":"2024-09-25T21:41:25.792Z","updated_at":"2025-12-24T13:47:00.439Z","avatar_url":"https://github.com/VKCOM.png","language":"Kotlin","readme":"# KPHPStorm plugin for PhpStorm\n\n[![Build](https://github.com/VKCOM/kphpstorm/actions/workflows/build.yml/badge.svg)](https://github.com/VKCOM/kphpstorm/actions/workflows/build.yml)\n[![GitHub license](https://img.shields.io/badge/license-MIT-blue.svg)](/LICENSE)\n[![Total Downloads](https://img.shields.io/jetbrains/plugin/d/14814)](https://plugins.jetbrains.com/plugin/14814-kphpstorm)\n[![Latest Version](https://img.shields.io/jetbrains/plugin/v/14814)](https://plugins.jetbrains.com/plugin/14814-kphpstorm)\n\nPhpStorm plugin that makes IDE understand KPHP specifics.\n[JetBrains repository](https://plugins.jetbrains.com/plugin/14814-kphpstorm/)\n\nKPHP is a PHP compiler. \nIts goal is to execute PHP code much faster. \nIt supports a strict subset of PHP and brings new types, functions, annotations and web server runtime.\n\n\n## Brief info\n\n* extended types in phpdoc: arbirtary nesting, ?nullable, tuples, shapes and other KPHP types\n\n  \u003cimg width=\"295\" alt=\"phpdoc types\" src=\"https://user-images.githubusercontent.com/67757852/87846922-ed325000-c8fd-11ea-9f91-8c5610f968da.png\"\u003e\n\n* extended type inferring with per-key access completion and stdlib enhancements\n  \n  \u003cimg width=\"225\" alt=\"extended tinf\" src=\"https://user-images.githubusercontent.com/67757852/87847098-68483600-c8ff-11ea-962c-905f28846156.png\"\u003e\n\n* @kphp- doc tags autocomplete and validation\n\n  \u003cimg width=\"302\" alt=\"@kphp doc tag\" src=\"https://user-images.githubusercontent.com/67757852/87847142-cffe8100-c8ff-11ea-9b04-c42e725abbde.png\"\u003e\n  \n* strict type checking in function calls, assignments, return statements, array access, etc \n\n  \u003cimg width=\"270\" alt=\"strict typing\" src=\"https://user-images.githubusercontent.com/67757852/87847273-0ab4e900-c901-11ea-934d-0612e7397bad.png\"\u003e\n  \n* ... and much more!  \n\n\n## Detailed info\n\n#### **[Landing page (in Russian)](https://vkcom.github.io/kphpstorm/)**\n\n\n## Useful for plugin developers\n\nProvided code can help IDEA/PhpStorm plugin developers in various aspects: how to provide extended type inferring, parse and colorize custom doc tags, traverse PSI structure, handle stubs metadata and lots of corner cases.\n\nAn interesting fact is that plugin disables lots of features in plain PHP projects (not KPHP-based).\n\nFeel free to examine this code, it contains lots of necessary comments.   \n\n\n## Questions and contribution\n\nPlease contact [vk.com/kphp](https://vk.com/kphp) or VK Team.\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvkcom%2Fkphpstorm","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fvkcom%2Fkphpstorm","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvkcom%2Fkphpstorm/lists"}