Skip to content

Releases: scoville/tailwind-generator

Beta 8 - update libs and general fixes

24 Apr 00:30
5ac3ef8
Compare
Choose a tag to compare

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

18 Oct 06:34
25c906e
Compare
Choose a tag to compare

From this release, pyaco will support @rules with no blocks, such as @import "filepath".

Beta 6 - NPM support

08 Sep 01:35
fe1c686
Compare
Choose a tag to compare
Beta 6 - NPM support Pre-release
Pre-release

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

03 Sep 01:43
d029546
Compare
Choose a tag to compare
Beta 5 Pre-release
Pre-release

This small release simply merges into one binary the 2 main command:

  • pyaco-validate is now pyaco validate
  • pyaco-generate is now pyaco generate
    No other changes are to be expected.

Experimental node "native" binary has been added too.

Introduces Pyaco! And the experimental `validate` command

10 Aug 07:59
Compare
Choose a tag to compare

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

25 Jul 03:35
Compare
Choose a tag to compare
New release Pre-release
Pre-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

20 Jul 09:42
Compare
Choose a tag to compare
Pre-release

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)

02 Jul 10:08
Compare
Choose a tag to compare
Pre-release

Experimental release of the new binary written in Rust, works only on macos for now.

New version

24 Jul 10:41
6b9fdd9
Compare
Choose a tag to compare
New version Pre-release
Pre-release

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 or npm, 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 call tailwind [...] && 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 the style-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)

03 Jul 06:47
6b9fdd9
Compare
Choose a tag to compare
Pre-release

Experimental release of the new binary written in Rust, works only on macos for now.