SASS based version of Magento 2 Blank theme

Overview

Travis branch Packagist Packagist

Magento 2 - Blank theme - SASS version

SASS based version of Magento 2 Blank theme, which aims to be as close to the core code as possible.

Installation

  1. Add this to your project dependecies list composer require snowdog/theme-blank-sass
  2. Set you application to developer mode
  3. Run bin/magento setup:upgrade to register theme
  4. Compile SASS files using Frontools or tools of choice

Compatibility

  • Magento 2.4: v1.5.0 or later
  • Magento 2.3: v1.2.0 or later
  • Magento 2.2: v1.0.0 or later
  • Magento 2.1: v0.11.0 or older
  • Magento 2.0: v0.6.0 or older

Bug reports and contribution rules

  • Before reporting an issue, check if you can reproduce it on the clean Magento instance with LESS version of the Blank theme. If that's true, submit issue to the Magento 2 repository, not here
  • If you know how to fix an issue, which is reproducible in Magento core, submit PR to the core product first, then here, with a link to PR in Magento 2 repository
  • If issue is related only to the SASS port, feel free to submit issue or PR

Questions

If you want to know more about this project, let's join Magento Community Engineering Slack and ask questions on #magefront channel.

Comments
  • Custom Theme Development

    Custom Theme Development

    I installed theme-blank-sass and front tools easily, and created a themes.json

    {
      "blank": {
        "src": "vendor/snowdog/theme-blank-sass",
        "dest": "pub/static/frontend/Snowdog/blank",
        "locale": ["en_US"]
      },
      "zymo": {
        "src": "vendor/gigasavvy/theme-frontend-zymo",
        "dest": "pub/static/frontend/Gigasavvy/zymo",
        "locale": ["en_US"],
        "stylesDir": "styles",
        "postcss": ["plugins.autoprefixer()"],
        "parent": "blank"
      }
    }
    
    

    I'm just super confused on how to override blank theme styles.

    • Is there a boiler plate file where I easily change colors, borders, etc that I'm missing?

    I know this isn't an issue, I'm just not sure where else to ask.

    opened by crantron 18
  • Theme fallback doesn't work

    Theme fallback doesn't work

    Hi I extend snowdog/blank in a theme and try to override _typography.scss (actually any file) but it still uses the the file in vendor/snowdog/blank theme .

    Can you please help?

    bug 
    opened by vphat28 17
  • Email styles are missing

    Email styles are missing

    For now we don't have email.css, email-linline.css and email-fonts.css http://devdocs.magento.com/guides/v2.1/frontend-dev-guide/templates/template-email.html#non-inline-styles

    bug 
    opened by Igloczek 14
  • [BUGFIX] Fix @extend an outer selector from within @media

    [BUGFIX] Fix @extend an outer selector from within @media

    Fixes #87

    This fixes two erros with Error: You may not @extend an outer selector from within @media..(https://github.com/SnowdogApps/magento2-theme-blank-sass/issues/87#issuecomment-372298221).

    opened by marvinhuebner 11
  • Error with @extend inside @media

    Error with @extend inside @media

    error vendor/magento-ui/_utilities.scss (Line 31: You may not @extend an outer selector from within @media.
    You may only @extend selectors within the same directive.
    From "@extend .abs-add-clearfix-desktop" on line 239 of ../../Magento_Sales/css/source/_module.scss.
    

    got this running sass --watch styles.scss:styles.css, is that b/c of the sass version I am using?

    bug 
    opened by weilunallen 10
  • Fotorama alignment issues

    Fotorama alignment issues

    I'm having trouble with the fotorama gallery and alignment. In our store images differ in proportions per category and Fotorama does not respect this. The alignment is off. This is not the case with the default luma theme. It seems like the problem is related to the div fotorama__stage which gets a height by the js.

    Is there any setting to make Fotorama adjust to the image?

    screen shot 2017-02-14 at 11 08 56
    opened by zamson 9
  • Magento 2.1 support

    Magento 2.1 support

    Hey, we will have to do extensive testing, but it would be good to support the latest version ofcourse.

    Diff:

    • [x] composer.json
    • [x] etc/view.xml
    • [x] i18n/en_US.csv
    • [x] Magento_AdvancedCheckout/web/css/source/_module.less
    • [x] Magento_AdvancedCheckout/web/css/source/_widgets.less
    • [x] Magento_Banner/web/css/source/_widgets.less
    • [x] Magento_Braintree
    • [x] Magento_BraintreeTwo
    • [x] Magento_Bundle/web/css/source/_module.less
    • [x] Magento_Catalog: layout
    • [x] Magento_Catalog/web/css/source/_module.less
    • [x] Magento_Catalog/web/css/source/_widgets.less
    • [x] Magento_Catalog/web/css/source/module/_listings.less
    • [x] Magento_Catalog/web/css/source/module/_toolbar.less
    • [x] Magento_CatalogEvent/web/css/source/_module.less
    • [x] Magento_CatalogEvent/web/css/source/_widgets.less
    • [x] Magento_CatalogSearch/web/css/source/_module.less
    • [x] Magento_Checkout: layout
    • [x] Magento_Checkout/web/css/source/module/_cart.less
    • [x] Magento_Checkout/web/css/source/module/_minicart.less
    • [x] Magento_Checkout/web/css/source/module/checkout/_authentication.less
    • [x] Magento_Checkout/web/css/source/module/checkout/_checkout.less
    • [x] Magento_Checkout/web/css/source/module/checkout/_estimated-total.less
    • [x] Magento_Checkout/web/css/source/module/checkout/_fields.less
    • [x] Magento_Checkout/web/css/source/module/checkout/_modals.less
    • [x] Magento_Checkout/web/css/source/module/checkout/_order-summary.less
    • [x] Magento_Checkout/web/css/source/module/checkout/_payment-options.less
    • [x] Magento_Checkout/web/css/source/module/checkout/_payments.less
    • [x] Magento_Checkout/web/css/source/module/checkout/_progress-bar.less
    • [x] Magento_Checkout/web/css/source/module/checkout/_shipping-policy.less
    • [x] Magento_Checkout/web/css/source/module/checkout/_shipping.less
    • [x] Magento_Checkout/web/css/source/module/checkout/_tooltip.less
    • [x] Magento_Cms/web/css/source/_widgets.less
    • [x] Magento_Customer: layout
    • [x] Magento_Customer/web/css/source/_module.less
    • [x] Magento_Downloadable/web/css/source/_module.less
    • [x] Magento_GiftCard/web/css/source/_module.less
    • [x] Magento_GiftCardAccount: layout
    • [x] Magento_GiftCardAccount/web/css/source/_module.less
    • [x] Magento_GiftMessage/web/css/source/_module.less
    • [x] Magento_GiftRegistry/web/css/source/_module.less
    • [x] Magento_GiftWrapping/web/css/source/_module.less
    • [x] Magento_GroupedProduct/web/css/source/_module.less
    • [x] Magento_Invitation/web/css/source/_module.less
    • [x] Magento_LayeredNavigation/web/css/source/_module.less
    • [x] Magento_Msrp/web/css/source/_module.less
    • [x] Magento_MultipleWishlist/web/css/source/_module.less
    • [x] Magento_MultipleWishlist/web/css/source/_widgets.less
    • [x] Magento_Multishipping: layout
    • [x] Magento_Multishipping/web/css/source/_module.less
    • [x] Magento_Newsletter/web/css/source/_module.less
    • [x] Magento_Paypal/web/css/source/module/_paypal-button.less
    • [x] Magento_Paypal/web/css/source/module/_review.less
    • [x] Magento_ProductVideo/web/css/source/_module.less
    • [x] Magento_Reports/web/css/source/_widgets.less
    • [x] Magento_Review/web/css/source/_module.less
    • [x] Magento_Reward/web/css/source/_module.less
    • [x] Magento_Rma/web/css/source/_email.less
    • [x] Magento_Rma/web/css/source/_module.less
    • [x] Magento_Sales/web/css/source/_email.less
    • [x] Magento_Sales/web/css/source/_module.less
    • [x] Magento_SendFriend/web/css/source/_module.less
    • [x] Magento_Theme/layout: default.xml
    • [x] Magento_Theme/layout/default_head_blocks.xml
    • [x] Magento_Theme/web/css/source: module
    • [x] Magento_Theme/web/css/source/_module.less
    • [x] Magento_Vault
    • [x] Magento_VersionsCms/web/css/source/_widgets.less
    • [x] Magento_Weee/web/css/source/_module.less
    • [x] Magento_Wishlist/web/css/source/_module.less
    • [x] web/css/email-fonts.less
    • [x] web/css/print.less
    • [x] web/css/source: _dropdowns.less
    • [x] web/css/source: _rating.less
    • [x] web/css/source/_actions-toolbar.less
    • [x] web/css/source/_buttons.less
    • [x] web/css/source/_components.less
    • [x] web/css/source/_email-base.less
    • [x] web/css/source/_email-extend.less
    • [x] web/css/source/_extends.less
    • [x] web/css/source/_forms.less
    • [x] web/css/source/_icons.less
    • [x] web/css/source/_layout.less
    • [x] web/css/source/_loaders.less
    • [x] web/css/source/_navigation.less
    • [x] web/css/source/_pages.less
    • [x] web/css/source/_popups.less
    • [x] web/css/source/_price.less
    • [x] web/css/source/_reset.less
    • [x] web/css/source/_sources.less
    • [x] web/css/source/_tables.less
    • [x] web/css/source/_tooltips.less
    • [x] web/css/source/_typography.less
    • [x] web/css/source/_variables.less
    • [x] web/css/source/components/_modals_extend.less
    • [x] web/js/responsive.js
    opened by timneutkens 9
  • lib-css() mixin not being used

    lib-css() mixin not being used

    This mixin is heavily used in the Blank theme for setting css properties within other mixins. It allows to omit properties where falsy variables were specified (i.e. empty strings).

    While making modifications to the Sass theme we've noticed that inherit is often used for certain variables which often causes an undesired effect of overwriting selector's rules by its parent. In majority of those cases they should be set to '' (empty string) which lib-css() mixin allows to do.

    By reviewing the commit history I noticed that the lib-css() was initially used in the previous builds but it was removed at some point (with a very intricate message, btw :)).

    @Igloczek, could you please shed some more light on why this mixin is being excluded? Thanks!

    opened by rocketweb-fed 9
  • Magento 2.4 compatibility

    Magento 2.4 compatibility

    This theme is not installable with Magento 2.4.0 due to the version restrictions in the composer.json file. It requires magento/framework ^101.0.0 or ^102.0.0 while Magento 2.4.0 has version 103.0.0 of the magento/framework package.

    opened by dverkade 8
  • Child theme workflow

    Child theme workflow

    I've installed this theme and Frontools and everything seems to work. (I'm in developer mode). Now i would like to use this theme as base for a new one, so i've created app/design/frontend/MyVendor/MyTheme/theme.xml:

    <theme xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:Config/etc/theme.xsd">
        <title>MyVendor MyTheme</title> <!-- your theme's name -->
        <parent>Snowdog/blank</parent> <!-- the parent theme, in case your theme inherits from an existing theme -->
        <media>
            <preview_image>preview.jpg</preview_image> <!-- the path to your theme's preview image -->
        </media>
    </theme>`
    

    and added to frontools themes.json:

    ...
    "MyVendor-MyTheme": {
        "src"    : "app/design/frontend/MyVendor/MyTheme",
        "dest"   : "pub/static/frontend/MyVendor/MyTheme",
        "locale" : ["en_US", "it_IT"],
        "lang"   : "scss",
        "postcss": ["plugins.autoprefixer()"]
      }
    ...
    

    Trying to set my new theme in magento backend i get a "broken" site without css. I cannot figure out how to proceed with the customization. Which is the best practice?

    opened by slackerzz 7
  • Regressions in 2.2 update

    Regressions in 2.2 update

    Looks like #161 introduced some discrepancies. Chiefly, the removal of !default flags.

    E.g https://github.com/SnowdogApps/magento2-theme-blank-sass/blob/34827e76e74ca12b21e510056d8e8da2b55cd563/Magento_Checkout/styles/module/checkout/_shipping.scss

    https://github.com/SnowdogApps/magento2-theme-blank-sass/blob/34827e76e74ca12b21e510056d8e8da2b55cd563/Magento_Checkout/styles/module/checkout/_sidebar-shipping-information.scss

    https://github.com/SnowdogApps/magento2-theme-blank-sass/blob/34827e76e74ca12b21e510056d8e8da2b55cd563/Magento_Checkout/styles/module/checkout/_tooltip.scss

    ...and many other files. Ideally, any variable definitions should end with a default flag.

    Also, not sure about the usage of lib-css – it looks like that's used primarily to output vendor prefixed values and Frontools' autoprefixer takes care of that by default.

    opened by Leland 6
Owner
SNOW.DOG
SNOW.DOG
A Sublime Text 3 package for highlighting both Sass and SCSS syntax.

Syntax Highlighting for Sass This is a Sublime Text 3 package which purely forced on highlighting both Sass and SCSS syntax as accuracy as possible. P

Peiwen Lu 291 Jun 26, 2022
Foundation 3 Framework for Magento 1.7. Foundation styles and libraries. Magento Responsive theme. Off-canvas Left-Right sidebar columns for mobile.

Magento Foundation 3 Framework Zurb Foundation 3 framework for Magento 1.7. Magento Foundation 3 Version 1.3.0. Demo page: http://magendation.internet

Nando Boronat 62 Apr 1, 2022
The Current US Version of PHP-Nuke Evolution Xtreme v3.0.1b-beta often known as Nuke-Evolution Xtreme. This is a hardened version of PHP-Nuke and is secure and safe. We are currently porting Xtreme over to PHP 8.0.3

2021 Nightly Builds Repository PHP-Nuke Evolution Xtreme Developers TheGhost - Ernest Allen Buffington (Lead Developer) SeaBeast08 - Sebastian Scott B

Ernest Buffington 7 Aug 28, 2022
Version is a library that helps with managing the version number of Git-hosted PHP projects

Version Version is a library that helps with managing the version number of Git-hosted PHP projects. Installation You can add this library as a local,

Sebastian Bergmann 6.3k Dec 26, 2022
Mobile detect change theme and redirect based on device type. Magento 2 module.

Magento 2 Mobile Detect Theme Change Magento 2 Mobile detect system can be used to load different themes base on the client device (desktop, tablet, m

EAdesign 27 Jul 5, 2022
A tool that allows to quickly export data from Magento 1 and Magento 2 store and import it back into Magento 2

Simple Import / Export tool A tool that allows to quickly export data from Magento 1 and Magento 2 store and import it back into Magento 2. Table data

EcomDev B.V. 51 Dec 5, 2022
Simple free responsive (fluid) Magento theme

Please note: This theme is no longer under active development Magento Responsive Theme The GPMD responsive Magento theme is a simple fluid base theme

GPMD 61 Dec 30, 2021
Twitter Bootstrap base theme for Magento

Magento Bootstrap This is an adaption of the Twitter Bootstrap framework for the Magento Commerce system. PLEASE NOTE THIS IS A WORK IN PROGRESS Insta

Casper Valdemar Poulsen 84 Oct 31, 2022
A great Start for your next Magento Theme's local.xml file

Magento-local.xml-Template A Great Start for your next Magento Theme's local.xml file - <?xml version="1.0"?> <layout> <!-- Add/Remove Items From H

Bryan Littlefield 36 Apr 19, 2021
Magento 2 base theme for sharing features across multiple themes

MASE2 Optimus theme About and purpose Optimus is a free and home-made Magento 2 theme, developed by Studio Emma . Its purpose is providing a starting

Studio Emma 87 Oct 7, 2022
A highly compressed version of the magento 1.9 sample data and a script to create it.

Compressed Magento 1.9 Sample Data The following variations are available: 65M compressed-magento-sample-data-1.9.2.4.tgz 64M compressed-magento-sampl

Vinai Kopp 120 Sep 9, 2022
This Magento extension provides a Real Full Page Caching for Magento powered by Varnish with support of Session-Based information caching (Cart, Customer Accounts, ...) via ESI includes

This Magento extension provides a Real Full Page Caching (FPC) for Magento powered by Varnish with support of Session-Based information caching (Cart, Customer Accounts, ...) via ESI includes

Hugues Alary 95 Feb 11, 2022
2022 edition of the inRage Theme fully based on Gutenberg with the support of Roots Sage 10

2022 Edition - inRage theme This version of the theme is compatible with the Full site editing of Wordpress 5.8/5.9 and use Sage 10 in order to manage

inRage 5 Jan 3, 2023
A block-based child theme for WordPress.org, plus local environment

WordPress.org Block Theme A block-based child theme for WordPress.org, plus local environment. Once set up, this environment will contain some shared

WordPress 29 Dec 30, 2022
The light version of NexoPOS 4.x, which is a web-Based Point Of Sale (POS) System build with Laravel, TailwindCSS, and Vue.Js.

About NexoPOS 4.x NexoPOS 4 is a free point of sale system build using Laravel, TailwindCSS, Vue and other open-source resources. This POS System focu

Blair Jersyer 402 Jan 7, 2023
This Magento 2 extension integrates EasyTranslate into Magento 2.

EasyTranslate Magento 2 Connector This Magento 2 extension integrates EasyTranslate into Magento 2. Mind that you need to have an account with EasyTra

Easytranslate ApS 0 Oct 7, 2022
Magento-Functions - A Resource of Magento Functions

Magento-Functions A Resource of Magento Functions Table of Contents Category Product User Cart Checkout General Account [Working w/ URL's] (#urls) Cat

Bryan Littlefield 28 Apr 19, 2021