{"id":26857448,"url":"https://github.com/orpolyzos/design-patterns-plugin","last_synced_at":"2025-05-05T23:16:28.650Z","repository":{"id":61782996,"uuid":"138387052","full_name":"OrPolyzos/design-patterns-plugin","owner":"OrPolyzos","description":"Design Patterns - Plugin for IntelliJ IDEA that provides on the fly implementation of various design patterns","archived":false,"fork":false,"pushed_at":"2020-01-04T16:09:54.000Z","size":467,"stargazers_count":46,"open_issues_count":7,"forks_count":15,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-05-05T23:16:25.842Z","etag":null,"topics":["design-patterns","intellij","java","jetbrains","plugin"],"latest_commit_sha":null,"homepage":"https://plugins.jetbrains.com/plugin/10856-design-patterns-intellij-idea-plugin","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/OrPolyzos.png","metadata":{"files":{"readme":"readme.md","changelog":null,"contributing":"contributing.md","funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2018-06-23T09:05:45.000Z","updated_at":"2024-02-22T02:42:50.000Z","dependencies_parsed_at":"2022-10-21T04:45:22.011Z","dependency_job_id":null,"html_url":"https://github.com/OrPolyzos/design-patterns-plugin","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/OrPolyzos%2Fdesign-patterns-plugin","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/OrPolyzos%2Fdesign-patterns-plugin/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/OrPolyzos%2Fdesign-patterns-plugin/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/OrPolyzos%2Fdesign-patterns-plugin/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/OrPolyzos","download_url":"https://codeload.github.com/OrPolyzos/design-patterns-plugin/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252590635,"owners_count":21772941,"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":["design-patterns","intellij","java","jetbrains","plugin"],"created_at":"2025-03-31T00:34:57.614Z","updated_at":"2025-05-05T23:16:28.633Z","avatar_url":"https://github.com/OrPolyzos.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Design Patterns _(Plugin for IntelliJ IDEA)_\nThis plugin is meant to provide on the fly implementation of various design patterns.\n\u003cbr/\u003e\nYou can download it directly from IntelliJ IDEA or from https://plugins.jetbrains.com/plugin/10856-design-patterns-plugin\n\n## Currently supported design patterns\n* __Behavioral__\n  * Strategy\n* __Creational__\n  * Builder (Inner)\n  * Factory\n  * Singleton\n* __Structural__\n\n## How to use\nAssuming you have already installed the plugin, you can use it just by right-clicking inside a .java file while your mouse is inside a code block that defines a class. This will bring up the editor menu and the first option will be Design Patterns, where you can choose which one should be implemented.\u003cbr/\u003e\n![Demonstration screenshot](/../screenshots/Demonstration.png?raw=true)\u003cbr/\u003e\n![Demo gif](/../screenshots/BuilderDemo.gif?raw=true)\n\n## Getting started\n* Run `$ gradle runIde` to test the plugin locally\n* If you want to test on a specific IntelliJ IDEA release, you can modify the `intellij.version` property in build.gradle\n\n## Release History\n* \u003cstrong\u003e2.0.2\u003c/strong\u003e\n    * Changes (narrows down) support for IntelliJ IDEA versions since build _172.*_ until build _191.*_\n    * Fixes typo with the title of the Builder\n    * Major code refactoring (extracted lib package for base classes in order to be moved in a separate library at some point)\n* \u003cstrong\u003e2.0.1\u003c/strong\u003e\n    * Fixes bug that was causing _NullPointerException_ when clicking on non .java files\n    * Adds support for IntelliJ IDEA versions since build _145.20_ until build _191.*_\n    * Code refactoring\n* \u003cstrong\u003e2.0.0\u003c/strong\u003e\n    * Fixes bug that was causing ActionDuplicationException during IntelliJ IDEA launch\n    * Migrates plugin's build tool from DevKit to Gradle\n    * Changes Singleton DP and Builder DP to use resource templates instead of String literals\n    * Adds support for IntelliJ IDEA versions since build _145.20_ until build _183.*_\n* \u003cstrong\u003e1.1.0\u003c/strong\u003e\n    * Updates Builder DP, so that it can now handle mandatory fields (if the user wants to)\n    * Fixes bug in Builder DP, that would produce multiple constructors when ran again\n    * Fixes bug in Strategy/Factory DP, that would cause error, when running it in a class without package statement\n    * Fixes bug in Factory DP, that would produce multiple constructors when ran again\n    * Fixes bug in Factory DP, that would not always find all implementors of an interface\n* \u003cstrong\u003e1.0.1\u003c/strong\u003e\n    * Adds Factory DP \n    * Fixes bug with package declaration in Strategy DP\n    * Fixes bug with modifiers of fields and methods in Singleton DP\n* \u003cstrong\u003e1.0.0\u003c/strong\u003e\n    * Adds Builder DP\n    * Adds Singleton DP\n    * Adds Strategy DP\n\n## Authors\n* **Orestes Polyzos** - *Initial work* - [OrPolyzos](https://github.com/OrPolyzos)","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Forpolyzos%2Fdesign-patterns-plugin","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Forpolyzos%2Fdesign-patterns-plugin","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Forpolyzos%2Fdesign-patterns-plugin/lists"}