pure-css / pure

A set of small, responsive CSS modules that you can use in every web project.
http://purecss.io/
Other
23.54k stars 2.49k forks source link

Pure Roadmap 2015 #414

Closed jamesalley closed 7 years ago

jamesalley commented 9 years ago

James Alley – Welcome to Pure!

Pure Roadmap 2015

During the latter part of 2014, Pure has cruised along. Pull requests have come in, people have filed issues, and in some cases we've taken the time to integrate the changes or comment. Meanwhile, we have focused on some exciting new efforts, quite separate from Pure, which will bear fruit in the coming year. But it's time to dive back into Pure, and to share with everyone our roadmap for Pure in 2015.

The Scope and Vision for Pure

We still intend to keep Pure small, focused, and useful to any web project. We intend to refine and maintain Pure, rather than radically expand its scope. Pointedly, Pure will not expand to become a library of drop-in UI components. Rather, it will remain a foundation with a "ridiculously tiny" footprint that developers use as a starting point for writing their own CSS.

There has been some discussion on whether Pure should expand to become a component library, replete with segmented controls, drop-downs, tab-views, etc. We perhaps contributed to this perception by including a paginator component. Why do so, if Pure is more about smoothing the foundation than creating components?

For inclusion in Pure, a construct must meet the following criteria:

In other words, we're looking for stuff that everyone needs and yet finds difficult to implement with the proper semantics, accessibility (including keyboard access), and browser support. In fact, for these reasons, in the upcoming 0.6 release, we're removing the Paginator component. Pagination is not common enough, many sites use infinite scrolling, and it's trivial to implement yourself using inlined button-styled anchors. But this can be a gray area. We don't scientifically evaluate the 80% rule; difficulty and triviality are obviously subjective. So we welcome suggestions and the discussions they will spark.

About Those Pull Requests...

Incidentally, we cannot merge some very good PRs due to a lack of a CLA (license) on file for the contributor. Please don't let this discourage you! To take care of the CLA, simply follow the link to sign electronically. (https://yahoocla.herokuapp.com)

The Road to 1.0

The community has battle-tested Pure and provided feedback. In addition to incorporating bug fixes into Pure, we wish to focus on five areas of refinement before we declare Pure ready for a 1.0 stamp, whereby we begin to guarantee backwards compatibility through all subsequent 1.x releases.

  1. New Pure Menus. The 0.6 release will include a new Menus component developed by Pure contributor Tilo Mitra to be more responsive and more easily customizable.
  2. Removal of Paginator. Paginator doesn't meet the 80% bar, and is trivial to implement as inlined button-styled anchors. Removed in 0.6.
  3. Revamped Forms which leverage Grids. Currently, Forms has some utility classes to aid with layout, but we plan to remove them in favor of letting users leverage Grids instead.
  4. Refinements to Grids. At the very least, we want to bring more browsers onboard to Grids' flexbox-based implementation. Some users have noted the font-family: sans-serif dependency as an annoyance, so that is worth re-examining. There may be takeaways from other grid constructs that we can apply.
  5. Removal of vendor-prefixing from source. While this does not affect end users of Pure, we plan to remove vendor-prefixing from the source code in favor of inserting them via post-processing in the build. You'll still see them in the finished CSS on the CDN.

Of course, our backlog of issues and PRs may also surface important changes we'll want to incorporate into Pure as well. As the outline below illustrates, even without an ambitious expansion of Pure, plenty of tasks lay ahead 2015. Without further ado, then, here's our plan, organized into three-month quarters.

Q1. Pure 0.6

  1. Merge new-pure-menu PR
  2. Refactor pure-site accordingly
  3. Release Pure 0.6 and pure-site
  4. Address open PRs and issues

    Q2. Servicing feature requests

  5. Complete the review and absorption of all outstanding pull requests
  6. Clean up pure-form to remove functionality duplicated by pure-grid
  7. Update Pure-site accordingly
  8. Release 0.7
  9. Revise Pure so that vendor prefixing can be accomplished with configurable post processing.
  10. Investigate supporting a CSS-driven approach (and possible Sass integration) for using Pure along with the current HTML-driven approach (annotating HTML with class names).

    Q3. Pure 1.0 Release, and Components

  11. Fix bugs surfaced by the 0.7 release.
  12. Release 1.0.

    Q4. Post 1.0

    Per semantic versioning, 1.0 will be our signal to the world that backwards compatibility will be assured in future 1.x versions. Should the need arise to break backwards compatibility with 1.0, we will increment to 2.x releases.

And that's it! We hope you have found Pure to be useful and unobtrusive, and that you look forward to Pure's continued improvement. To provide feedback, please comment on this GitHub issue, or file a new issue to have it tracked as a separate thread.

James Alley and the Yahoo Presentation Technologies team

z5h commented 9 years ago

Great news! Thanks for the update.

MrSaints commented 9 years ago

Can't wait! Awesome news.

peterblazejewicz commented 9 years ago

:+1:

danfascia commented 9 years ago

Great, sounds like 2015 will be the year to come back to purecss.io - The minimal responsive menu is long awaited by many!

mike-ward commented 9 years ago

+1

kohaistyle commented 9 years ago

Great news ! PureCss, keeping it to the barebones core features ... Used it, loved it, happy with it ... Continue your great work !

khadorkin commented 9 years ago

:+1:

youhuoni commented 9 years ago

looking forward to this...

TCattd commented 9 years ago

:+1:

trungpham commented 9 years ago

Removal of vendor-prefixing from source.

Does that mean I can replace pure-g with my-prefix-g? Thanks.

jiaxunjiaxun commented 9 years ago

looking forward ......

ballynmiller commented 9 years ago

:+1:

jamesalley commented 9 years ago

@trungpham, no. Removing vendor-prefixing from source will mean that the source files will no longer have manually inserted -webkit-, -moz-, or other vendor prefixes in CSS properties. The pure- prefix in CSS classnames will remain. It is easily customizable via post-processing; in the future we may make it configurable via a pre-processing variable.

For more information see http://purecss.io/tools/#mutating-selectors

ghost commented 9 years ago

:+1:

vikramrojo commented 9 years ago

Bueno!

pioc92 commented 9 years ago

Merci!

suchafreak commented 9 years ago

It is good to see that you intend keeping pure simple and clean! Thank you!

russellballestrini commented 9 years ago

+1

jamesalley commented 9 years ago

Quick update to this roadmap: For 0.6 I have incorporated more bug fixes and PRs than I originally thought possible. I'm really trying to make Pure current. I had thought I wouldn't get to many of the legacy issues and PRs until next quarter, but I'm doing my best to bring as many no-brainer fixes into 0.6 as possible, rather than offloading them to a future release.

Closing in....

tilomitra commented 9 years ago

:+1:

grobmeier commented 9 years ago

Hey @jamesalley and others,

are there any plans / ideas to create an add on for "Materialized Design" or support it in general? I am also interested if there is a 3rd party project - couldn't find one so far.

jamesalley commented 9 years ago

No.

I am considering working on a theming layer for Pure. When I do that, I won't be prioritizing Material Design (after all, I work at Yahoo, not Google). But, perhaps I will explore a Material Design -like theme as a way of proving the theming system. It's a good use-case. But it won't be a priority. Don't hold your breath for it. Thank you for the suggestion though, I will keep it in mind.

grobmeier commented 9 years ago

Thanks @jamesalley

Actually I am not really a huge fan of MD, but I some of my customers are. I recommend purecss at the moment. However I am looking forward to such a theming layer. If its easy to work with, one can create MD own their own.

zbyte64 commented 9 years ago

:+1: thank you for all the hard work.

GregKi commented 9 years ago

Thank you. I've been searching for good CSS as a foundation for consistent style on my new Laravel websites. Pure looks like the answer.

paazmaya commented 9 years ago

Great to hear about the plan, as it sometimes has seemed that this project might be left without attention from the organisation that governs it. Since I am using autoprefixer for those vendor specific things, I am happy to hear that they have been dropped from the source.

danfascia commented 9 years ago

Support is getting good enough for a lot of those prefixable things anyway nowadays like border-radius

jhades commented 9 years ago

+1 A year ago i think there was a theme generator on the site based on a primary color, what would the best way to theme pure nowadays?and Thanks for pure!

deathmood commented 9 years ago

Q2 passed with no 0.7.0 release and now it is the middle of Q3. What happened to project? Is it still alive?

jamesalley commented 9 years ago

Pure is still alive, but don't expect a lot of changes. It's stable and useful. It will never grow into a full-blown component library with tons of features. It likely will remain close to its current form for some time to come, with only minor bug fixes. Right now, there are some bugs we want to fix, but they are small bugs with the Pure website, not with Pure itself.

We'll probably have to revise the roadmap or the expectations for the year.

The YUI theme generator is gone now that YUI is gone. The guy who supported that piece left Yahoo about a year ago.

michel-tournier commented 9 years ago

Well, that's a quite disappointing answer for the 12.000+ users who starred Pure :(

lkraav commented 9 years ago

Not to beat on the dead horse too much, but starring a repo is about the same as helping the hunger in Africa by just liking Facebook posts about it. It's real value is incredibly restricted.

I'd be willing to contribute cold hard recurring cash to a community fund to speed up this project's development, as I've learned that most of the time it helps grease the wheels. But someone would still have to lead an effort like that and I don't really know who it could be. I would even contribute workforce from my company if there was a business model in it. @jamesalley thoughts?

For the 12,000 star people, what are YOU willing to do to help this project go further? Ain't nobody else out there but us.

michel-tournier commented 9 years ago

+1 to contribute cash to a community fund

friksa commented 9 years ago

+1 for financial support given focused effort

redonkulus commented 9 years ago

What features are missing or needed that everybody is waiting on right now? Seems like there is urgency to keep iterating on the project but not sure what exactly is needed.

jamesalley commented 9 years ago

Let me try to put a more positive spin on this: Pure isn't dead: it's stable! ;-)

friksa commented 9 years ago

@jamesalley I love your thinking, but time for a 1.0 release then ;)

lkraav commented 9 years ago

What features are missing or needed that everybody is waiting on right now? Seems like there is urgency to keep iterating on the project but not sure what exactly is needed.

That's a valid q. Do github issues have an easy way to display and sort issues by subscriber count? Other than that, some sort of a poll/vote thing would be needed.

lplume commented 9 years ago

@lkraav this is a starting point https://api.github.com/repos/yahoo/pure/issues?state=open&sort=comments&direction=desc

lkraav commented 9 years ago

@lplume nice tip. No GUI form available yet I guess?

lplume commented 9 years ago

@lkraav nope afaik, i can prepare a simple python script, which output title n.comments and link

lplume commented 9 years ago

I'm gonna post tomorrow the script and its output.. Hope it will be useful :-/ anyway, I love how pure is "basic" and how it can be mixed/expanded: that's why pure is pure and it's awesome and unique! What about a community driven set of theme, plugins etc? That would be great!

redonkulus commented 9 years ago

There is nothing preventing community driven theme and plugins, these things should stay out of Pure proper to keep it lean and smalls. Proper documentation could be added to the Pure readme to help in discoverability.

redonkulus commented 7 years ago

Going to close this issue because its out of date now (almost 2017) and some of the points originally made by James have already been done:

I still see 1.0 being valuable but more discussion will need to be done about when and what that entails. For now, I plan to help with patch releases of minor issues. More details of the roadmap and progress will be in https://github.com/yahoo/pure/issues/557