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

YUI is going away - what does this mean for Pure? #373

Closed
grantmcconnaughey opened this issue Aug 30, 2014 · 27 comments
Closed

YUI is going away - what does this mean for Pure? #373

grantmcconnaughey opened this issue Aug 30, 2014 · 27 comments
Labels

Comments

@grantmcconnaughey
Copy link

Given the announcement that development of YUI is ending, I was wondering what this means for Pure.

Is this a good thing, meaning that focus will be spent on Pure? Or is this bad, meaning that Pure is also going away?

@ericf
Copy link
Collaborator

ericf commented Aug 30, 2014

More focus.

YUI depends on Pure, and we made it a separate project because Pure is the right sized project and CSS only, and can also benefit a larger number of projects than ones using YUI. A lot of the original CSS and ideas for Pure existed in YUI first, and we extracted and expanded on them to make Pure.

@ericf ericf added the question label Aug 30, 2014
@grantmcconnaughey
Copy link
Author

That is fantastic news! Thanks for the update.

@emetselaar
Copy link

Nice!

@bojanvidanovic
Copy link

That's a relief! I thought too Pure would get abbandoned.

@z5h
Copy link

z5h commented Sep 3, 2014

👍

@mindpivot
Copy link

right on

@SimonSteinberger
Copy link

Big relief :-))
Just yesterday we launched a new layout for Pixabay.com that fully relies on Pure :-) Big, big thanks to all of you guys! Pure is an amazing piece of technology!

@cutemachine
Copy link

+1 Maybe it should be mentioned in the Readme. Thanks for the great work.

@SimonSteinberger
Copy link

Curious about how Pure dropdown menus will be powered without YUI. Since we use jQuery on our porjects, we've developed our own technique: http://pixabay.com/blog/posts/id-56/

It would sure be great to have an official and tested way of handling this without YUI.

@roydekleijn
Copy link

I think purecss should focus on CSS only. Dropdown menus with javascript can be done with any javascript framework / library.

@anEffingChamp
Copy link

Can you not do drop down menus with CSS3?

@SimonSteinberger
Copy link

For mobile friendly menus, it's usually best to use click events for triggering open/close of dropdowns. AFAIK, there's no way for doing that in CSS only. Hover is possible via CSS, but that's unhandy for touch devices.

I don't think Pure should include JavaScript, but maybe it's a good idea to show how Pure menus can be used in combination with various JS libraries. Menus are a vital part of most websites and the existing Pure menu CSS works well with JS events.

@mindpivot
Copy link

+1 @SimonSteinberger

I wouldn't necessarily delve into specific JS libraries. The dropdown has a core set of events and functionality that can be easily described at a high level and people can then use that base as a starting point for implementing it within their JS Lib/Framework of choice.

Something along the lines of "given the standard menu markup you want to attach a click/hover event to the top-level menu item in a containing LI element which is responsible for hiding/showing any sibling UL tree. The same pattern applies to sub-menus". But a little more detail, possibly showing a raw JS code example.

@ardouglass
Copy link

It would be nice if there was a list of JS plugins that were compatible with Pure. It's nice to have a strong focus on only officially supporting CSS, but I'm running into some situations where I wish the options were available to me.

In practice you have instances where you start building on something like Pure and then a client demands something like a dropdown menu. Without YUI, the only option available is for every developer to build their own solution to something that heavily depends on the CSS and HTML structure provided by Pure.

A source on the website or this repo would be great, because (for example) purecss dropdown menu is virtually unsearchable as a reliable way of finding solutions that relate to this framework and instead returns no-JS solutions.

@sebastiendavid
Copy link

@ericf, more focus? The project activity afraid me, or maybe commits will be back stronger and faster than ever?

I love the lightweight approach of purecss (and I love normalize.css too), I hope a lot of updates are coming soon (like an upgrade of normalize) ;)

@grantmcconnaughey
Copy link
Author

@sebastiendavid I know what you mean. I've heard several times that Pure is alive and well, but the fact that there have hardly been any commits in the last 6 months worries me.

@SimonSteinberger
Copy link

Version 0.5.0 was launched just recently. I think there's a lot development here :-) Awesome changes and new possibilities ... am I wrong?

@anEffingChamp
Copy link

I think that a product as calculated as Pure is intended to involve a fair amount of discussion, but very deliberate code commits. It seems to be designed to be minimal, so a lot of commit activity would defeat that purpose. That would be more of a kitchen sink approach.

@grantmcconnaughey
Copy link
Author

@SimonSteinberger Yes, version 0.5.0 was technically released in May, but there were no changes between 0.5.0-pre in March and 0.5.0 in May, so I'm considering March the last point where there was somewhat stable development.

Make no mistake, I love Pure and I'm not complaining about the amount of development on it. I just keep hearing that it isn't dead while it continues to sit with no recent commits -- that's all.

@onemanstartup
Copy link

"More focus" - yeah, right 😦

@illpro
Copy link

illpro commented Nov 19, 2014

👍👍👍 If we keep it going.
Please keep it going, its a great project that I for one appreciate.

Thanks!

@jamesalley
Copy link
Contributor

I also feel Pure has been neglected for a few months. I attribute this largely to Tilo's departure. The YPT team is staffing up, though, and I'm happy to be turning my attention to Pure this quarter. There's quite a backlog of issues and PRs to go through. I am working to resolve them and to execute our 2015 roadmap.

I sympathize as well with those who have expressed a desire for a component library, replete with markup and JS, now that YUI has been deprecated. I don't yet have an answer to that question.

@jamesalley
Copy link
Contributor

In closing, some more thoughts on a post-YUI world:

  • I, too, am realizing that, despite Pure's core mission, sometimes you just need JS. Dropdown menus in Pure is a great example; they really require JS for good accessibility and proper UI interaction. So, with the next release I'll be providing sample code for that. I've written it in such a way that you can take it and incorporate it into your own app, or drop it wholesale into a page and it will enable any pure dropdowns. (It will look for pure-menu-has-children items).
  • My approach is to write vanilla JS. I won't be picking a winner when it comes to JS libraries. If you're concerned about browser compatibility, and you should be, you can use the files as inspiration for a port to your favorite library, or you can polyfill. The Financial Times already offers a polyfill service; expect to hear more exciting news about this technique later in 2015.

@SimonSteinberger
Copy link

Just as an idea for the JS driven menus: In our projects we auto-detect touch devices:
if ('ontouchstart' in window) {... }

On those devices, our Pure dropdown menus open on click - while on mouse controlled devices, the menus open on hover. Our users love it, because when using a mouse, it's just more intuitive if menus open on hover. and it involves just a minimum of extra code ... just a thought :-)

@jamesalley
Copy link
Contributor

@SimonSteinberger Thanks for the suggestion. Your comment inspired me to add in such functionality. Because overriding it would be difficult, and not everyone will want to expose submenus on hover, I decided to make it optional via a pure-menu-allow-hover class:

        <li class="pure-menu-item pure-menu-has-children pure-menu-allow-hover">
            <a href="#" id="menuLink1" class="pure-menu-link">More</a>
            <ul class="pure-menu-children">
                <li class="pure-menu-item"><a href="#" class="pure-menu-link">Autos</a></li>
                <li class="pure-menu-item"><a href="#" class="pure-menu-link">Flickr</a></li>
                <li class="pure-menu-item"><a href="#" class="pure-menu-link">Answers</a></li>
            </ul>
        </li>

@SimonSteinberger
Copy link

Excellent 👍

@illpro
Copy link

illpro commented Jan 29, 2015

Not to downplay your idea @SimonSteinberger, but some browser/device combos with a mouse/trackpad (chrome on touchscreen laptops) will have 'ontouchstart' in the window object. This means that you cannot, reliably, across all platforms, determine if a user has a mouse or not by that property alone.

Just some food for thought. Cheers! :)

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

No branches or pull requests