{"id":19232379,"url":"https://github.com/dprint/dprint-intellij","last_synced_at":"2026-01-18T13:20:17.365Z","repository":{"id":37697533,"uuid":"419904216","full_name":"dprint/dprint-intellij","owner":"dprint","description":"A dprint plugin for Intellij.","archived":false,"fork":false,"pushed_at":"2024-07-21T22:41:47.000Z","size":458,"stargazers_count":12,"open_issues_count":3,"forks_count":2,"subscribers_count":3,"default_branch":"main","last_synced_at":"2024-07-21T23:41:45.860Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://plugins.jetbrains.com/plugin/18192-dprint","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/dprint.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":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-10-21T23:18:57.000Z","updated_at":"2024-07-21T22:41:50.000Z","dependencies_parsed_at":"2023-12-30T10:21:22.455Z","dependency_job_id":"349b7348-3261-4c09-8c99-89eae32ebb5f","html_url":"https://github.com/dprint/dprint-intellij","commit_stats":null,"previous_names":[],"tags_count":26,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dprint%2Fdprint-intellij","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dprint%2Fdprint-intellij/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dprint%2Fdprint-intellij/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dprint%2Fdprint-intellij/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dprint","download_url":"https://codeload.github.com/dprint/dprint-intellij/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":223849426,"owners_count":17213640,"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":[],"created_at":"2024-11-09T16:06:07.305Z","updated_at":"2026-01-18T13:20:17.347Z","avatar_url":"https://github.com/dprint.png","language":"Kotlin","funding_links":[],"categories":[],"sub_categories":[],"readme":"# dprint\n\n\u003c!-- Plugin description --\u003e\nThis plugin adds support for dprint, a flexible and extensible code formatter ([dprint.dev](https://dprint.dev/)). \nPlease report bugs and feature requests to our [github](https://github.com/dprint/dprint-intellij/issues).\n\nN.B. Currently only UTF-8 file formats are supported correctly.\n\nTo use this plugin:\n\n- Install and configure dprint for your repository, [dprint.dev/setup](https://dprint.dev/setup/)\n- Configure this plugin at `Preferences` -\u003e `Tools` -\u003e `dprint`.\n    - Ensure `Enable dprint` is checked\n    - To run dprint on save check `Run dprint on save`.\n    - To enable overriding the default IntelliJ formatter check `Default formatter override`. If a file can be\n      formatted via dprint, the default IntelliJ formatter will be overridden and dprint will be run in its place when\n      using \u003ckbd\u003eOption+Shift+Cmd+L\u003c/kbd\u003e on macOS or \u003ckbd\u003eAlt+Shift+Ctrl+L\u003c/kbd\u003e on Windows and Linux.\n    - To enable verbose logging from the underlying dprint daemon process check `Verbose daemon logging`\n    - If your `dprint.json` config file isn't at the base of your project, provide the absolute path to your config in\n      the `Config file path` field, otherwise it will be detected automatically.\n    - If dprint isn't on your path or in `node_modules`, provide the absolute path to the dprint executable in\n      the `Executable path` field, otherwise it will be detected automatically.\n- Use the \"Reformat with dprint\" action by using the \"Find Action\" popup (\u003ckbd\u003eCmd/Ctrl+Shift+A\u003c/kbd\u003e).\n- Output from the plugin will be displayed in the dprint tool window. This includes config errors and any syntax errors\n  that may be stopping your file from being formatted.\n\nThis plugin uses a long-running process known as the `editor-service`. If you change your `dprint.json` file outside of\nIntelliJ or dprint is not formatting as expected, run the `Restart dprint` action. If you need to reset all settings\nto defaults, use the `Reset to Defaults` button in `Preferences` -\u003e `Tools` -\u003e `dprint`. This will reset all\nconfiguration values and restart the editor service.\n\nThe plugin supports both dprint schema v4 and v5 and will automatically detect the appropriate version based on your dprint installation.\n\nPlease report any issues with this Intellij plugin to the\n[github repository](https://github.com/dprint/dprint-intellij/issues).\n\u003c!-- Plugin description end --\u003e\n\n## Installation\n\n- Manually:\n\n  Download the [latest release](https://github.com/dprint/dprint-intellij/releases/latest) and install it\n  manually using\n  \u003ckbd\u003eSettings/Preferences\u003c/kbd\u003e \u003e \u003ckbd\u003ePlugins\u003c/kbd\u003e \u003e \u003ckbd\u003e⚙️\u003c/kbd\u003e \u003e \u003ckbd\u003eInstall plugin from disk...\u003c/kbd\u003e\n\n---\n\n## Development\n\nThis project is currently built using JDK 21 and targets IntelliJ 2025.1+. To install on a mac with homebrew run `brew install openjdk@21` and set that\nas your project SDK.\n\n### Dprint setup\n\nTo test this plugin, you will require dprint installed. To install on a mac with homebrew run `brew install dprint`.\nWhen running the plugin via the `Run Plugin` configuration, add a default dprint config file by running `dprint init`.\n\n### Intellij Setup\n\n- Set up linting settings, run \u003ckbd\u003eGradle\u003c/kbd\u003e \u003e \u003ckbd\u003eTasks\u003c/kbd\u003e \u003e \u003ckbd\u003ehelp\u003c/kbd\u003e \u003e \u003ckbd\u003ektlintGenerateBaseline\u003c/kbd\u003e.\n  This sets up IntelliJ with appropriate formatting settings.\n\n### Running\n\nThere are 3 default run configs set up\n\n- \u003ckbd\u003eRun Plugin\u003c/kbd\u003e - This starts up an instance of Intellij Ultimate with the plugin installed and enabled.\n- \u003ckbd\u003eRun Tests\u003c/kbd\u003e - This runs linting and tests.\n- \u003ckbd\u003eRun Verifications\u003c/kbd\u003e - This verifies the plugin is publishable.\n\nDepending on the version of IntelliJ you are running for development, you will need to change the `platformType` property\nin `gradle.properties`. It is IU for IntelliJ Ultimate and IC for IntelliJ Community.\n\n### Plugin Architecture\n\nThe plugin uses a simplified architecture centered around:\n- **DprintService**: Central service managing formatting operations and state\n- **DprintTaskExecutor**: Handles background task execution using Kotlin coroutines  \n- **EditorService**: Communicates with the dprint CLI daemon (supports v4 and v5 schemas)\n- **DprintExternalFormatter**: Integrates with IntelliJ's formatting system\n- **Configuration**: Project and user-level settings with reset functionality\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdprint%2Fdprint-intellij","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdprint%2Fdprint-intellij","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdprint%2Fdprint-intellij/lists"}