Releases: scoville/tailwind-generator
Beta 8 - update libs and general fixes
This new release includes the following fixes:
- Fix type errors in the node implementation
- Update css parser to fix errors with parsing css blocks such as
@-moz-document
; - Updated readme file with commands to compile and run the crate in dev mode
- Support Mac aarch64 architecture
- Update packages as much as necessary to allow cross compilation
Beta 7 - @import syntax support
From this release, pyaco will support @rules
with no blocks, such as @import
"filepath".
Beta 6 - NPM support
From this release Pyaco can be imported as a Node module 🎊
EXPERIMENTAL This release also adds a small CLI in Node for unknown / unsupported platforms.
Beta 5
This small release simply merges into one binary the 2 main command:
pyaco-validate
is nowpyaco validate
pyaco-generate
is nowpyaco generate
No other changes are to be expected.
Experimental node "native" binary has been added too.
Introduces Pyaco! And the experimental `validate` command
This release finally comes with a shorter name: pyaco
for Polyglott tYpe sAfe Css tOolbox!
Plus, this release contains a new pyaco-validate
binary that can make sure that all the css class names used in your project are valid in less than one second even on medium~large projects.
New release
This release finally addresses all the previous issues regarding the class names parser. Now all classes are included (global and inside @media rule blocks)!
Changed
- Now all the classes are properly found, the performances on very large css files are not optimal yet. For instance the latest Tailwind css which contains around 39.000 class names takes around 1 second to be parsed and to get the code generated on my machine.
- Speed up parsing + code generation.
Added
- Watch mode using the
-w
flag! There seems to be some bugs on Mac os (like the code sometimes get generated twice), so it's experimental.
Experimental - new version
Experimental release of the new binary written in Rust, should work on Windows, Linux, and MacOS
- Supports Windows and Linux
- The
-i|--input
flag now accepts a URL (and still support paths) - [Rust] Includes a new
css!
macro
Experimental - new version (macos)
Experimental release of the new binary written in Rust, works only on macos for now.
New version
Getting close to the release. The cli is now feature complete and the code moslty optimized (could still improve the binary size though).
There are many breaking changes with the previous version (mostly due to the renaming tailwind-generator -> style-generator), for both the cli itself and the generated code. Here is a simple, non exhaustive list:
Removed
- ReasonML is not supported anymore, but 2 new generators for ReScript are now available!
Changed
- Exit PureScript, welcome Rust. As much as I love PureScript, Rust is pretty hard to beat when it comes to speed: the current version takes up to 4 seconds to generate an Elm file vs 0.8 second for Rust (and 0.1 second when using the binary itself, without
yarn
ornpm
, that is, yes, 40x faster). - The CLI doesn't read a provided tailwind config file anymore, and doesn't call tailwind for you, this allows for a more generic tool that can support any css file. In short instead of
tailwind-generator [...]
you need to calltailwind [...] && style-generator [...]
. - As a consequence the
-c
option has been dropped - The input/output options
--cssOutput|--cssInput|--output
have been revamped,-i|--input
is the source, a path to a css file or an URL,-o|--output-directory
is the output directory, and-f|--output-filename
is the filename (without extension). The new api should be less error prone and more flexible. - Generated code: some functions have been renamed, but their behavior is the same.
Fixed
- The new version supports more class names, and is less error prone. During some of my tests, I noticed that the tailwind css file we used as a reference had ~5500 classes but only ~5000 were found by the old parser! This is now hopefully fixed thanks to this awesome css parser library.
- More control over the parser that's now 100% home made, additionally to the fix mentioned above, it also means we'll be able to easily fix bugs in the future we simply couldn't fix before.
Added
- ReScript and ReScript type level, 2 new generators
- The
css!
macro (accessible through thestyle-generator-macro
crate), that allows for some very safe code in Rust. For instance the following code (using the Yew framework):
html! {
<div class={css!("rounded px-2 py-1")}>{ "Hello" }</div>
}
Would verify at compile time that the classes rounded
, px-2
, and py-1
exist in the provided css file.
Experimental - new version (macos - 2)
Experimental release of the new binary written in Rust, works only on macos for now.