{"id":13434345,"url":"https://github.com/contentsync/SketchContentSync","last_synced_at":"2025-03-17T14:31:13.729Z","repository":{"id":43298726,"uuid":"58764683","full_name":"contentsync/SketchContentSync","owner":"contentsync","description":"Sync sketch files with google docs.","archived":false,"fork":false,"pushed_at":"2023-03-30T17:17:10.000Z","size":177936,"stargazers_count":275,"open_issues_count":5,"forks_count":17,"subscribers_count":13,"default_branch":"main","last_synced_at":"2024-10-27T14:44:56.609Z","etag":null,"topics":["contentsync","google-spreadsheet","sketch","sketch-plugin","sketchapp","translation"],"latest_commit_sha":null,"homepage":"","language":"Objective-C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/contentsync.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2016-05-13T18:48:15.000Z","updated_at":"2024-09-24T20:53:10.000Z","dependencies_parsed_at":"2023-01-30T02:00:33.246Z","dependency_job_id":null,"html_url":"https://github.com/contentsync/SketchContentSync","commit_stats":null,"previous_names":[],"tags_count":65,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/contentsync%2FSketchContentSync","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/contentsync%2FSketchContentSync/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/contentsync%2FSketchContentSync/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/contentsync%2FSketchContentSync/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/contentsync","download_url":"https://codeload.github.com/contentsync/SketchContentSync/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244050160,"owners_count":20389646,"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":["contentsync","google-spreadsheet","sketch","sketch-plugin","sketchapp","translation"],"created_at":"2024-07-31T02:01:53.893Z","updated_at":"2025-03-17T14:31:13.723Z","avatar_url":"https://github.com/contentsync.png","language":"Objective-C","funding_links":[],"categories":["Objective-C"],"sub_categories":[],"readme":"**Content collaboration for Sketch. Sync copy between Sketch designs and Google Spreadsheets and Microsoft 365 Exel.**\n\n# SketchContentSync 8.6.4\n\nSync content to Google Spreadsheets and Microsoft 365 Excel directly from within Sketch.\n\nVisit [www.contentsync.com](http://www.contentsync.com) for more details.\n\n### Version Your Sketch Designs\n\n![Versioning Sketch Design](./docs/ContentSync-6-Demo.gif)\n\n### Manage Content within Google Spreadsheets\n\n![Editing Google Spredsheet](./docs/ContentSync-6-Demo-Spreadsheet.gif)\n\n### Build Directly into Sketch\n\n![ContentSync Interface](./docs/sketch-interface-highlighted.png)\n\n### ContentSync Platform\n\nWe require an account to allow ContentSync to integrate with your Google Documents and more. **We only require access to documents we create so all your other documents remain secure and private.**\n\nRegister for free at [www.contentsync.com](http://www.contentsync.com/) and get started easily.\n\n## SketchContentSync Plugin\n\n#### Install with DMG\n\n- [Download plugin here](https://contentsync-plugins.s3.amazonaws.com/sketch/ContentSync_Sketch_latest_stable.dmg)\n- Open DMG file\n- Double click on the SketchContentSync.sketchplugin file.\n  ![ContentSync DMG](./docs/dmginstall.png)\n\n#### Install with Sketch Runner\n\nWith Sketch Runner, just go to the `install` command and search for `SketchContentSync`. Runner allows you to manage plugins and do much more to speed up your workflow in Sketch. [Download Runner here](http://www.sketchrunner.com).\n\n![Sketch Runner screenshot](./docs/sketchrunner.png)\n\n#### ContentSync Scripting Support\n\nYou can also use ContentSync within you Sketch scripts as of 8.3.0. The ContentSync API is accessed using `ContentSync.API()`.\n\nFor example:\n\n```javascript\n// This example will print all Content Versions of the currently selected ContentSync project.\nContentSync.API().versions((ok, data) =\u003e {\n  if (ok) data.map((v) =\u003e console.log(v));\n  if (!ok) console.log(\"Error: \", data);\n});\n```\n\nThe shape of each version is:\n\n```json\n{\n  \"name\": \"Version 1\",\n  \"syncable\": true\n}\n```\n\n![ContentSync Sketch Scripting](./docs/cs_scripting.png)\n\n## Support / Bugs / Feature Requests\n\nCreate a github issue or contact [support@contentsync.com](mailto:support@contentsync.com).\n\n### Changelog\n\n#### 8.6.4\n\n- 🐞 Bug Fix: Issue #140 - Exception thrown in Sketch 96 beta\n\n#### 8.6.3\n\n- Fixes issue with text overrides conflicting with other override types in Sketch 94.1\n\n#### 8.6.2\n\n- Fixes bug with deleting Sketch pages in Sketch 90+\n\n#### 8.6.1\n\n- Fixes bug with partial syncing in Sketch 84\n\n#### 8.6.0\n\n- Universal support for Mac M1 chips\n\n#### 8.5.0\n\n- Fixes imports of library symbol not already used in document\n- Fixes issue where sometimes push doesnt include all data\n- Fixes issue when trying to load a library that is missing\n- Fixes bug causing hanging when searching for a symbol name that doesnt exist\n- Fixes searching libraries to ignore disabled libraries\n- Improves push pipeline to handler larger syncs, work in the background, and show progress\n- Fixes parsing symbols instances with remote symbol masters (even is library isnt found)\n- Improves pull pipeline to handle larger syncs, work in background, and show progress\n\n#### 8.3.1\n\n- Fixes some cases where crashes occur during push/pull\n\n#### 8.3.0\n\n- Add [ContentSync scripting API](#ContentSync-Scripting-Support).\n\n#### 8.2.0\n\n- Upgrade to universal binary for Apple Silicon Support\n\n#### 8.1.1\n\n- Fixes bug when using vector editing\n\n#### 8.1.0\n\n- Support Sketch 72\n\n#### 8.0.0\n\n- Support Sketch 71\n\n#### 7.0.1\n\n- Fixes UI / crashing issue on some older MacOS versions\n\n#### 7.0.0\n\n- Support Sketch 70\n\n#### 6.5.5\n\n- UI Improvements - Better responsiveness and improves performance when CS Layer Inspector is closed\n- UI Bug Fix - Symbol Type key properly uses context name\n- Symbol Swapping Improvements - Improves order changes are applied to ensure overrides are applied on new symbols\n- Removes text layer auto height in favor of using Sketch Smart Layout feature\n\n#### 6.5.4\n\n- New Feature: Using \"No Symbol\" on a symbol override will set the override to no symbol - helpful for smart layouts. Works on push and pull.\n- Bug Fix: Symbol overrides now update after symbol type override is changed too\n\n#### 6.5.2\n\n- Bug Fix: Fixes Sketch UI layer selection would sometimes hang\n- New Feature: Allows for default key prefix / suffix\n\n#### 6.5.1\n\n- Bug Fix: Refreshes sidebar after push to make sure panels are up to date\n- Improvement: Only caches content key settings on overrides when content key on override is explicitly set.\n\n#### 6.5.0\n\n- Improvement: Supports **[Smart Layout](https://www.sketch.com/docs/symbols/smart-layout/)** when syncing symbol overrides.\n- Improvement: New DMG package install **supports OSX Catalina** security protocols.\n- Improvement: Moves API from contentsync.io to contentsync.com\n- Improvement: **Default Key Prefix** - New project setting to prepend keys with Page Name, Artboard Name or both.\n- Improvement: **Default Key Suffix** - New project setting to append object id for uniqueness across layers.\n\n#### 6.4.0\n\n- New Feature: Supports Microsoft 365 Excel syncing\n- Improvement: Syncing artboards uploads one at a time for better messaging\n- Improvement: Improved error reporting on failed syncs\n- Improvement: Keys used for images wont override spreadsheet key values on push\n- Bug Fix: Fixes crashing in Sketch 55.1\n- Bug Fix: Shows ContentSync icon on image layer icons\n\n#### 6.3.1\n\n- Bug Fix: Fixes issue when pulling in Sketch 55.\n\n#### 6.3.0\n\n- Adds basic support for syncing image overrides and bitmap layers\n- Adds additional settings for better default controls\n- Fixes some bugs which would cause crashing\n\n#### 6.2.0\n\n- Adds additional project settings for default settings and formats\n- Change symbol type overrides to always be value of referenced symbols. Not blank for default value.\n\n#### 6.1.1\n\n- Fixes issue when pushing full design on large files\n\n#### 6.1.0\n\n- Updates UI to improve usability\n- Fixes bug when pulling updates on nested symbols of the same type\n- Fixes bug when updating settings when multiple layers are selected\n- Allows for selecting default sheet\n\n#### 6\n\n- Supports Sketch 53\n- New ContentSync UI - Inspector panels and better layer list integration\n- Easier to customize - Inspector panel give you full control\n- Supports symbol swapping - set symbol type key and change symbol types dynamically\n- Supports content fitting - automatically resize symbols to fit content override values\n- Much more! Check out our [full docs](https://www.contentsync.com/docs)\n\n#### 5.1\n\n- Updates UI to match Sketch 52\n- Adds keyboard shortcut for disabling \u0026 enabling ContentSync on layers\n\n#### 5\n\n- Supports Sketch 52\n\n#### 4.2.13\n\n- Fix override parsing bug that would result in [NSInvalidArgumentException: NSDictionaryM isNull] errors.\n\n#### 4.2.12\n\n- Fixes toggling ContentSync toolbar\n- Removes 'Add Context' setting - use mapping functions instead\n\n#### 4.2.11\n\n- Updates build for better formatting and automatic version recogition\n- Fix layer/symbol position and sizing for Desktop (and soon to come new platform)\n- Fix isNull bug when syncing with styles enabled\n- Fix to ensure project settings are updated before commands are run\n- Improved error reporting and displaying\n\n#### 4.2.5\n\n- Fixes issues when pushing library symbols\n- Fixes positioning and sizing of text layers on exported artboards for ContentSync Desktop\n- Fixes ignoring hidden layers for artboart exporting for ContentSync Desktop\n- Ignored artboards with no text layers for ContentSync Desktop\n\n#### 4.2.4\n\n- [#79](https://github.com/contentsync/SketchContentSync/issues/79) Fixes manifest version for updates\n\n#### 4.2.3\n\n- [#77](https://github.com/contentsync/SketchContentSync/issues/77) Fixes version dropdown updates when versions removed\n- [#76](https://github.com/contentsync/SketchContentSync/issues/76) Supports Sketch Midnight theming\n- Improves speed of push\n\n#### 4.2.2\n\n- Automatically pushes all keys for overrides - even blank ones\n- Fixes version dropdown / selection when creating a new version\n- [#74](https://github.com/contentsync/SketchContentSync/issues/74) Fixes handling of cases of MSImmutableTextLayer\n- Better error capturing/reporting for support help\n\n#### 4.2.1\n\n- Fixes positioning of embedded layers in groups for ContentSync Desktop\n- Fixes issues syncing when symbol instance has image override\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcontentsync%2FSketchContentSync","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcontentsync%2FSketchContentSync","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcontentsync%2FSketchContentSync/lists"}