Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/olivernybroe/collector-intellij
A PhpStorm plugin for refactoring to collections
https://github.com/olivernybroe/collector-intellij
hacktoberfest intellij intellij-plugin laravel laravel-collections phpstorm phpstorm-plugin
Last synced: 12 days ago
JSON representation
A PhpStorm plugin for refactoring to collections
- Host: GitHub
- URL: https://github.com/olivernybroe/collector-intellij
- Owner: olivernybroe
- Created: 2020-10-19T09:29:10.000Z (about 4 years ago)
- Default Branch: main
- Last Pushed: 2024-04-26T05:22:20.000Z (7 months ago)
- Last Synced: 2024-05-01T17:21:59.522Z (6 months ago)
- Topics: hacktoberfest, intellij, intellij-plugin, laravel, laravel-collections, phpstorm, phpstorm-plugin
- Language: Kotlin
- Homepage:
- Size: 2.14 MB
- Stars: 139
- Watchers: 4
- Forks: 6
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Funding: .github/FUNDING.yml
Awesome Lists containing this project
README
# Collector - A collection's plugin for PhpStorm
This plugin adds support for Laravel Collections.
It contains a bunch of handy refactorings for making your collections better.
It can also convert normal PHP statements into collections.## Installation
The plugin has no stable version, only manual and EAP is possible.- Using IDE built-in plugin system:
Preferences > Plugins > Marketplace > Search for "Collector" >
Install Plugin- Manually:
Download the [latest release](https://github.com/olivernybroe/collections-intellij/releases/latest) and install it manually using
Preferences > Plugins > ⚙️ > Install plugin from disk...## Configuration
> :warning: The inspections might be disabled by default! Go to preferences for enabling them.All the features are added as inspections in PhpStorm, this means you can disable
the ones you don't like or change how severe the warning are on them.For example, by default refactoring `foreach` to collection is not highlighting the text.
However, if you would like to enforce yourself to never use `foreach`, you can change the severity to error.![inspection-settings](https://github.com/olivernybroe/collector-intellij/blob/main/art/usage/inspection.jpg?raw=1)
## Features
### `foreach` to collection
![foreach-example](https://github.com/olivernybroe/collector-intellij/blob/main/art/usage/foreach.gif?raw=1)### `array_map` to collection
![array_map-example](https://github.com/olivernybroe/collector-intellij/blob/main/art/usage/array_map.gif?raw=1)### `map(...)->flatten(1)` to `flatMap`
![flatmap-example](https://github.com/olivernybroe/collector-intellij/blob/main/art/usage/flatmap.gif?raw=1)### Remove nested collections
![recursive-collection-example](https://github.com/olivernybroe/collector-intellij/blob/main/art/usage/recursiveCollection.gif?raw=1)### Closure to arrow functions
![closure-to-arrow-example](https://github.com/olivernybroe/collector-intellij/blob/main/art/usage/closureToArrow.gif?raw=1)### `where(...)->first()` to `firstWhere`
![where-first-to-firstWhere-example](https://github.com/olivernybroe/collector-intellij/blob/main/art/usage/where-first-to-firstWhere.gif?raw=1)### `where(...)->isNotEmpty()` to `contains`
![where-isNotEmpty-to-contains-example](https://github.com/olivernybroe/collector-intellij/blob/main/art/usage/whereIsNotEmpty-to-contains.gif?raw=1)## Credits
- [Oliver Nybroe](https://github.com/olivernybroe)
- [All contributors](https://github.com/olivernybroe/collector-intellij/contributors)Special thanks to [Caneco](https://twitter.com/caneco) for the logo ✨
---
Plugin based on the [IntelliJ Platform Plugin Template][template].[template]: https://github.com/JetBrains/intellij-platform-plugin-template