{"id":23785162,"url":"https://github.com/turbobabr/easyeda-quick-align-extension","last_synced_at":"2025-07-19T02:32:40.157Z","repository":{"id":37776628,"uuid":"344401139","full_name":"turbobabr/easyeda-quick-align-extension","owner":"turbobabr","description":"Objects alignment in EasyEDA without a hassle! 🚀","archived":false,"fork":false,"pushed_at":"2021-03-09T03:06:17.000Z","size":5918,"stargazers_count":46,"open_issues_count":1,"forks_count":5,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-04-06T19:39:28.843Z","etag":null,"topics":["easyeda","easyeda-extension","eda","lceda","pcb-design"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","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/turbobabr.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2021-03-04T08:22:20.000Z","updated_at":"2025-02-07T09:15:16.000Z","dependencies_parsed_at":"2022-08-18T17:51:56.264Z","dependency_job_id":null,"html_url":"https://github.com/turbobabr/easyeda-quick-align-extension","commit_stats":null,"previous_names":[],"tags_count":5,"template":false,"template_full_name":null,"purl":"pkg:github/turbobabr/easyeda-quick-align-extension","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/turbobabr%2Feasyeda-quick-align-extension","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/turbobabr%2Feasyeda-quick-align-extension/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/turbobabr%2Feasyeda-quick-align-extension/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/turbobabr%2Feasyeda-quick-align-extension/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/turbobabr","download_url":"https://codeload.github.com/turbobabr/easyeda-quick-align-extension/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/turbobabr%2Feasyeda-quick-align-extension/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":265876912,"owners_count":23842956,"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":["easyeda","easyeda-extension","eda","lceda","pcb-design"],"created_at":"2025-01-01T13:14:54.894Z","updated_at":"2025-07-19T02:32:40.138Z","avatar_url":"https://github.com/turbobabr.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"![Hero](docs/github-hero-logo.png?raw=true \"Logo\")\n===========\n\n`EasyEDA Quick Align` is a productivity extension for [EasyEDA](https://easyeda.com/) and [LCEDA: Standard Edition](https://lceda.cn/standard). The extension introduces an optimized workflow for footprints, symbols, shapes and prefixes alignment via help of a specially crafted contextual panel that provides the better user experience comparing to the standard toolbar actions and keyboard shortcuts.\n\n## Installation\n\n1. Download [easyeda-quick-align-v1.0.20.zip](https://github.com/turbobabr/easyeda-quick-align-extension/releases/download/v1.0.20/easyeda-quick-align-v1.0.20.zip)\n2. Un-zip the downloaded archive on your hard drive.\n3. Go to `Extension Settings` dialog by using main menu `Advanced -\u003e Extensions -\u003e Extensions Settings...`.\n4. Click `Load Extension...` button and add all the files in from the extracted folder using `Select Files...` button. \n5. Click `Load Extension` and close the `Extension Settings` dialog.\n\n![Installation](docs/easyeda-quick-align-installation.gif?raw=true)\n\n\u003e Caution: This extension is considered to be in `alpha/beta` stage. So far it was tested on `macOS` and `Chrome` browser only, thus it can contain potential issues on other platforms.\n\n## Usage\n\nRight after the installation, be sure to refresh the page of the editor in order to get the extension a change to properly initialize itself. \n\n### Using alignment inline panel\n\n1. Select two or more components or other objects in 'PCB' editor.\n2. Hit a single `A` shortcut and click on the desired button in the shown up panel to align the objects.\n\n![Intro](docs/easyeda-quick-align-intro-demo.gif?raw=true)\n\nThe panel always shows up centered at the current cursor position in the active editor's area. All the buttons in the panel are located intuitively taking in account the directions and functionality, thus it is very easy to remember what and where to click in the future.\n\n\u003e Hint: In order to dismiss the panel without doing any alignment actions, just click outside of the panel or hit `Esc` key.\n\nThe extension also supports alignment of objects using the same `A` shortcut in `Schematic` based editors:\n\n![Schematic Support](docs/easyeda-quick-align-schematics.gif?raw=true)\n\n### Performing multiple actions at once\n\nIt is possible to perform several alignment actions by opening the panel only once. \n\nFor example, in case you need to align a bunch of comoponents by the left edge and distribute them vertically:\n1. Hit `A` shortcut \n2. Press and hold `shift` modifer key\n3. Click on `Align items to left` button by holding the `shift`\n4. Release the `shift` key and click on `Distribute Vertically` button.\n\n![Multipe Actions](docs/easyeda-quick-align-multiple-actions.gif?raw=true)\n\n\u003e Note: You can perform as many alignment actions as you wish as long as the `shift` key is kept pressed.\n\n### Prefixes positioning\n\nThe `Quick Align` extension has a special mode for setting position for prefixes of selected components located on a `PCB` board:\n\n1. Select one or several components and hit `SHIFT + A` shortcut\n2. Click on a desired location to set the postion for prefixes\n\n![Prefixes Demo](docs/easyeda-quick-align-prefixes.gif?raw=true)\n\n\u003e Note: This mode is not available for `schematic`, `simulation` and `symbol` editors. Only `PCB` based editors are supported.\n\n### A note on shortcut conflicts\n\nUnfortunatelly `EasyEDA` doesn't provide any capabilities to use custom shortcuts for extensions, thus in order to get access to the precious shortcuts, this extension uses a `hackish` approach by overriding and sometimes blocking the default shortcuts provided by the editor.\n\nBoth single key `A` and the combo `SHIFT + A` shortcuts are hardcoded and cannot be customized at the moment. Sadly, the single key `A` shortcut is by default occupied with `Zoom In` action and `Quick Align` extension overrides it.\n\nTo fix the issue:\n1. Re-assign `Zoom In` action to another shortcut using built-in `Settings -\u003e Shortcut Key Settings...` settings menu command.\n2. In case you still want to use the default behaviour and want to assign `Quick Align` to something else -\u003e [open an issue](https://github.com/turbobabr/easyeda-quick-align-extension/issues) and I'll try to figure out something in order to make those hardcoded shortcuts customizable.\n\n\u003e Note: I personally use `Cmd +/-` shortcuts instead of `A / Z` for `Zoom In` and `Zoom Out` actions. Also, the good old `mouse wheel` thing is perfect for the job! :)\n\n## Version history\n\n** EasyEDA: Quick Align v1.0.20: 3/9/2021**\n* First version\n\n## Feedback\n\nIf you discover  any issue or have any suggestions for improvement of the plugin, please [open an issue](https://github.com/turbobabr/easyeda-quick-align-extension/issues) or find me on twitter [@turbobabr](http://twitter.com/turbobabr).\n\n## License\n\nThe MIT License (MIT)\n\nCopyright (c) 2021 Andrey Shakhmin\n\nPermission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fturbobabr%2Feasyeda-quick-align-extension","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fturbobabr%2Feasyeda-quick-align-extension","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fturbobabr%2Feasyeda-quick-align-extension/lists"}