oxalorg / sakura

:cherry_blossom: a minimal css framework/theme.
https://oxal.org/projects/sakura
MIT License
4.15k stars 182 forks source link

Why is normalize.css included in this repository? #9

Open zhouzi opened 7 years ago

zhouzi commented 7 years ago

Hey there!

I think this repository shouldn't serve as a normalize.css host. Also, the risk is that it quickly become out of sync with official releases.

That been said, I think that all sakura's css files should include normalize.css by default. Having to include normalize.css as a second stylesheet defeats the idea behind sakura:

Just drop in sakura.css to any webpage and go from ugly looking 1900's website to a pretty modern website in literally 0 seconds.

normalize.css addresses browsers inconsistencies, if you're not using it with sakura then you're sure to face bugs here and there.

Happy to submit a PR if that sounds good.

P.S.: including normalize.css in css files would be easy as adding @import 'node_modules/normalize.css'; to the theming scss files.

oxalorg commented 7 years ago

I'm not so sure about that.

I did previously think of bundling normalize inside sakura, but that makes it really complicated for those of us who aren't familiar with css/web technologies.

One of the reasons I think^[1] that sakura resonated so well among people was that it's small, easy to understand, and simply works. There is no wriggling around, and the source is relatively easy to ready and does not overwhelm newbies/people who aren't vested into webdev.

This was my line of reasoning to not include a minifed css as well, it will quickly start overwhelming people. They'd be less inclined to read, change, and customize sakura to fit their own needs. It will become like all the other frameworks they're so scared to touch.

Sure adding in normalize will save one step, but it also makes it implicit, and confuse the users. Which is bad. I'd rather they explicitly include a link to normalize. Perhaps we can add that in the README like so:

<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/normalize/7.0.0/normalize.css" type="text/css">
<link rel="stylesheet" href="https://unpkg.com/sakura.css/css/sakura.css" type="text/css">

.. making it very clear that you should include normalize.css for the recommended results.

What do you think?

[1]: I'm gathering this insight from all the people who've commented on this thread: https://www.reddit.com/r/webdev/comments/68zpdp/sakura_a_minimal_classless_css_theme_just_drop_it/, a couple of PMs, and feedback from friends and their co-workers.

zhouzi commented 7 years ago

If the generated files are intended to be read and modified then it makes total sense :+1:

Maybe the normalize.css file should just be removed from the repository then?