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 support #17

Open
kidoman opened this issue Jul 12, 2014 · 19 comments
Open

SASS support #17

kidoman opened this issue Jul 12, 2014 · 19 comments

Comments

@kidoman
Copy link

kidoman commented Jul 12, 2014

I was looking through the past issues/commits and see that we removed SASS support. Any particular reason why?

@kidoman
Copy link
Author

kidoman commented Jul 12, 2014

So is atomify-css not recommended for people wanting to use SASS? I mean, if the library supports less could sass also not be supported cleanly? @bclinkinbeard

@bclinkinbeard
Copy link
Contributor

No, the problem with sass is it relies on a native implementation that has to be built on each platform during installation. That build step was deemed slow/annoying, so we removed it.

On Sat, Jul 12, 2014 at 11:41 AM, Karan Misra [email protected]
wrote:

So is atomify-css not recommended for people wanted to use SASS? I mean, if the library supports less could sass also not be supported cleanly?

Reply to this email directly or view it on GitHub:
#17 (comment)

@kidoman
Copy link
Author

kidoman commented Jul 12, 2014

If we could make the requirement for the sass component optional (for only those who care about it), would that work?

@bclinkinbeard
Copy link
Contributor

That isn't how optionalDependencies work, unfortunately. optionalDependencies just mean that an install will not fail if they cannot be found. If there were an easy way to make SASS support truly opt-in we'd likely be open to it, but I don't know if that is actually possible.

@techwraith
Copy link
Contributor

We would take a PR that allowed people to use SASS without requiring it to be installed by everyone. Geddy does this for the various templating languages that it supports. It checks the local node_modules directory to see if the package exists before trying to require it.

@kidoman
Copy link
Author

kidoman commented Jul 12, 2014

@techwraith that is precisely what I had in mind. I have also seen the same technique being used by sequilize for supporting MySQL, MariaSQL, Postgres, etc.

@kidoman
Copy link
Author

kidoman commented Jul 12, 2014

This is what I had in mind: https://github.com/sequelize/sequelize/blob/master/lib/dialects/mysql/connection-manager.js#L13

I can send in a PR if this solution is deemed acceptable

@bclinkinbeard
Copy link
Contributor

Browserify does not support dynamic require paths so that approach wouldn't work.

On Sat, Jul 12, 2014 at 3:13 PM, Karan Misra [email protected]
wrote:

This is what I had in mind: https://github.com/sequelize/sequelize/blob/master/lib/dialects/mysql/connection-manager.js#L13

I can send in a PR if this solution is deemed acceptable

Reply to this email directly or view it on GitHub:
#17 (comment)

@kidoman
Copy link
Author

kidoman commented Jul 12, 2014

@bclinkinbeard what does this have to do with browserify ? I thought that was in atomify-js?

Please help me understand?

@techwraith
Copy link
Contributor

Yeah, I don't think this has anything to do with browserify. This is all
happening in node land so we should be fine.

On Saturday, July 12, 2014, Karan Misra [email protected] wrote:

@bclinkinbeard https://github.com/bclinkinbeard what does this have to
do with browserify ? I thought that was in atomify-js?

Please help me understand?


Reply to this email directly or view it on GitHub
#17 (comment).

@bclinkinbeard
Copy link
Contributor

You're both right, I replied too quickly. My bad.

@kidoman
Copy link
Author

kidoman commented Jul 12, 2014

@bclinkinbeard Thanks for the confirmation. Will send the PR in shortly

@ckundo
Copy link

ckundo commented Sep 22, 2014

@kidoman where did you end up with the PR? @stubbornella and I started on an implementation, but it is incomplete. We're not sure how to make the @import statements look in node_modules/ ckundo@1ec4feb

Perhaps @techwraith @kidoman @bclinkinbeard one of you might take a look and comment?

ckundo pushed a commit to ckundo/atomify-css that referenced this issue Sep 23, 2014
- Fail if node-sass is not specified by the nodeSassModule option
  and there is no project-level node-sass module defined.

  [Finishes atomify#17]
@rafayepes
Copy link

Could the SASS compatibility be added but without having to compile it? This tool could help to generate the bundle.scss. Once with this bundle, then anyone could use whatever they want to compile.

Does that make sense?

@techwraith
Copy link
Contributor

It's possible, but you'd still need some sort of SASS parser to find all the @import statements.

@stubbornella
Copy link

We don't love how sass handles imports. It takes URL references in the individual files and processes their paths as if they were in the top level import file.

On Mon, Sep 29, 2014 at 7:37 PM, Daniel Erickson [email protected]
wrote:

It's possible, but you'd still need some sort of SASS parser to find all the @import statements.

Reply to this email directly or view it on GitHub:
#17 (comment)

@techwraith
Copy link
Contributor

I'm not sure what you mean there. Atomify also inlines imports (but does it intelligently so that the same file never gets imported twice).—
Daniel Erickson
CTO Getable, inc.

On Mon, Sep 29, 2014 at 9:31 PM, Nicole Sullivan [email protected]
wrote:

We don't love how sass handles imports. It takes URL references in the individual files and processes their paths as if they were in the top level import file.
On Mon, Sep 29, 2014 at 7:37 PM, Daniel Erickson [email protected]
wrote:

It's possible, but you'd still need some sort of SASS parser to find all the @import statements.

Reply to this email directly or view it on GitHub:

#17 (comment)

Reply to this email directly or view it on GitHub:
#17 (comment)

@adamsoffer
Copy link

Any update on Atomify supporting SASS?

@serapath
Copy link
Contributor

I answered here.
What i describe there, i once did in my own projects, but with stylus instead of sass.
I even wrote a small script, that helps me to kick off multiple "watchers" if i develop multiple components in a dependency tree at once by npm linking them.

That kind of works, but since then i moved away from stylus into rework plugins.
I have a first draft of a small tutorial about atomify including themeing.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

8 participants