Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

sass-embedded #45

Closed
sveetch opened this issue Feb 27, 2023 · 1 comment
Closed

sass-embedded #45

sveetch opened this issue Feb 27, 2023 · 1 comment

Comments

@sveetch
Copy link
Owner

sveetch commented Feb 27, 2023

Is your feature request related to a problem? Please describe.
Boussole stands on libsass (through libsass-python) that has been deprecated since years now in profit of dart-sass.

Sadly now Boussole is becoming to be obsolete, since more and more CSS framework tends to stand on dart-sass.

However, dart-sass pure js implementation is known to be dramatically slower than libsass or even node-sass.

Then the Sass team has developped sass-embedded which is something alike libsass in the terms that it allows other language to embed dart-sass in a package without relying directly on dart or node.

Describe the solution you'd like
Boussole could add a new compiler backend to use the sass-embedded with sass-embedded host in Python.

In resume, sass-embedded is somewhat an API (that is wrapper around dart-sass) that can be used through a host.

It seems sass-embedded system is almost efficient, still it would need some test on massive Sass project (with multiple main scss files to compile using some libraries) to check performance. If it leads to something around dart-sass pure js speed, this would be a no way. But if it leads to something like node-sass speed, it would be clearly something to adopt.

Then Libsass backend could live sometime as an alternative, depending its maintenance and elapsed time.

Problems

There is no sass-embedded Python host yet and i don't understand everything yet in embedded protocol to see where to start. Also i only know about two host implementation, the Node one and a Ruby one. It needs some R&D time.

Describe alternatives you've considered
If Boussole stills tied to libsass, it will just stop to be maintained in some years or before, since most frameworks won't compile with it.

@sveetch
Copy link
Owner Author

sveetch commented Sep 10, 2023

I've started a laboratory attempt for R&D about implementing this: https://github.com/sveetch/flechette-insolente

@sveetch sveetch closed this as completed May 3, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant