Roadmap
redonkulus opened this issue Β· 32 comments
Description
This is a catch all ticket for potential infrastructure changes to improve Pure.
Items
- (#787) Migrate website - Zeit v1 is EOL, current Node.js site doesn't support v2.
- Upgrade Normalize - Version currently used is very old. We should upgrade to the latest version.
- Remove old browser support - There are many browser hacks for old IE, Opera and Safari browsers. These are most likely unnecessary and just add bloat to the project.
- Remove Bower - NPM has taken over as the FE package manager and bower use has declined over the years. Deprecating the https://github.com/pure-css/pure-release repository would be the first step.
- Audit all existing styles to ensure latest CSS spec is met.
CSS Grid is coming https://caniuse.com/#feat=css-grid
@lkraav Do you think Pure needs to provide anything with CSS Grid? Seems like grids are pretty specific to each applications own needs. I'm not sure what Pure would provide that applications couldn't do themselves.
Is there any possible redesign a new look ?
BTW, the line-gradient performance is not that good in mobile device(includes the webview).
Do you think Pure needs to provide anything with CSS Grid?
@redonkulus back-compat comes to mind.
Imagine all the elements w/ pure classes out there around the world.
They could in theory maybe get 1-click upgraded to CSS grid, and continue building from there. Wdyt?
I'd be interested to see what that means and how the upgrade would work.
@mathxlee The pure code base needs to be modernized, open to any who wants to do the work.
If possible, i would like to redesign a new UI or use my UI(https://github.com/VIPUI/VIPUI), or maybe you would think it's ugly, haha, anyway, i really hope that we could build a new modern UI together, and also could import into any modern mvvm framework.
If possible, I would like to maintain pure, as the company I work with uses pure in their web front-end enterprise applications that handle telecommunication services.
In a roadmap as proposed by our team, they want me to audit existing styles and remove hacks for old browsers to reduce sizes and improving many things en-way. Since I would anyway be submitting PRs for these improvements and this is quite close to what you have in your roadmap, it would be wonderful if I could maintain it.
@Oxyenyos thanks for offering to help maintain Pure. Your help and support is much appreciated.
I think since this is a new collaboration, I think itβs best to start small and have you work on some smaller PRs (like removing old browser hacks). Then tackle larger items as we would out the collaboration model. How does that sound?
@redonkulus Sorry for late reply, as I was out on weekend.
Yes! It's good to start small as it will greatly help me in understanding the codebase.
I plan to split the work on removing browser hacks by making 3 different branches and submitting separate PRs for IE, Opera and Safari as it would be convenient to test and merge.
At our workplace we use saucelabs for automation of testing across browsers, and would love to implement cypress for the long run.
Adding browser testing as part of PR's builds would be interesting as well. We use Saucelabs at work which works fairly well; I haven't used cypress before. But given that we have Zeit integration with the pure-site
repo, we could probably add Saucelabs/cypress as well. One caveat is that we would need to figure out a way to test local Pure changes in the site.
Another option could be to move the pure-site
code base into this repo so that all changes could be done together. Would make things a bit easier to test.
I was thinking of making subtree of pure-site
in pure
repo locally, which will make testing easier as well as keep the repos separate here.
Saucelabs/cypress tests can be added in pure-site
repo. I'll create an issue for removing opera hacks, today, and will try to to demonstrate if this testing workflow works successfully as part of first PR.
I really hope that there will be #735 as examples on the roadmap as well.
If we can really go the full nine-yards we can try and see if all Bulma elements can be included.
There have been a few corrections since v1.0.0 which was released on June 5 2017.
Is a new minor release (possibly v1.1.0?) planned in the near future?
Yup will probably release it later this week.
Yup will probably release it later this week.
Have you forgotten the npm password?π€
Nope just been really busy. Sorry for the delay. Will try to find time this week.
Update: (sorry for being late) it is https://github.com/pure-css/pure-site/issues/403 that has some of the bulma-esque elements not #735
@pikadun version 1.0.1 has been released!
@redonkulus You look like a million dollarsπ
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.
ide be willing to help
I would be willing to help maintain the project by handling some pull requests. I'd really like to see this project keep going.
@aaronpinero we are always looking for help. Best bet is to start off trying to fix the open issues and building up an understanding of the framework and code base.
Hi redonkulus. Thank you so much for pureCSS. I have been using pure grids for years now. so many responsive layouts just working in any browser due to your great project. Last week someone told me, "you dont need Pure anymore. Just use CSS Grid"; so i built some responsive grids with the CSS grid autofill/fit columns and fr units. it seems to work as long as you dont care how many columns you will get in the end.
- I could not find a way to get a width granularity like in pure with " sm, md, lg, xl".
- If you got more HTML Elements in your grid wrapper than the desired amount of columns you run into trouble.
My opinion: Pure is still far more versatile and browser compatible than CSS Grid.
My fear: Modern browsers mock around about zoom property and stuff.
@community: Do you have any experience with the topic? Do you use CSS Grid and pure side by side? Will pure collide with future template layout version 4? Any thoughts are welcome. Thanks.
My opinion: Pure is still far more versatile and browser compatible than CSS Grid.
They're for different purposes. CSS Grid is able to finally define 2D layouts with ease and sanity. Flexbox is meant for single dimension / direction layouts.
Ok. I had to ivestigate a bit and looked in the pureCSS source in order to understand your statement. i leraned that pure-g is flexbox/flex based. This implies that nothing will deprecate or collide with pure anytime soon because flex stays a part of the CSS module branch.
On the other hand: With four media queries, inspired by pure responsive grids, i build a grid just like in pure. ...and with a gap property!, this is very intriguing:
@media screen and (min-width: 20em) { .gridwrapper { grid-template-columns: 1fr ; } } @media screen and (min-width: 35.5em) { .gridwrapper { grid-template-columns: 1fr 1fr; } } @media screen and (min-width: 48em) { .gridwrapper { grid-template-columns: 1fr 1fr 1fr; } } @media screen and (min-width: 80em) { .gridwrapper { grid-template-columns: 1fr 1fr 1fr 1fr; } }
FYI, time allocated for this project is based on availability. I've had some down time with all the "shelter in place" happening where I've been able to work on migrating the site to Docusaurus / GitHub Pages and off of ZeitVercel. Check out #787 for more info.
After this is done, I will look at upgrading to latest Normalize.css and dropping bower. This change would facilitate a 2.0 version release.
FYI, purecss@v2.0.0-rc.1 published to npm under the next
tag if anyone wants to try it out on their site.
I've tested the RC 1 on my project (mainly using the grid system).
The only differences from 1.0.1 I've noticed are coming from the normalize.css upgrade (line-height). So, for me its working pretty good.
Thank you for your effort in keeping this project alive.
Version 2.0.0 has been released. Thank you for testing and let us know if there are any issues. Going to close this issue out now.
Still looking for maintainers?
@thiagovilla always, best place to start is fixing issues or working on feature enhancements from the Issue list.