Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/ment-mx/Prism
Creates a beautiful artboard color palette with all your 'Document Colors' and their respective color label in a variety of formats.
https://github.com/ment-mx/Prism
artboard design export palette prism sketch sketch-plugin
Last synced: 7 days ago
JSON representation
Creates a beautiful artboard color palette with all your 'Document Colors' and their respective color label in a variety of formats.
- Host: GitHub
- URL: https://github.com/ment-mx/Prism
- Owner: ment-mx
- License: mit
- Created: 2016-02-19T08:26:28.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2020-05-22T14:17:30.000Z (over 4 years ago)
- Last Synced: 2024-10-16T02:03:24.319Z (24 days ago)
- Topics: artboard, design, export, palette, prism, sketch, sketch-plugin
- Language: JavaScript
- Homepage:
- Size: 303 KB
- Stars: 1,009
- Watchers: 29
- Forks: 47
- Open Issues: 11
-
Metadata Files:
- Readme: README.md
- License: LICENSE.txt
Awesome Lists containing this project
- sketch-goodies - Prism - Creates a beautiful artboard color palette with all your 'Document Colors' and their respective color label in a variety of formats. (Uncategorized / Uncategorized)
README
| [Download][] | [Features][] | [Usage][] | [Customization][] | [Changelog][] | [Next][] | [Contribute][] | [Credits][] |
_(Formerly **ShareableColorPalette**)_
Creates a beautiful artboard with all the colors in your `Document Colors` with its respective color label in a variety of formats. _(Sketch **41**)_
**Important: Make sure to download version 1.0.3 or higher to use Sketch 45 plugin auto updates.** 😎
******
Features
* Beautiful color palette generation.
* Automatic color naming.
* Fully customizable.
* Export as code in a variety of formats (CSS, SASS variables, Swift, etc).
* Color renaming (Alias).
* Rebuilt from the ground up using `Coffeescript` and love.Usage
1. Install plugin.
2. Add your colors to your *Document Colors*.
3. Run command **[ctrl cmd c]**.
4. Voilà !
Changing a Color Alias
To change the color alias, just change the text on the *Name* layer. If you want the default color name, just delete the text on that same layer.
Exporting Colors as Code
1. Select the colors you want to export *(optional)*
2. Click `Export Selected Colors` **[ctrl cmd s]** or `Export All Colors` **[ctrl cmd e]**
3. Select the format to export.
4. Save your color code file or copy the colors to clipboard.
Customization
Under the Prism menu, there's an option called **Show Template File...** that opens the Template.sketch file located under the Prism.sketchplugin package, this file contains all the layers that are used as templates and are later copied over to your palette.Changing Palette Template
The template file is a normal sketch file that has multiple pages, each page with its own cell Template, you can add or remove all the pages you want to manage your own templates, to select the style you want just open the file and save it on the page your desired template is. Now just generate your palette to see the changes.
Editing Template
Prism offers a lot of freedom to let you customize your own templates, however, in order for your template to play nicely with Prism you just have a few restrictions:
* Your template page must have only one artboard layer that is exactly named `Prism Palette`, users can then change the name of the artboard once the palette is generated in their sketch files. Your cell doesn't have to be inside this artboard, but it would be good practice, as future releases may use this cell-inside-artboard to specify the spacing between cells.
* Your template **must** have a layer group named exactly `Cell`, everything that your cell includes must be inside this group, you can then go ahead and add as many groups as you like inside of it ;)
* Inside the `Cell` group there must be a layer named exactly `Color`, it must have at least one solid Fill and this fill must be on the bottom of all the other fills, this layer is the one that Prism uses to display the real color.
* Inside the `Cell` group there must be a **text** layer named exactly `Name` (lol), this is the layer that Prism uses to display the automatic name and can be edited to add or remove aliases.
* Prism uses the name of the text layers to format the color of the cell, for example: if there's a text layer named "RGBA_CSS", prism will try set the layer's text value to the specified format.You can have as many text layers for formats as you want. Also, layers can be locked or invisible as long as they conform to this restrictions.
If you wanna dive deeper on this process, you should check out the `Cell.coffee` and `Template.coffee` files.
Adding Format
1. Create a new formatter Coffeescript file inside `src/formats`
2. Create a subclass of `FormatterBase` for your new formatter class.
3. Overrides some methods defined in `FormatterBase.coffee`.
- `id` and `name` are required to override.
- If you plan to one text based format file like `HexFormatter`, then
- `formatText` and `format` required to override.
- If you plan to one binary format file like `CLRFormatter`, then
- You need to override `supportClipboard` to return` false`
- You need to override `exportAsFile`.
- If you plan to export several files like `ColorSetFormatter`, then
- You need to override `type` to return `EXPORT_TYPE_FILES`See `FormatterBase.coffee` for details.
Contribute
The best way to get things done is by doing them yourself, if you want to specify a format or a add a new feature or fix a bug, just submit a pull request!I have included a `compile.sh` file that automatically compiles all the files inside the `src/` folder into the `build/` folder, however, if you add new files you must import them in the right order inside the `Prism.cocoascript` file.
*You will need coffescript v1 for the plugin to work as v1 compiles to EC5 syntax accepted by cocoascript*
You can easily install it with npm by running this:
`npm install --global [email protected]`You can then run the `compile.sh` file by typing this in the terminal inside the `Prism.sketchplugin/Content/Sketch` folder:
```shell
./compile.sh
```What's next
* Gradients support
* Better template selectionCredits
- [Lalo](https://github.com/LaloMrtnz) & [Adrxx](https://github.com/Adrxx): **Creators**
- [griffin-stewie](https://github.com/griffin-stewie): New format structure
- Special thanks to [Gauth](http://gauth.fr/2011/09/get-a-color-name-from-any-rgb-combination/) for his color classifier and dataset.[Download]:https://github.com/ment-mx/Prism/releases
[Features]:https://github.com/LaloMrtnz/Prism#features
[Usage]:https://github.com/LaloMrtnz/Prism#usage
[Customization]:https://github.com/LaloMrtnz/Prism#customization
[Changelog]:https://github.com/LaloMrtnz/Prism/releases
[Next]:https://github.com/LaloMrtnz/Prism#whats-next
[Contribute]:https://github.com/LaloMrtnz/Prism#contribute
[Credits]:https://github.com/LaloMrtnz/Prism#credits