Archive

Archive for April, 2016

How To Build Your First iOS App With JavaScript (Part 2)

April 19th, 2016 No comments

In part 1 of this tutorial we started building our iOS app from scratch. We started out by setting up a blank React Native project. Then we pulled data from the Unsplash.it API. Because downloading data takes time, we built a loading screen.

The Beauty Of React Native: Building Your First iOS App With JavaScript (Part 2)

In the process we went over positioning UI elements with flexbox and styling them using CSS-like properties. Towards the end of part 1 we downloaded and included a third-party Swiper component from GitHub, which allowed us to display wallpaper data in a swipeable container.

The post How To Build Your First iOS App With JavaScript (Part 2) appeared first on Smashing Magazine.

Categories: Others Tags:

Design Or Get Undesigned

April 19th, 2016 No comments

What would a page look like if it had no designer? This odd question occurred to me in the 1980s, while overseeing the transition from lead-based typesetting to computer-based phototypesetting of an Indian newspaper, The Patriot.

Design Or Get Undesigned

Like many Indian newspapers then, The Patriot had no designer. Its very distinctive layout seemed to emerge from the tactile interaction between the lead of the typeset matter and the hands of the illiterate, non-English-speaking villager who put the pages together.

The post Design Or Get Undesigned appeared first on Smashing Magazine.

Categories: Others Tags:

The Ever-Evolving Spectrum of the Web

April 19th, 2016 No comments

I wrote a post last summer where I identified myself as a web designer in light of my experience in front-end web development. The response was pretty overwhelming and has stuck with me ever since.

What stuck with me most is how relative job descriptions are in web development. I might be a web designer standing next to one person, but a web developer standing next to someone else. Creating exact labels (and job descriptions, for that matter) is an inexact science. When it comes to designing, building, and maintaining websites, it’s hard to pin down labels, despite all our best efforts to do it.

What if we were able to properly categorize and label what we do into neat buckets?

I tried to do that and it gets very messy very fast. In the chart below, hover over the red dots to see different technologies placed on a spectrum.

See the Pen Web Terminology Matrix by Geoff Graham (@geoffgraham) on CodePen.

Feel free to disagree with the placement of the dots. This is more to illustrate the idea that our world is a spectrum. I’m not trying to pigeonhole anyone or anything.

I made that to see where my understanding of general web terms falls into the spectrum of four different disciplines: design, front-end development, back-end development and IT. Chances are you would move the markers based on your own work and experience. Please do! Comparing each other’s would be interesting.

This helped me see how blurry the lines have become between these four disciplines. I remember a time when my job was to “lay out” web pages in Photoshop and send them off to IT for implementation. Many of us would chuckle at that workflow today, but it was a reality then and a sharp contrast from modern workflows. Where design and development used to be in stark contrast to one another, we now have more shared tasks.

Let’s try a different type of chart.

My thinking after creating the spectrum chart led me to think that a scatter-style chart was a bad way to visualize the differences between disciplines. So I made a Venn diagram instead:

See the Pen Web Terminology Venn Diagram by Geoff Graham (@geoffgraham) on CodePen.

The blurred lines are (hopefully) easier to see in this visual. This still gets messy and complicated as our understanding of new techniques and skills evolve.

So, what’s the point of all this?

Looking at datasets is fun.

More importantly, this has a lot less to do with job descriptions, personal labels and specific skills. What I see is a movement beneath the surface that is re-drawing our understanding of what makes up the web spectrum. I was so focused on buzzwords and where they fall on a chart that I believe I may have overlooked the buckets that make up the actual chart.

Our jobs are not contained in anachronistic terms like React, Bootstrap, Grunt and SEO. Those things will come and go and perhaps even come again. Instead, our fundamental understanding of what it means to design or to development are evolving and, in many cases, overlapping. If the past is any indication of where things were and where they are heading, then I would expect to see the plots on any chart like this start to collect toward the center of the spectrum and for the circles in a Venn diagram to continue becoming more like a single circle.

Or perhaps we’ll see a chart where there is only one circle called The Web© and around it will be many, many other circles that slightly overlap it. Who knows? That’s really the fun part of what we do: continue learning and evolving.


The Ever-Evolving Spectrum of the Web is a post from CSS-Tricks

Categories: Designing, Others Tags:

An Interview with Håkon Wium Lie

April 18th, 2016 No comments

Håkon Wium Lie is one of the co-inventors of the original CSS specification. This interview digs into the past and future of CSS:

If CSS hadn’t been developed, designers might have gone elsewhere, explains Lie. HTML could have turned into more of a page description language, akin to PDF. Indeed, designers had already started making pictures out of their documents. “Because that meant you could control every pixel in there. So you could get the fonts, colours, you needed. You still see some of them around. If that had become the norm, we could have ended up with the web being a giant fax machine.”

Direct Link to ArticlePermalink


An Interview with Håkon Wium Lie is a post from CSS-Tricks

Categories: Designing, Others Tags:

Using .htaccess to Make URL SEO Friendly

April 18th, 2016 No comments
How to Make URLs SEO Friendly Banner

Everyone wants to rank their site on the first page of search engine results. There are many factors which influence search engine rankings, and one of them is human readable URLs or SEO friendly URLs. A SEO friendly URL must reflect the content of the site or blog. To know more about SEO friendly URLs, you can read this article from Search Engine Journal.

How to Make URLs SEO Friendly Banner

There are two ways you can make human readable URLs in PHP. One, by using Request_URi method and second via the .htaccess file. In this tutorial, I will be coming up with SEO friendly URLs for the blog using a .htaccess file. You can use the same practice to create the same for any store.

Let’s get started.

Let us suppose you are running a blog which is developed using custom PHP code. So, whenever you insert a new post on your blog, then the URL will be generated like this:

www.yoursite.com/index.php?blog_id=1234

In this tutorial, we will be changing the above URL to this:

www.yoursite.com/my-seo-url/

So whenever a person runs the above URL, the same content will be generated as generated when you are giving a blog ID to URL.

Step 1: Changes in Table

First, you need to alter your table in which your article is saved. Create a new column in it and name it seo-url.

Step 2: Function to Make SEO Friendly URL

Let us create a function which will generate SEO friendly URL for you based on the article title.

  
function seo_url($vp_string)

    {

        $vp_string = trim($vp_string);

        $vp_string = html_entity_decode($vp_string);

        $vp_string = strip_tags($vp_string);

        $vp_string = strtolower($vp_string);

        $vp_string = preg_replace('~[^ a-z0-9_.]~', ' ', $vp_string);

        $vp_string = preg_replace('~ ~', '-', $vp_string);

        $vp_string = preg_replace('~-+~', '-', $vp_string);

        $vp_string .= "/";

        return $vp_string;

    }

The above function will take article title as a string and return SEO URL. Like this:

my-SEO-URL/

You need to save this URL in the same column which we created in the previous step.

Step 3: Changes in .htaccess file

Since we have generated an SEO URL, let us make some changes in .htaccess which will redirect the URL to the content that is saved in the database. If you haven’t created any, then create a new file and name it .htaccess. Now paste the following code in it:

RewriteEngine On
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteRule ^(([A-Za-z0-9]+[-]+[A-Za-z0-9]+)+[/])$  index.php?blog_url=$1    [NC,L]    # Handle blog requests

Let’s understand the above code step by step:

The first line is telling Apache that we are going to rewrite some rules

RewriteEngine On

The second and third line is a condition which is checking that the calling URL is not a file or directory name. If it is one of them, the URL will not be rewritten.

RewriteCond %{SCRIPT_FILENAME} !-d
RewriteCond %{SCRIPT_FILENAME} !-f

And the last line is our rewrite URL. Now here’s how this is working: The word after RewriteURL^(([A-Za-z0-9]+[-]+[A-Za-z0-9]+)+[/])$” is a Regex expression which checks the URL after the “slash(/)” of a complete domain name. You can use this site to learn more about Regex.

Now if the URL is matched by Regex expression the matched URL will then be redirected to index.php?blog_url=(matched URL) in the blog_url variable.

Note: If there is an error in .htaccess file you will get 500 internal server error.

Step 4: Changes in Index File

Now in URL index.php file you will get this URL using $_GET[‘blog_url’] and match this URL from your table and can show the full article quickly. For example, in your index.php file your database query will be changed into this:

$url = $_GET['blog_url'];

$query = "SELECT articles.article_name,articles.article_content,categories.category_name,articles.img,users.u_fname,users.u_lname,DATE_FORMAT(articles.date,'%d %b, %Y') as dates

FROM article

INNER JOIN users

ON users.user_id = article.user_Id

INNER JOIN articles

ON articles.article_id = article.article_id

INNER JOIN categories

ON categories.category_id = articles.category_id

WHERE articles.url = '$url'";

And all things will remain the same. When you run your new URL, you will get the same content as you are getting when sending blog IDs.

Summary

In the article above, I have taught you how to create SEO friendly URLs, what changes will be required and how to redirect the URL. If you are unable to understand it through my article, feel free to contact me or leave a comment below. I’ll get back to you as soon as I can.

Read More at Using .htaccess to Make URL SEO Friendly

Categories: Designing, Others Tags:

Using .htacess to Make URL SEO Friendly

April 18th, 2016 No comments
How to Make URLs SEO Friendly Banner

Everyone wants to rank their site on the first page of search engine results. There are many factors which influence search engine rankings, and one of them is human readable URLs or SEO friendly URLs. A SEO friendly URL must reflect the content of the site or blog. To know more about SEO friendly URLs, you can read this article from Search Engine Journal.

How to Make URLs SEO Friendly Banner

There are two ways you can make human readable URLs in PHP. One, by using Request_URi method and second via the .htaccess file. In this tutorial, I will be coming up with SEO friendly URLs for the blog using a .htaccess file. You can use the same practice to create the same for any store.

Let’s get started.

Let us suppose you are running a blog which is developed using custom PHP code. So, whenever you insert a new post on your blog, then the URL will be generated like this:

www.yoursite.com/index.php?blog_id=1234

In this tutorial, we will be changing the above URL to this:

www.yoursite.com/my-seo-url/

So whenever a person runs the above URL, the same content will be generated as generated when you are giving a blog ID to URL.

Step 1: Changes in Table

First, you need to alter your table in which your article is saved. Create a new column in it and name it seo-url.

Step 2: Function to Make SEO Friendly URL

Let us create a function which will generate SEO friendly URL for you based on the article title.

  
function seo_url($vp_string)

    {

        $vp_string = trim($vp_string);

        $vp_string = html_entity_decode($vp_string);

        $vp_string = strip_tags($vp_string);

        $vp_string = strtolower($vp_string);

        $vp_string = preg_replace('~[^ a-z0-9_.]~', ' ', $vp_string);

        $vp_string = preg_replace('~ ~', '-', $vp_string);

        $vp_string = preg_replace('~-+~', '-', $vp_string);

        $vp_string .= "/";

        return $vp_string;

    }

The above function will take article title as a string and return SEO URL. Like this:

my-SEO-URL/

You need to save this URL in the same column which we created in the previous step.

Step 3: Changes in .htaccess file

Since we have generated an SEO URL, let us make some changes in .htaccess which will redirect the URL to the content that is saved in the database. If you haven’t created any, then create a new file and name it .htaccess. Now paste the following code in it:

RewriteEngine On
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteRule ^(([A-Za-z0-9]+[-]+[A-Za-z0-9]+)+[/])$  index.php?blog_url=$1    [NC,L]    # Handle blog requests

Let’s understand the above code step by step:

The first line is telling Apache that we are going to rewrite some rules

RewriteEngine On

The second and third line is a condition which is checking that the calling URL is not a file or directory name. If it is one of them, the URL will not be rewritten.

RewriteCond %{SCRIPT_FILENAME} !-d
RewriteCond %{SCRIPT_FILENAME} !-f

And the last line is our rewrite URL. Now here’s how this is working: The word after RewriteURL^(([A-Za-z0-9]+[-]+[A-Za-z0-9]+)+[/])$” is a Regex expression which checks the URL after the “slash(/)” of a complete domain name. You can use this site to learn more about Regex.

Now if the URL is matched by Regex expression the matched URL will then be redirected to index.php?blog_url=(matched URL) in the blog_url variable.

Note: If there is an error in .htaccess file you will get 500 internal server error.

Step 4: Changes in Index File

Now in URL index.php file you will get this URL using $_GET[‘blog_url’] and match this URL from your table and can show the full article quickly. For example, in your index.php file your database query will be changed into this:

$url = $_GET['blog_url'];

$query = "SELECT articles.article_name,articles.article_content,categories.category_name,articles.img,users.u_fname,users.u_lname,DATE_FORMAT(articles.date,'%d %b, %Y') as dates

FROM article

INNER JOIN users

ON users.user_id = article.user_Id

INNER JOIN articles

ON articles.article_id = article.article_id

INNER JOIN categories

ON categories.category_id = articles.category_id

WHERE articles.url = '$url'";

And all things will remain the same. When you run your new URL, you will get the same content as you are getting when sending blog IDs.

Summary

In the article above, I have taught you how to create SEO friendly URLs, what changes will be required and how to redirect the URL. If you are unable to understand it through my article, feel free to contact me or leave a comment below. I’ll get back to you as soon as I can.

Read More at Using .htacess to Make URL SEO Friendly

Categories: Designing, Others Tags:

Microsoft Visual Studio Code Reaches 1.0

April 18th, 2016 No comments
visual-studio-code

Microsoft’s Visual Studio Code has recently reached its 1.0 release. Over the course of past few months, Microsoft has been trying hard to provide a stable and robust performance in Visual Studio Code, with numerous bug fixes and performance upgrades.

Announcing the release of Visual Studio Code 1.0, Microsoft also told the world that this particular code editor now has over a thousand extensions to make use of, and you can now use any language or runtime in Visual Studio Code with the help of such extensions.

What started as an experiment to build a production quality editor using modern web technologies has blossomed into a new kind of cross-platform development tool, one that focuses on core developer productivity by centering the product on rich code editing and debugging experiences. Visual Studio Code brings the industry-leading experiences of Visual Studio to a streamlined development workflow, that can be a core part of the tool set of every developer, building any kind of application.

Getting to “1.0” over the last few months has been about more than features. We have worked with the community to further improve stability, fixing hundreds of bugs. And we’ve pushed hard on getting the best performance we can out of the editing experience.

visual-studio-code

Visual Studio Code 1.0 is also fully localized, and the default version comes with native support for 9 languages.

Learn more about Visual Studio Code 1.0 here.

Read More at Microsoft Visual Studio Code Reaches 1.0

Categories: Designing, Others Tags:

Best Practices for Sliding Hamburger Menus

April 18th, 2016 No comments
featured-hamburger-sliding-drawer-mobile-nav

Hamburger icons are those little three-bar icons you see in the corner of many websites and mobile apps. These primarily trigger a sliding drawer navigation which contains links to pages all around the website. Sliding drawer nav menus are great for responsive design but they can also be tricky to implement. These tips will help designers come to terms with the most popular solutions for hamburger menu design.

Please note this article will not be a discussion on the pros & cons of using hamburger menus. These are just some good tips and design patterns for building sliding drawer hamburger menus. Plenty of alternate navigation styles exist which could be used in place of sliding menus if these feel too restricting.

But well-designed sliding nav menus can fit perfectly into most layouts and have become a well-known interface style by most smartphone users.

Extensive Browser Support

Every major web browser and operating system should be considered when designing these menus. However mobile users would be the ones truly afflicted if they were unable to browse through a website.

The majority of modern browsers support pure CSS sliding menus and basically all of them support JavaScript. So a good idea might be to use pure CSS for the animation with JavaScript as a fallback. I wrote a great tutorial detailing how to create this effect for any layout.

Generally speaking the real troublemakers would be older smartphones and/or depreciated browsers like Internet Explorer 6 or Firefox 2. While these older browsers do support JavaScript, they may not support CSS rendering for menus on top of content or sliding animations.

But at some point you’ll have to accept which browsers are being support and which aren’t. It’s possible to design a fallback using IE conditionals where the sliding drawer becomes an inline block list of links.

Your goal should be to support the widest variety of browsers without compromising the design. It may not be possible to support IE6 but you should aim for the vast majority of mobile operating systems along with all current browsers. Also try using Google Analytics to track which browsers are most commonly used by visitors over an extended period of time.

Use a Recognizable Icon

The traditional 3-bar icon is used by most websites with the sliding drawer menu. This is how the menu came to be named “hamburger” since the 3 bars could be considered a patty with two buns.

It’s easy to design your own hamburger from scratch or grab a free icon from various online sources. But the point is to remain consistent for a good user experience.

Icon design is already a confusing subject with so many different glyphs and symbols out there. By sticking with the traditional three-bar icon you give users a sense of closure because they will instinctively know(or assume) what it does. Most users are familiar with the 3-bar icon so it’s the safest bet.

Bring Focus to the Menu

There are different methods of drawing attention to a hamburger menu. Some use fancy animation while others take up the majority of the screen. Although there aren’t any incorrect methods, there are some that feel better to me from a UX perspective.

comedy central hamburger sliding nav

One of my favorite hamburger menus can be found on the homepage for Comedy Central. When the site is fullscreen all the navigation links stream across a horizontal navbar. However when the site drops below a certain width all the links are hidden within a sliding responsive nav menu.

The reason I love their effect is because the nav menu opens a dark modal over the page when triggered. So when a user opens the menu it’ll appear “on top” of the page because it won’t be shrouded within the semi-transparent dark layer. Also the website text cannot be selected which leaves the navigation as the only clickable item.

Their sliding drawer menu can be closed by either clicking the 3-line icon or clicking anywhere else on the page. It’s a simple effect and this is what makes it so great – the design blends perfectly without any major rendering bugs.

minute of silence mobile menu ui

But alternatively you might try going with a vertical navigation instead. This can be created from the same icon link, but instead have the navigation slide down from above the page.

You’ll see an example on The Minute of Silence mobile website. When the page is fullscreen it’ll use a sliding nav menu which appears vertically. This is when the site loads on the primary domain – but using the mobile prefix it’ll pull from the top menu instead.

I find this technique works best if you don’t have too many links in the menu. Vertical navs are perfect for large companies that have over a dozen links which people need to access. So the design style is completely relative to each website project.

Top Free Sliding Nav Plugins

Let’s wrap up these best practices with a collection of the best sliding navigation plugins. The majority are built for jQuery since it’s the most popular JavaScript library, but there are others available.

Take a look over the following plugins to see if any of them could be useful. When going for a customized hamburger menu it would be easier to just hard-code your own from scratch. But not every project needs a custom design and you will save time by going with a pre-built solution.

Slideout.js

slideout sliding drawer hamburger plugin

Very recently I stumbled onto Slideout.js which is a touch-enabled hamburger nav menu library. Slideout.js is not a plugin – it’s a dependency-free JS library for creating sliding drawer menus.

It has native scrolling and works great on all touchscreen devices. As of writing this article the Slideout GitHub page has frequent activity ranging only a few days back, which means the developers are still actively working on updates. So far I’m truly impressed with this project!

Shifter

shifter sliding menu navigation ui

Shifter is a lovable little guy because it’s a newer component library which has been minimized for production websites. This plugin does run off jQuery and incorporates all the traditional features you would expect.

The difference with Shifter is that it’s ridiculously simple. There are very few customizable options and the only methods to call are for open/close and to destroy a menu. If you’re skilled at writing JavaScript then this could be a library for you to customize yourself, but it won’t be fully-featured right out of the box.

Drawer

drawer css3 jquery plugin ui

The combination of CSS3 and JavaScript has been a true match made in heaven. Drawer is a jQuery plugin which relies on CSS3 as the natural method for transition effects. This is often better since the animations can be smoother and CSS is rarely disabled like JavaScript.

Please note that Drawer requires a hefty amount of plugins like iScroll to create some of the effects. But it does work great and looks fantastic on mobile devices.

Sidr

sidr jquery javascript sliding panel

For a more straightforward plugin you might try Sidr on purely-responsive websites. This plugin was built not only for hamburger menus but also to display the full menu on larger screens. Sidr is controlled programmatically so it can work from a click or swipe event. The code is easy to use and easy to customize for a first-timer.

Pure Drawer

pure drawer css library hamburger menu

The Pure Drawer library is built using CSS transition effects for off-canvas menus. This library is triggered exactly like sliding hamburger menus with the added benefit of relying on CSS to handle the majority of effects.

Pure Drawer has lots of custom options for pulling the menu left, right, or even from the top of the page. You can also change the animation style and icon design for the menu. If you want a nav made with pure CSS then I’d highly recommend this library your hamburger menu.

Slidebars

slidebars free jquery hamburger nav plugin

Slidebars is yet another jQuery plugin for implementing sliding sidebars and hamburger menus. It’s a little slower with development because the creator has been busy with other work. But it does have a GitHub project page where contributors can ask questions or supply bug fixes.

Wrap Up

Design is not full of rules, but rather guidelines for creating wonderful ideas. In web design these ideas need to be usable and easy to interpret on any screen. Hamburger menus get a lot of flak but they’re still used a lot because they work. So while this trend is still around it’s a good idea to create menus that users will anticipate rather than trying to radically change the game.

featured image source

Read More at Best Practices for Sliding Hamburger Menus

Categories: Designing, Others Tags:

Best of 2015: 100 Free Resources for Mobile Designers

April 18th, 2016 No comments
100 Free Resources for Mobile Designers

With the constant updates in a range of iPhones, Android-powered devices, and other smartphones, it is not surprising that mobile user interfaces take up a huge market share. Material design, a brand new Google’s visual language, adds fuel to the fire, strengthening this field and placing it in the dominant position. Good graphical material that can assist in this matter such as profiles, slide-out menus, weather widgets, various sorts of forms, controllers, navigations, and much more is always in demand. It helps quickly compose a mockup of the app and streamline the workflow. Today we are going to replenish your toolkit with 100 best mobile UI designs from 2015.

Best of 2015: 100 Free Resources for Mobile Designers

Atomic iOS UI Kit for iPhone

Creator: Atomic Team
License: Special Terms of Use.

Android UI Kit Free Download

android ui kit
Creator: 123creative
License: Free for commercial use.

Material Design UI

material design ui
Creator: Azendoo Design Team
License: Declared as Free, no proper license given.

Daily UI

daily UI
Creator: Paul Flavius Nechita
License: Declared as Free, no proper license given.

Free iOS9 Vector GUI Template for Illustrator

ios9 illustrator
Creator: Vasil Enchev
License: Declared as Free, no proper license given.

Retina UI Kit

retina ui kit
Creator: Bradley Bussolini
License: Declared as Free, no proper license given.

Free UI Kit

dark ui kit
Creator: Hervé // Crelcreation
License: Declared as Free, no proper license given.

Free App Profile UI PSD

profile ui
Creator: Redesign Case
License: CC BY-NC 4.0.

Material UI Kit Lollipop 5.1.1

material ui kit
Creator: Redesign Case
License: Declared as Free, no proper license given.

Android Lollipop GUI Kit V-5.1.1 (Vol-2)

flat android lollipop
Creator: Redesign Case
License: Declared as Free, no proper license given.

Hit the Monkey Game UI Kit for iPhone 6

game ui kit
Creator: Redesign Case
License: CC BY-NC 4.0.

Spool UI

spool ui
Creator: Sergey Melnik and Think Mobiles
License: Attribution-NonCommercial-NoDerivative.

iOS 9 GUI

ios 9 gui
Creator: Facebook
License: Declared as Free, no proper license given.

A1 Free UI Kit

a1 ui kit
Creator: Vahan Hovhannesian
License: CC BY-NC 4.0.

Stark UI Kit

stark ui kit
Creator: baianat
License: Declared as Free, no proper license given.

Social Car Concept UI Kit

social car concept
Creator: Octav Design
License: Declared as Free, no proper license given.

Material Design UI Kit

brown ui
Creator: Jakub Kosla
License: Declared as Free, no proper license given.

Touch Gesture Animations

touch gestures
Creator: Cihad Turhan
License: Declared as Free, no proper license given.

UI Kit for Stars

ui kit or stars
Creator: Dovydas Vystartas
License: The royalty-free license for both personal and commercial use.

iPhone 6 Music Player

iphone music player
Creator: Robert Berki
License: Declared as Free, no proper license given.

iOS 9 UI Kit

ios 9 ui kit
Creator: Oz Pinhas
License: Declared as Free, no proper license given.

Vonn Material Design UI Kit

vonn material design
Creator: visual hierarchy
License: SINGLE USER LICENCE.

Phoenix UI: Vol 1 – for iPhone 6 / Free PSD & Sketch

phoenix ui kit
Creator: Adrian Chiran
License: Declared as Free, no proper license given.

iPhone UI Kit

iphone ui kit
Creator: Adrian Chiran
License: Use it for any of your projects.

Cardzz iOS UI Kit

cardzz ui
Creator: Volodymyr Kurbatov.
License: Declared as Free, no proper license given.

Elegance UI Kit

elegance ui kit
Creator: Fatih Sinan
License: Declared as Free, no proper license given.

Food and Drink UI Kit

food ui
Creator: Sergiu Firez.
License: Declared as Free, no proper license given.

Mobile Fashion & Ecommerce UI Kit

fashion ui
Creator: Hoang Bin
License: Declared as Free, no proper license given.

Funtique Game UI Kit

funtique ui
Creator: Vasili Tkach.
License: Declared as Free, no proper license given.

Ghost Ship Mobile UI Kit Free

ghost ui kit
Creator: Hoarrd!
License: Declared as Free, no proper license given.

UI Kit for Travel Apps

travel ui kit
Creator: Five agency and Ena Bacanovic
License: Declared as Free, no proper license given.

eCommerce UI Kit

ecommerce ui kit
Creator: Ena Bacanovic
License: Declared as Free, no proper license given.

Routes UI Kit for iOS

routes ui kit
Creator: Beans UI Goods
License: Declared as Free, no proper license given.

Chat UI

chat ui
Creator: invisionapp
License: Declared as Free, no proper license given.

Mobile UI Kit

mobile ui kit
Creator: symu
License: Declared as Free, no proper license given.

Simple UI Kit

simple ui kit
Creator: Nick
License: Declared as Free, no proper license given.

Pulse UI Kit

pulse ui kit
Creator: Web Donut
License: Declared as Free, no proper license given.

Novo UI Kit

novo ui kit
Creator: Alba Losada
License: Declared as Free, no proper license given.

Crystallize Material UI Kit

material ui crystallize
Creator: Alon Ashkenazy
License: Declared as Free, no proper license given.

Fashion UI Kit

fashion ui kit
Creator: plus8
License: Declared as Free, no proper license given.

Mobile Dashboard

mobile dashboard
Creator: Anh Tus
License: Declared as Free, no proper license given.

Time Management App

time management app
Creator: Feifei Wang
License: Declared as Free, no proper license given.

Hotspots App

hotspots app
Creator: Bogdan Lupascu.
License: Declared as Free, no proper license given.

Axis Google Material Concept

axis bank prototype
Creator: Agile Infoways
License: Declared as Free, no proper license given.

iCollection UI Kit

iCollection
Creator: uisurf
License: Declared as Free, no proper license given.

Care – Car Remote Control App

car control ui
Creator: Alexandr Demidov
License: Declared as Free, no proper license given.

EventPro UI Kit

eventpro
Creator: Stanislav Hristov and DTAIL STUDIO
License: CC BY-NC 4.0.

iOS 8 GUI Pack

ios8 ui
Creator: bypeople and Proto.io team
License: Free to use it under a Creative Commons Attribution license.

Nerdial App UI

nerdial ui
Creator: uisurf
License: Declared as Free, no proper license given.

UI Kit

light ui kit
Creator: Karen Liu
License: Free for personal and commercial use.

Material Design mobile UI kit

material design mobile ui
Creator: epicpxls
License: Declared as Free, no proper license given.

Mobile Material Screens

mobile material uis
Creator: epicpxls
License: Declared as Free, no proper license given.

eCommerce Mobile Screens

ecommerce mobile screens
Creator: epicpxls
License: Declared as Free, no proper license given.

Material Design Dark UI Kit

dark material ui
Creator: epicpxls
License: Declared as Free, no proper license given.

Uber iOS Wireframe Kit

uber ios
Creator: John Francis
License: Declared as Free, no proper license given.

Image Screen PSD

image screen psd
Creator: Nick Jarvis
License: Declared as Free, no proper license given.

Mobile App UI Kit

mobile app ui
Creator: graphberry
License: Declared as Free, no proper license given.

Zen Transparent UI

zen ui
Creator: Virgil Pana
License: Declared as Free, no proper license given.

iPhone 6 GUI Template (iOS 8)

ui kit for ios6
Creator: teehan+lax
License: Declared as Free, no proper license given.

iPhone GUI Template (iOS 7)

iphone gui template
Creator: teehan+lax
License: Declared as Free, no proper license given.

MFD UI Kit

mfd ui kit
Creator: madefordesigners
License: Free to use both commercial or personal.

Blog UI Kit

blog ui
Creator: Thomas Budiman
License: Free to use both commercial or personal.

Chart UI Kit

chart ui kit
Creator: Marina Matijaca
License: Free for personal and commercial use.

Awesome UI Kit

bright ui
Creator: Mohsin Khan
License: Free for personal and commercial use.

To Let App for iOS

to let app
Creator: chyan me
License: Declared as Free, no proper license given.

News Paper App UI

news paper ui
Creator: Mushfiq Islam
License: Declared as Free, no proper license given.

Sales App Concept

sales app concept
Creator: Bradley Bussolini
License: Attribution-NonCommercial-NoDerivatives.

iOS Travel App Concept

blueish travel ui
Creator: Bradley Bussolini
License: CC BY-NC 4.0.

SoundCloud Redesign

sound cloud redesign
Creator: Sultan Mahmud
License: Attribution-NonCommercial-NoDerivatives.

eCommerce iOs App “Material Style”

blueish ecommerce
Creator: Sultan Mahmud
License: CC BY-NC 4.0.

Material Design Fitness Dashboard UI Kit

fitness dashboard
Creator: impekable
License: Declared as Free, no proper license given.

Calendar Mobile UI Kit

calendar mobile ui
Creator: impekable
License: Declared as Free, no proper license given.

Hospital Dashboard UI Kit

hospital dashboard
Creator: impekable
License: Declared as Free, no proper license given.

Maps Mobile UI Kit

maps mobile ui
Creator: impekable
License: Declared as Free, no proper license given.

Beautiful Free Kit iOS – Sketch and PSD

purple ui
Creator: ThinkMobiles
License: Declared as Free, no proper license given.

Mobile UI Kit

mobile ui with neon touches
Creator: Thijs
License: Declared as Free, no proper license given.

Delicious – UI Kit

delicious ios app
Creator: Robert Anitei
License: Declared as Free, no proper license given.

Sketch UI Kit

massive ui kit
Creator: InVision
License: Declared as Free, no proper license given.

Valley UI Kit

valley ui kit
Creator: uiuxassets
License: Declared as Free, no proper license given.

Resnap iOS App UI

resnap ui
Creator: Ales Nesetril
License: Declared as Free, no proper license given.

Let’s Go Travel App

purple screens
Creator: Gouse Mohammed
License: Declared as Free, no proper license given.

Different UI Kit

bluish screens
Creator: David Magère
License: Declared as Free, no proper license given.

50 Free iOS App Screens for Sketch

sign in screens
Creator: Jardson Almeida
License: Creative Commons 4.0.

Music App

music player ui
Creator: Jardson Almeida
License: Declared as Free, no proper license given.

UI Mobile App

blue ui
Creator: Dima Miroshnichenko
License: Declared as Free, no proper license given.

Wohoo

wohoo ui kit
Creator: zippypixels
License: Free for personal and commercial use.

Android Lollipop for Sketch 3

android lolliop for sketch
Creator: Brian Moyano
License: Declared as Free, no proper license given.

Lithium – Free Mobile UI Kit

lithium ui
Creator: Michael Novikov
License: Declared as Free, no proper license given.

iOS9 GUI Template for Illustrator

ios9 gui kit
Creator: Vasil Enchev
License: Declared as Free, no proper license given.

App Presentation Templates

app presentation mockup
Creator: name
License: Declared as Free, no proper license given.

Philomela – iPhone 6 Music Player

iphone 6s ui
Creator: Robert Berki
License: Declared as Free, no proper license given.

Breathe UI Kit

mobile ui kit for app
Creator: Christian Veigt
License: Declared as Free, no proper license given.

Free UI Kit

free ui kit
Creator: Alexandr Well
License: Declared as Free, no proper license given.

Stars UI Kit

stars ui kit
Creator: Dovydas Vystartas
License: royalty-free license for both personal and commercial use.

My Secret Spot – Free UI Kit

my secret spot
Creator: Florentin Steiner
License: Free for personal and commercial use.

Winter UI

winter ui
Creator: Andrey Antar
License: Free for personal and commercial use.

CrowdPlayer UI Kit

crowdplayer ui
Creator: Dawid Dapszus
License: Declared as Free, no proper license given.

Flat Mobile App UI

flat mobile ui
Creator: Makasanas
License: Declared as Free, no proper license given.

Photos App

photos app
Creator: Virgil Pana
License: Declared as Free, no proper license given.

Material Movie App Mockup

material movie app
Creator: Adrien Thomas
License: Declared as Free, no proper license given.

(dpe)

Categories: Others Tags:

Designing complex products

April 18th, 2016 No comments

You know that unsettling feeling when you’re half way through a project and you’re presenting design concepts? No major feedback, smiles across the table, heads nodding yes. Home run right? No, that feeling scares the sh*t out of me because you know there’s complexity lurking below and it will surface before you’re done solving the problem. If you don’t overcome it, it can crush your productivity and even kill the product before it sees the light of day.

Complexity in product design tends to rear its head in two ways: 1) the complexity of managing people and opinions; 2) the complexity of designing the product itself. It’s not always intuitive how to keep your head above water in a sea of features, users and stakeholders. I’ve certainly fallen on my face in the past, so I’d like to share some insights I’ve gleaned about tackling these big design projects.

Change the conversation

I’ll start here, since this is an over-arching theme for managing any design project. As designers we too often inherit projects or requirements and accept them as-is. We try to do a good job with the little information we have then get frustrated later when pressured to change the design to address changing constraints.

Part of why designing products is hard is because they represent high-stakes environments and there are a lot of opinions in the mix. Sadly, a design voice isn’t always part of that mix. It’s natural to blame the business, but the one you should blame is yourself.

It’s our responsibility as designers to change the conversation

It’s our responsibility as designers to change the conversation. We need to educate our clients, bosses and teams on how to be successful in a design process. This is hard: sometimes I feel like our design sermon falls on deaf ears. There’s no silver bullet, but here are some techniques that help.

Show them where they’re going, before you take them there

At the outset of a project I present stakeholders with a peek at our design process. I walk everyone through each major stage and show sample deliverables of what to expect. Then at various points in the project, I remind everyone where we are and where we’re going next.

Sample process and deliverables timeline

In addition to explaining the process, I think it’s important to explain what types of feedback I expect and when I expect it. Sometimes I even explain how and why feedback is essential. That way it’s clear that both sides have a responsibility to make the design successful.

Talk to the boss

Whenever we start a new design project I ask to meet with the “boss”. Usually it’s the CEO, or most senior person I can get access to. I like to hear the vision and expected outcomes straight from the source.

I take copious notes and try to capture the sentiment and “voice” of what’s being said. Then I re-use the same language later when advocating for design decisions. This has served me well, because nobody wants to argue with the boss ?

When things get confusing, and they often do, I try to re-align with what I heard in that original meeting. As design practitioners it’s our job to translate the company vision into elegant solutions. There’s nothing better than the voice of the leadership to help remind you of the bigger picture.

Empathize!

As a part of the discovery phase we typically gather executives and key stakeholders into a room to tell us about their customers. The goal is to get stakeholders to let their guards down, take a step back and think about the product from an empathetic perspective.

We use a tactic called an empathy map to facilitate the discussion. The premise is simple, ask your stakeholders what their customers are thinking, doing, saying, hearing and feeling then map it to a persona. We typically do this for 2–3 key personas scoped to a specific time or interaction in the product.

Smattering of empathy maps from office parks around the country

After using this technique on a few projects we noticed consistent (and surprising) feedback: “That was the first time we’ve had all the executives in a room talking about our customers. It was really insightful.” So we started using this technique all the time, as you can see from the image above.

It may seem hokey but it’s a powerful way to tie tasks and insights to real users in the system. In many cases, stakeholders I’ve worked with haven’t participated in a rigorous design process before, so starting here was appropriate and helped establish a design authority in a benign way.

Understand frequency

If you’re working on overhauling an existing product, its not uncommon to find yourself cataloging an insane amount of features that need to be present in the redesign. One common thread I see in big software products is that they tend to be one-size-fits all solutions. In other words, they’re monolithic products that do everything for everybody. If there was one hashtag for these products it would be #complex. Taking on a project like this can be daunting, and to be successful you need to understand frequency of use.

Understanding how frequently a feature, screen, tab, or even an input box is used gives you a sense for priority. I find it extremely helpful for clients to comb through existing screens and circle elements they use everyday and cross out anything they never use or use infrequently. Sometimes we describe it as the 80/20 activity (circle the things you use 80% of the time and cross out anything else).

Ask clients to circle the frequently used, and cross out rarely touched items

The figure above is an artifact from a project where we needed to extract the key elements for one specific persona. The goal is to understand what people are actually using then prioritize those features in the redesigned workflows.

Find the beginning and the end

Most of the time a product is a means to an end. The need for the product usually comes from somewhere else, and the output goes somewhere else.

It’s easy to get wrapped up in the process of crafting pixel-perfect designs and overlook the beginning and end. It’s unlikely your users are looking at your product on a crisp retina screen, in a perfectly sized window without any other distractions. You should ask the questions “Where does this information come from?” and “Where does it go next?”.

The answers to these questions are critical for understanding your app’s context. The complexity of the ecosystem your product lives in can have a big impact on your designs. You may learn that your product lives on a desktop with 30 other windows open. Or that it’s primarily used outside on a tablet or for some unintended purpose altogether.

Interviews uncovered people using the product in wildly different ways

The figure above highlights this concept in action. During an onsite interview we compared how people actually use the product with what we were told from stakeholders. To our surprise each of the participants used the product in a completely different way.

Understanding how the user’s focus and attention was shared between other products and tasks completely changed our redesign strategy.

Prioritize discoverability and learnability

When you download a new app for your phone, it has very short window to onboard you and provide value or it’s dead. That’s a big reason to promote discoverability, because as a consumer you have a choice to use that product or 100 others like it.

This stigma of discoverability tends to carry over into business-class software too. We’ve heard critiques from clients saying they’re worried users won’t find a particular feature, so we should make it more prominent or give it more emphasis. If that happens enough times, you guessed it, things get messy and complex.

This is where we often make the argument for learnability. Not every feature needs to blast you in the face to be usable, an interaction can be learned. Good interactions only need to be be learnt once.

It’s the nature of the beast, complex systems require the prioritization of features at the expense of visibility to others. It’s our job to uncover the primary use cases and make them as intuitive as possible. Users should never have to “discover” frequently used items, nor should they be required to memorize documentation to use the product.

Cleanliness and clarity

One really big challenge in any business-class product is managing information density. Too much information on the page puts users in a mental straight jacket, too little and it starts making it cumbersome to reach meaningful insights. So how do you strike the right balance?

Cleanliness

Sometimes you have a lot of information to cram into a small space, but it’s not critical to have it all on-hand. In this case, we often suggest a progressive reveal strategy for decluttering the UI. Progressive reveal is based on the principle that the user’s interest drives information fidelity.

8.cleanliness

Progressive reveal?—?showing more information depth based on interest

The figure above shows this idea in action. The information in the UI is structured so only the core elements are visible. Then more fidelity is introduced when the user wants it, and no sooner. The trade off, of course, is speed to insight, but you get the benefit of a cleaner, less cluttered UI.

Clarity

On the other hand, some products demand a high-level of data visibility for the job to be done. Financial, healthcare, and e-commerce are industries known for having notoriously complex products.

When data density is important, try to be meticulous about clarity. The way to make dense UIs clear is by being ultra consistent and crisp with the visual language.

Systematic use of color, typography, and labeling help keep this UI clear and concise

Dialing in that consistency means exercising extreme constraint with the following:

  • type variations;
  • button styles;
  • simple navigation systems.

And being systematic about:

  • color choices;
  • labeling;
  • even the microcopy.

All this adds up to an elegant solution. This topic certainly warrants a bigger, more thoughtful writeup, so I’ll leave it at that.

Animate signature interactions

In the past we’ve spent countless hours generating wireframes and tediously connecting them with an absurd amount of lines, boxes and arrows. What’s worse, these deliverables tend to be hard for clients to understand and lead to bad assumptions and convoluted discussions.

Time and time again we see faces light up when we present any kind of motion concepts. So we started creating basic motion treatments to demonstrate signature (read: hard to communicate), interactions.

Early navigation concept that was would have been tough to communicate in static comps

Even with basic grayscale wireframes, these animations zap the ambiguity from the conversation. It’s not a replacement for full wireframes, but it’s a great tool to cut through the complexity of getting people on the same page quickly.

Give ’em what they asked for, and something they didn’t

Henry Ford’s most famous innovation adage captures it best:?“If I had asked people what they wanted, they would have said faster horses.”

Clients usually ask for “faster horses”, and probably have an idea of how it should look and work too. Believe it or not, this often leads to unnecessary complexity. We’ve all been there, and like most designers, we get asked to do plenty of things we’re not overly excited about. Nonetheless,it’s important to do what’s asked of you, but it’s also important to do what’s right.

it’s important to do what’s asked of you, but it’s also important to do what’s right

It may be considered a bit taboo to present alternative concepts, especially when they are unsolicited. When we have ideas on how to improve or simplify, we try to create a polarizing view and get stakeholders thinking about the problem in a fresh way.

11.surprise

Bringing unexpected ideas to the table can spark fresh thinking

The goal is to build trust with your client through thoughtful executions backed by reason and data. Our clients respect and generally embrace the fact that we’re challenging assumptions and bringing thoughtful ideas to the table.

Final thoughts

The changes in devices, apps, and access to data has caused design to evolve in some pretty exciting ways. Less than two years ago the thought of designing for laptop, phone, and watch simultaneously was rare, now it’s table stakes. The landscape of interactions is ever growing, and with that comes an even greater need to manage complexity.

It’s been a fun journey helping so many clients create great products over the years. If you’re on a similar path I hope these thoughts provide some guidance on your next big design project.

[– This article originally appeared on Medium, republished with the author’s permission. –]

150+ Gorgeous Summer Tone Photoshop Actions & Brushes – $24!

Source

Categories: Designing, Others Tags: