Skip to main content

Sass/SCSS compile host using Dart Sass

Project description

Embedded Sass Host for Python.

Overview

This is Python project to compile Sass/SCSS using Dart Sass <https://sass-lang.com/dart-sass/> that is primary implementation of Sass using Dart runtime.

Simple usage

Install:

pip install sass-embedded

Source:

@use "sass:list";
@use "sass:color";

$font-stack: Helvetica, Arial;
$primary-color: #333;

body {
  $font-stack: list.append($font-stack, sans-serif);
  font: $font-stack;
}

a {
  color: $primary-color;

  &:hover{
    color: color.scale($primary-color, $lightness: 20%);
  }
}

@debug $font-stack;

Run:

from pathlib import Path
from sass_embedded import compile_file

compile_file(Path("style.scss"))

Output:

body {
  font: Helvetica, Arial, sans-serif;
}

a {
  color: #333;
}
a:hover {
  color: rgb(91.8, 91.8, 91.8);
}

Motivation

I develop sphinx-revealjs that is Python Project to generate HTML presentation from reStructuredText or Markdown.

Reveal.js uses Sass to create presentation themes, and this uses sass:color module since v5.2.0. But sphinxcontrib-sass does not compile themes, because this module is not supported by LibSass.

To resolve it, I am developing optional extension optimized sphinx-revealjs. Concurrently I will develop generic project for multiple usecases.

This is the side of “generic project”.

Project goal

Final goal is to have features as same as other “Sass Embedded” libraries.

But I will split some steps for it.

First goal

Works as compile Sass/SCSS with subprocess-based actions.

  • Provide single entrypoint to compile sources using Dart Sass native executable.

  • Generate Dart Sass bundled bdist files every platforms.

Second goal

Works as “Sass Embedded Host for Python”.

Third goal

Works as alternative to libsass-python.

  • Support all api of libsass-python using Dart Sass native executable.

Support

This project supports only Python 3.9+.

License

I plan for Apache License 2.0.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

sass_embedded-0.1.3.tar.gz (90.9 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

sass_embedded-0.1.3-py3-none-win_arm64.whl (4.2 MB view details)

Uploaded Python 3Windows ARM64

sass_embedded-0.1.3-py3-none-win_amd64.whl (4.3 MB view details)

Uploaded Python 3Windows x86-64

sass_embedded-0.1.3-py3-none-manylinux_2_17_x86_64.whl (4.4 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ x86-64

sass_embedded-0.1.3-py3-none-manylinux_2_17_aarch64.whl (4.2 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ ARM64

sass_embedded-0.1.3-py3-none-any.whl (18.9 kB view details)

Uploaded Python 3

File details

Details for the file sass_embedded-0.1.3.tar.gz.

File metadata

  • Download URL: sass_embedded-0.1.3.tar.gz
  • Upload date:
  • Size: 90.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for sass_embedded-0.1.3.tar.gz
Algorithm Hash digest
SHA256 831fe6d272b7f46f48c8ef7d848c53394e6c2a78a82833bb69cdb22743274e85
MD5 e17764b9ab93de9fe9826a775d70f933
BLAKE2b-256 031af0766fd602a71910acfa02a86c3dfa43c4601d3120471588dafe52de3dc2

See more details on using hashes here.

Provenance

The following attestation bundles were made for sass_embedded-0.1.3.tar.gz:

Publisher: release.yaml on attakei/sass-embedded-python

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file sass_embedded-0.1.3-py3-none-win_arm64.whl.

File metadata

File hashes

Hashes for sass_embedded-0.1.3-py3-none-win_arm64.whl
Algorithm Hash digest
SHA256 22a4014aeab439700924364891be8a3e35a22c9760499939df2700f2fdfb33dc
MD5 09a2b13217b73c087ff972f7dd01bc7d
BLAKE2b-256 be333937226d6e2de0a86e95cfbac1290e340ffb96d829e6e9207d0a1728019a

See more details on using hashes here.

Provenance

The following attestation bundles were made for sass_embedded-0.1.3-py3-none-win_arm64.whl:

Publisher: release.yaml on attakei/sass-embedded-python

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file sass_embedded-0.1.3-py3-none-win_amd64.whl.

File metadata

File hashes

Hashes for sass_embedded-0.1.3-py3-none-win_amd64.whl
Algorithm Hash digest
SHA256 74ff199ab55788b0ab2129ef59ff2e4d76e22a3edcf6c7770173317b0861e9e0
MD5 8083db8cc15b6494692f76e5bab187c9
BLAKE2b-256 991569508443517389ec684a3de38346b89746edf3f93e75040534fd042348df

See more details on using hashes here.

Provenance

The following attestation bundles were made for sass_embedded-0.1.3-py3-none-win_amd64.whl:

Publisher: release.yaml on attakei/sass-embedded-python

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file sass_embedded-0.1.3-py3-none-manylinux_2_17_x86_64.whl.

File metadata

File hashes

Hashes for sass_embedded-0.1.3-py3-none-manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 e298426c2da0c7432e3eeb11675622752251be1bad6e8e54b74ccdf30ba189b7
MD5 c426023fc77058677c4efb9fe6ab4394
BLAKE2b-256 e191b8e4b09cf15db334075ff0793983f2c51f0e837cdfc5d35ab2fa88b53330

See more details on using hashes here.

Provenance

The following attestation bundles were made for sass_embedded-0.1.3-py3-none-manylinux_2_17_x86_64.whl:

Publisher: release.yaml on attakei/sass-embedded-python

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file sass_embedded-0.1.3-py3-none-manylinux_2_17_aarch64.whl.

File metadata

File hashes

Hashes for sass_embedded-0.1.3-py3-none-manylinux_2_17_aarch64.whl
Algorithm Hash digest
SHA256 8a9de6184028b933ff1cbdd1d4b1be67e9b73333a21b00c855d2705c4b9b71df
MD5 58745fcd0864ce8d24f4499180be9cee
BLAKE2b-256 5f0a448c285f311118741a43c26914818cab019dc3a4c3845038ee7d8d24815c

See more details on using hashes here.

Provenance

The following attestation bundles were made for sass_embedded-0.1.3-py3-none-manylinux_2_17_aarch64.whl:

Publisher: release.yaml on attakei/sass-embedded-python

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file sass_embedded-0.1.3-py3-none-any.whl.

File metadata

  • Download URL: sass_embedded-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 18.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for sass_embedded-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 5d4129471e23cc3b011ba2b4b4cd7f07dcecce4e60edf151c264b259942adfbf
MD5 c22dcefb821c8261f0629e4c488ba5e9
BLAKE2b-256 9997e05780fc7b856e50ad1a1855cc2afb38f8ef11083c1df945279a8c61cc34

See more details on using hashes here.

Provenance

The following attestation bundles were made for sass_embedded-0.1.3-py3-none-any.whl:

Publisher: release.yaml on attakei/sass-embedded-python

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page