You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: CHANGELOG.md
+20-18Lines changed: 20 additions & 18 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -9,6 +9,8 @@ The format is based on [Keep a Changelog](https://keepachangelog.com), and
9
9
10
10
### Changed
11
11
12
+
- The repository and CLI command have been renamed to `optimize`.
13
+
- The `optimize` command now works with `pnpm`.
12
14
- Apple touch icons are no longer generated.
13
15
- Webp touch icons are no longer generated.
14
16
- The processing of a specific image will now be skipped if the originDensity specified does not equal the maxDensity value available for that image in the metadata file.
@@ -102,15 +104,15 @@ The format is based on [Keep a Changelog](https://keepachangelog.com), and
102
104
103
105
### Fixed
104
106
105
-
- The `conjure favicons` command now works fine on Windows.
107
+
- The `optimize favicons` command now works fine on Windows.
106
108
- The `webmanifest` is now generated with a final newline.
107
109
108
110
## [1.0.0] — 2024–04–19
109
111
110
112
### Changed
111
113
112
-
- Now the `conjure favicons` command does not generate the entire set of files for each SVG found, including those nested in subdirectories. Instead, this command only works with files in the specified directory and expects at least one of `touch.svg`, `32.svg` and `16.svg` (preferably only the first two, and the third only if there is such a version in the design). See [README.md](./README.md) for details on preparing and working with these files.
113
-
- Now the `-r` (`--removeOrigin`) option also applies to the `conjure favicons` command.
114
+
- Now the `optimize favicons` command does not generate the entire set of files for each SVG found, including those nested in subdirectories. Instead, this command only works with files in the specified directory and expects at least one of `touch.svg`, `32.svg` and `16.svg` (preferably only the first two, and the third only if there is such a version in the design). See [README.md](./README.md) for details on preparing and working with these files.
115
+
- Now the `-r` (`--removeOrigin`) option also applies to the `optimize favicons` command.
114
116
115
117
### Added
116
118
@@ -134,18 +136,18 @@ The format is based on [Keep a Changelog](https://keepachangelog.com), and
<img src="https://raw.githubusercontent.com/firefoxic/conjure/main/example/light.webp" alt="Example showing the source files, and the files after running the 'conjure all -r -m' command.">
<img src="https://raw.githubusercontent.com/firefoxic/optimize/main/example/light.webp" alt="Example showing the source files, and the files after running the 'optimize all -r -m' command.">
13
13
</picture>
14
14
15
15
## Purpose
16
16
17
17
In most frontend projects, you have to perform the same and rather boring actions with images between exporting them from Figma and deploying the project to the server. Spare yourself from this routine!
18
18
19
-
Conjure is a command line utility for optimizing vector images, converting raster images to modern formats for different pixel densities and also preparing favicons.
19
+
Optimize is a command line utility for optimizing vector images, converting raster images to modern formats for different pixel densities and also preparing favicons.
20
20
21
21
## Installation
22
22
23
-
To install Conjure, you need to have Node.js installed on your machine. Then you can install in your project using _pnpm_ (for _npm_, just remove the first `p`):
23
+
To install Optimize, you need to have Node.js installed on your machine. Then you can install in your project using _pnpm_ (for _npm_, just remove the first `p`):
@@ -114,7 +114,7 @@ Conjure is invoked via the command line:
114
114
- In the `source/images` folder, optimize all SVGs and convert the raster images to `avif` and `webp` formats at the original size for `2x` pixel density and at a reduced size for `1x` pixel density; and after processing the raster images, delete their original files and generate JSON and JS files with metadata:
> #### Tip for exporting raster layers from layouts
@@ -124,13 +124,13 @@ Conjure is invoked via the command line:
124
124
- Take all vector and raster images from the `raws/images` folder; optimize vector images and put them in `source/images`; convert raster images to `webp` format and to the original format, optimizing them for `2x` and `1x` pixel densities, placing these results also in `source/images`; when processing is completed, delete the original raster images from `raws/images`:
125
125
126
126
```shell
127
-
conjure images -i raws/images -o source/images -f webp -a -r
127
+
optimize images -i raws/images -o source/images -f webp -a -r
128
128
```
129
129
130
130
- Optimize SVG icons in the default `src/shared/icons` folder and create the CSS file that contain custom properties with paths to the icons:
131
131
132
132
```shell
133
-
conjure icons -m
133
+
optimize icons -m
134
134
```
135
135
136
136
- In the `assets` folder, convert files `touch.svg`, `32.svg` (and optionaly `16.svg`) to:
@@ -142,7 +142,7 @@ Conjure is invoked via the command line:
142
142
- `Links.md` — advice on code of links for generated files, moving files, and fixing paths to files.
143
143
144
144
```shell
145
-
conjure favicons -p assets
145
+
optimize favicons -p assets
146
146
```
147
147
148
148
> #### Recommendations for the source favicon files
@@ -151,26 +151,26 @@ Conjure is invoked via the command line:
151
151
> - `32.svg` — the drawing is adjusted to a `32×32` pixel grid, may transparent areas such as rounded corners of the background;
152
152
> - `touch.svg` — the drawing is prepared for large touch icons with solid background without rounding, with margins much larger than `32.svg`.
153
153
> - If you don't have a variant specially prepared by the designer for the pixel grid size `16×16`, then don't create a file `16.svg` from variants of other sizes — it will only increase the weight of the final `favicon.ico`.
154
-
> - If you don't have a `32×32` variant, but you have a `16×16` variant, there is no need to make a `32.svg` file, `conjure` will make all the variants for you.
155
-
> - If you have only one variant and it's not `16×16`, it doesn't matter what you name the file, `32.svg` or `touch.svg` (as long as it's not `16.svg`) — a file with either of these two names will be used by `conjure` to generate the entire set of favicons.
154
+
> - If you don't have a `32×32` variant, but you have a `16×16` variant, there is no need to make a `32.svg` file, `optimize` will make all the variants for you.
155
+
> - If you have only one variant and it's not `16×16`, it doesn't matter what you name the file, `32.svg` or `touch.svg` (as long as it's not `16.svg`) — a file with either of these two names will be used by `optimize` to generate the entire set of favicons.
156
156
157
157
- Run all three special commands with default settings, but deleting the original raster images, i.e.:
158
-
- run `conjure images` in the `src/shared/images` folder with deleting the original raster images and generating JSON and JS files with metadata,
159
-
- run `conjure icons` in the `src/shared/icons` folder,
160
-
- run `conjure favicons` in the `public` folder,
158
+
- run `optimize images` in the `src/shared/images` folder with deleting the original raster images and generating JSON and JS files with metadata,
159
+
- run `optimize icons` in the `src/shared/icons` folder,
0 commit comments