Closed giohappy closed 3 years ago
(From Alper on Skype)
By following the design document & github issue, i have implemented below
I am waiting or your feedback http://demo.geo-solutions.it/mockups/mapstore2/geonode-spa-2/#/
Here are the things i tried to implement item by item
I did not want to make more progress on this without getting a feedback.
@simboss I invite you to add your comments to this first draft. I will add mine asap.
A first round of comments.
1) we don't want the dynamic layout, with different ratios per tile, as offered out of the shelf by masonry. We want fixed sized tiles 2) we don't want tiles animations. Tiles layout should be reponsive (adapt number of tiles per row/col depending on viewport), but not the animation effect provided by masnory 3) Bigger cards 4) Sligthly rounded corners for the cards 5) White background by default.... The beackground of the "top" search area will be eventually substituted by custom background images / colors. 6) More spacing between cards 7) Distinct image / text sections, no "faded" text with color background 8) White background for the card's text section:
9) The single card / tile should be more similar to the following examples:
10) I would consider a space to add a "quick links" bar above the cards grid. These could be quick filters for the listed cardws (Maps, Layers, Stories, Dashboards, specific resources categories, etc.) that could be customized, e.g. a customer might want to add custom quick filters.
11) I guess you hardcoded the header bar, to resemble the one from GeoNode. I wouldn't try to make it the same, otherwise we will be forced to keep them aligned. I'd use a visually distinct bar, with GeoNode logo, SignIn/SignOut and User button, but not the menus for maps, etc. Maybe we could put a "Workspace" link to redirect the user to the "real" GeoNode backoffice (Layers page maybe?)
12) What is the purpose of the "x" icon ?
Please @simboss and @allyoucanmap add your comments, if you want.
@giohappy
I have tweaked the mockup considering your comments.
You can check the demo page
http://demo.geo-solutions.it/mockups/mapstore2/geonode-spa-2/#/
Not really good on a mobile device
Actually we never said how it should behave on mobile explicitly, but it's expected to work (at least not to break). The basic idea on mobile would be to slide up the panel, over the cards grid.
On Wed, Sep 2, 2020 at 5:09 PM Alessio Fabiani notifications@github.com wrote:
Not really good on a mobile device
[image: image] https://user-images.githubusercontent.com/1278021/92001490-06248280-ed3f-11ea-8560-23c0abf886cd.png
— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/geosolutions-it/geonode-mapstore-client/issues/188#issuecomment-685800001, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAELN6MOMZZ43V52AVST57LSDZN23ANCNFSM4QM7PALA .
I have implemented a basic layout change for mobile and low-width screens. http://demo.geo-solutions.it/mockups/mapstore2/geonode-spa-2/#/
@alperr your solution is a quick workaround, but imho it doesn't reflect the usual UX on mobile. You can have a look to what we've done here (you can only browse the news as anonymous user): https://app.mapstand.com/ or the typical approach provided by Google Maps on mobile (even the browser version).
this is the basic solution I expect to see.
@giohappy I tried to make the layout similar to https://app.mapstand.com/ and updated the demo page. http://demo.geo-solutions.it/mockups/mapstore2/geonode-spa-2/#/
I have made the following changes to the mockup
Below changes are applied only for the mobile version (where width < 576px)
Here are a couple of screenshots for different screen widths (These breakpoint values are taken from bootstrap 4)
ok @alperr. Now we can stop since we need to plan the next steps together with @allyoucanmap
I attach a couple fo screenshots from the mockup done by the Thunen Institue, just to take inspiration....
as from our call, the UX that we're going to test is the one offered by the usual search engines:
INITIAL:
SCROLL:
UI Framework
Currently GeoNode uses bootstrap version v3.3.7 directly inside the django template while MapStore uses bootstrap v3.3.5 inside the library react-bootstrap v0.31.0. The selected framework for the UI could be bootstrap because is a familiar framework used inside both applications. We could try to use the newest version v4.5.0 provided by react-bootstrap v1.3.0 with the idea to update this library also inside MapStore(*) in next phases in the meanwhile we could use both versions: the new one in the GeoNode SPA and the old one in MapStore. It's possible to use two different versions of the same library using npm >= v6.9.0.
Note: use
react-bootstrap-v1
for new components in the GeoNode SPA while scss files for customization are under the/themes/geonode/scss/
directory.(*) We need to evaluate the migration of react-bootstrap to new version as soon as possible. (MapStore)
General Theme
We should change variables and custom scss styles inside the
/themes/geonode/scss/
to get a "clean and lightweight design". This work should follow the whole UI Design development.we added a test page at
spa/bootstrap-theme
in the test branch that gives a preview of all bootstrap styles (development only)Header
The header should be compact, small and provide basic customizations. We should evaluate the compactness using the scss bootstrap variable before adding custom styles. It should display a logo, a title (optional) and links. Links for register and sign in should be included, taking into account that authenticated users will see their avatar and name with a dropdown list and additional links.
Customizations:
Jumbotron
We should provide a Jumbotron under the header that shows a cover image. We should investigate different approach to this component. Proposed behavior:
The proposed behavior needs to be adapted to the GeoNode functionalities where the search and list of cards are directly connected. So we need to evaluate if the search can be included or not.
Note: It will be interesting to test both approach to se which one fit better the homepage.
Search bar and Filter
The search is an input with an inline magnifying glass icon and it should provide options with autocomplete functionality. The filters should be integrated or directly below the search input and provide filter by:
Note: we could use query params and routing path to store the filtered value in this way we can share directly the applied filter by copying the url.
Cards container
The cards container should list all available resources in GeoNode. The cards needs an easy way to be discernable by resource type and loaded using infinite scroll.
Current resource type in GeoNode:
Expected resource type in GeoNode:
Each card should display:
Clicking on a card a detail view should open on the right (similar to Google image search).
Detail view
The detail view shows a preview of map component ( only if type is layer or map) with some general information:
We should provide also a toolbar with the following actions:
Featured resources
We should provide a section to show featured resources or datasets. We could use different approach:
Cards of featured resources should be similar to other cards in the homepage and we should investigate if their position is enough to identify them as featured.
Footer
We should make a proposal for a footer that can be used in the main page and viewer page