tmcw / geojson.net

https://www.placemark.io/
ISC License
150 stars 32 forks source link

UI refresh? #14

Closed rowanwins closed 6 years ago

rowanwins commented 6 years ago

Gday @tmcw

Thanks for undertaking this project (the original and the to-be version), I couldn't tell you how often I use it! As I mentioned on slack I'd also half-heartedly started recently working on a more modernised replacement.

If you're interested I'd be happy to attempt to give the UI a bit of love. I can start with throwing together a few mock images and take it from there.

Cheers Rowan

tmcw commented 6 years ago

Definitely! To sync up so we're on the same page, here's what I've been thinking:

rowanwins commented 6 years ago

Gday @tmcw

So a couple of quick points of clarification

Anyway stay tuned, got a few thoughts bubbling through my head, hope to have some mockups by the end of the week.

tmcw commented 6 years ago

My understanding is that someone will need to have authenticated with github somewhere along the way to either

Yep, that's the case. In the old days, you could create a gist anonymously but you can't anymore. And maybe someday there'll be a github alternative for sharing generic data etc, but... I'm not seeing one sprout up and I haven't seen any issues/PRs proposing any other auth integrations.

Are there any bits of functionality or menu items from the current site that you are planning on dropping?

Nope, none off the top of my head. I want it to be on par with every feature, unless something really stands out as useless or outdated. I do think that the 'Meta' menu could be better structured and organized, because it's a mishmosh of extra ways to import, things that modify the map, and just general controls. Some of those, like 'zoom to features' should probably be a map control, and things like all the "Load X from string" items should be better grouped. "Add custom layer" should be closer to the layer UI, too.

Are there any major bits of functionality or menu items that you envisage might get added?

Not really! I'd like to address some of the noted issues with geojson.io - like how it's impossible to edit objects in features in popups, but other than that, no whiz-bang additions in mind. I'm open to any, but, yeah.

Not sure how you feel about React component libraries, but I've typically used something like AntDesign which I think provides a nice neutral set of components. It's got some neat components, eg for table editing. Would you have any objections or suggestions if I started looking at something down this route?

I haven't used any component libraries in the past... I'm open to the idea of them. The master branch is currently just tachyons + normal ol' react HTML elements, which has been a recipe that worked really well for custom / efficiency-first applications, but admittedly this project would probably benefit from a larger set of assumptions, so that we don't have to rethink all the basic styles just to build some tabs etc. Is AntDesign what you'd use? Seems pretty good.

rowanwins commented 6 years ago

I do think that the 'Meta' menu could be better structured and organized, because it's a mishmosh of extra ways to import, things that modify the map, and just general controls.

Sounds like we're thinking about much the same stuff

Is AntDesign what you'd use?

I used it a little while back on a fairly similar project and I found it very good. The basic styling is nice (IMO) and if you do want to add custom styles it's pretty easy to override compared to some other component systems I've used. It also has a import on demand option which means you only need to pull in the components you want to use so you don't blow out your app size with stuff you're not using. Anyway perhaps we just give it a whirl and see how it works for us - if its not working for us we can always change it :)

rowanwins commented 6 years ago

Gday @tmcw

So here is a very very rough attempt at a layout after a few hours (mostly reminding myself how react works!).

A few comments

At the moment I've just scaffolded it out as a standalone react app with 0 functionality, I find it easier to actually work with real sizings etc rather than in a psd, particularly if we choose to adopt a component kit like AntDesign.

Anyway if you think this layout is heading in the right direction I'll refine it further and start working on the styling etc. My gut feel having tinkered on it a bit is that it feels like it should come together. The layout feels like it's got a bit of flexibility if there are other odds and ends of functionality that need to get included. And the AntDesign components are working nicely to get those nice finishing touches like tooltips. I can also throw it up online if you want.

Anyway let me know what you think Cheers Rowan

roughlayout

tmcw commented 6 years ago

Cool,

I'm not super convinced about moving all the content into one panel

I can't think of an obvious problem in the current design that it solves, and I can think of one that it causes - actions that modify the JSON and don't clearly modify the map - like "Add Bounding Boxes". When you have a separate toolbar, and both a persistent map and JSON display, you can see that when you click Add Bounding Boxes or Flatten MultiPart Geometries - you can see what they do. But if the JSON table is hidden away at that time, they don't seem to do anything.

Also the expanding of 'Flatten Multipart geometries' with an icon, description, padding, means that we wouldn't be able to fit nearly as many actions on screen.

Sorry to be kind of a downer about these, I do like the aesthetic. It's more that - I think it's changing the layout and basic arrangements that haven't been issues in order to be/look new, and I think that risks making the site less utilitarian, familiar, and introducing new problems.

rowanwins commented 6 years ago

All good @tmcw - fast feedback is good feedback :) I had gone a bit wild in re-imagining things, wasn't sure how much we were trying to differentiate this site from the current, but happy to bring things back a bit towards the existing layout.

rowanwins commented 6 years ago

Take 2 with something more inline with the current layout.

Closer?

screenshot-localhost-3000-2018 05 24-22-52-11

rowanwins commented 6 years ago

And with a bit of styling applied using this colour palette. Although it looks a bit greyer in the picture than what it looks when viewed as a real app shrug

screenshot-localhost-3000-2018 05 25-21-16-38

tmcw commented 6 years ago

Yeah, I think that's the right direction! I'm cool with moving the GitHub UI to the left, not totally sure whether it makes sense to expand on these words, like "View as JSON" vs JSON, etc - I kind of favor compactness where there isn't much potential for confusion.

rowanwins commented 6 years ago

Cool, glad this is getting closer. If i get some time tonight I'll see if i can pull down this repo and start getting things set up.

tmcw commented 6 years ago

I've made some aesthetic changes to the project, generally in the direction of a vaguely Ableton/brutalist style with pops of bright color, absolute blacks, chunky system fonts.

Sorry for the misadventure. All in all, I was more wedded to the existing basic layout conventions that I first realized and while I'm all about a tighter overall aesthetic, it's a bit unconventional and pragmatic, like the original geojson.io. style. Hope it wasn't too big of a time commitment, and thanks for giving it a shot.

rowanwins commented 6 years ago

All good @tmcw , sometimes you just gotta try these things out and it doesn't always work.