Entries by admin

6 of the best new portfolio sites

Original Source: http://feedproxy.google.com/~r/CreativeBloq/~3/YHOZbqHSNkM/6-of-the-best-new-portfolio-sites

Having a well-curated collection of your finest work on show is the surest way to impress people with your portfolio, but never underestimate the power of displaying it in the best possible way. To really turn heads, it pays to spend time – or money, if you're not that technically inclined – on building a portfolio website that takes full advantage of the latest trends and technology.

And if you're not sure what approach you should take with your site, you've come to the right place. We've found six of the most best new portfolio sites around, each of which do things in their own individual way and look stunning while they're doing it. Read on for a delicious helping of portfolio inspiration. You can also check out our general post of more inspirational design portfolios.

6 big portfolio trends of 2019
01. Hello Monday

6 of the best new portfolio sites: Hello Monday

We could play with these squishy thumbnails for hours

It's hard not to love Hello Monday's mission: to make Mondays better for everyone. This creative studio has an eight-point code of honour that starts off with the simple commitment to being nice, and its portfolio site is equally delightful. 

We love the squishy thumbnail images on the index page, and the way in which you can drag the edges inward until they finally snap back into place. Every project page is packed with detail and lovely big images, and if you need to know even more, many of them have a little 'In depth' link that makes an even more detailed case study slide into view.

02. Antidote

6 of the best new portfolio sites: Antidote

Antidote’s animated thumbnails tell you exactly what each director is about

Antidote is a Dublin-based agency that specialises in high-end commercials, and its portfolio site's designed for instant visual appeal. Rather than drop a big mission statement in front of you – the kind that every scrolls straight past to get to the good stuff – it puts its directors front and centre; a simple list of names, each one bringing up a set of animated thumbnails as you mouse over them. 

It's an effective way to get an instant taste of each director's style, and clicking through takes you a page of massive animated previews that you can click to see the full videos. Further written details are available, but overall Antidote's counting on showing, rather than telling, and it's a brilliant strategy.

03. Design Embraced

6 of the best new portfolio sites: Design Embraced

Design Embraced’s portfolio is full of lovey eye candy

As seen on Hello Monday's portfolio site, getting some movement into your page designs by deforming the edges of images is a great, on-trend look, and it's one that freelancer Anthony Goodwin, under the name Design Embraced, uses to excellent effect. 

As you scroll through his portfolio the assorted images ripple gently and zoom in slightly as you mouse over them; clicking activates a transition in which the thumbnail expands into the centre of the screen and the page loads behind it. Mesmerising stuff.

04. Headless Horse

6 of the best new portfolio sites: Headless Horse

Come for the horses, stay for the massive portfolio gallery

A glorious combination of cutting-edge technology and old-school styling, Headless Horse's portfolio site opens with full-screen video of a pack of horses, over which there's a simple text interface asking: Initiate system? Typing 'yes' takes you to the main portfolio, but there's fun to be had from typing 'no' and seeing what happens next. 

Once you've finished playing with the text interface, the portfolio itself takes the form of a massive black-and-white photo of pictures pinned to a wall; click on each one to see Headless Horse's various projects in depth.

05. Jamie Hunter

6 of the best new portfolio sites: Jamie Hunter

Jamie Hunter’s minimal portfolio makes a big impact with a light touch

Berlin-based Jamie Hunter describes himself as a holistic design and development person, and his beautifully minimal portfolio site does a splendid job of showcasing his work. Its index page does the job with a combination of kinetic typography and animated video loops of each project – along with plenty of white space to let the work breathe.

While there are only a few non-agency projects on display (he notes that a most of freelancing is agency work covered by NDAs), each one is displayed thoughtfully, with a detailed case study and enough enticing browser effects to leave you in no doubt as to his abilities.

06. Tangent

6 of the best new portfolio sites: Tangent

Tangent takes a clever approach to luring you in to inspect its work

Finally, we absolutely adore Tangent's approach to showcasing its work on its portfolio site. An identity and art direction studio based in Glasgow, it lures you in with a gallery of big black and white thumbnails; mousing over the thumbnails turns them full colour, and the briefest details of the project – the client's name and the nature of their business, and the work that Tangent did for them – appear in the four corners of the window in big, bold Helvetica.

Clicking through takes you to long case studies that are all about the full-screen imagery laced with short chunks of explanatory text; the perfect way to get a feel for each piece of work.

Related articles:

The wrong way to build a portfolio7 free portfolio hosting options for designersHow to refine your design portfolio

How to Create Custom Textures in Photoshop

Original Source: http://feedproxy.google.com/~r/Designrfix/~3/WjinM7mEcy0/how-to-create-custom-textures-in-photoshop

What is the first thing that comes to your mind when the word “Photoshop” is mentioned? For most people, the first thing that comes to mind is retouched images of Justin Bieber or some model, or maybe adding a different background to your picture so it looks like you’re in Italy instead of standing in […]

The post How to Create Custom Textures in Photoshop appeared first on designrfix.com.

Making Gooey Image Hover Effects with Three.js

Original Source: http://feedproxy.google.com/~r/tympanus/~3/-PSOCyJKGIg/

Flash’s grandson, WebGL has become more and more popular over the last few years with libraries like Three.js, PIXI.js or the recent OGL.js. Those are very useful for easily creating a blank board where the only boundaries are your imagination. We see more and more, often subtle integration of WebGL in an interface for hover, scroll or reveal effects. Examples are the gallery of articles on Hello Monday or the effects seen on cobosrl.co.

In this tutorial, we’ll use Three.js to create a special gooey texture that we’ll use to reveal another image when hovering one. Head over to the demo to see the effect in action. For the demo itself, I’ve created a more practical example that shows a vertical scrollable layout with images, where each one has a variation of the effect. You can click on an image and it will expand to a larger version while some other content shows up (just a mock-up). We’ll go over the most interesting parts of the effect, so that you get an understanding of how it works and how to create your own.

I’ll assume that you are comfortable with JavaScript and have some knowledge of Three.js and shader logic. If you’re not, have a look at the Three.js documentation or The Book of Shaders, Three.js Fundamentals or Discover Three.js.

Attention: This tutorial covers many parts; if you prefer, you can skip the HTML/CSS/JavaScript part and go directly go to the shaders section.

Now that we are clear, let’s do this!

Create the scene in the DOM

Before we start making some magic, we are first going to mark up the images in the HTML. It will be easier to handle resizing our scene after we’ve set up the initial position and dimension in HTML/CSS rather than positioning everything in JavaScript. Moreover, the styling part should be only made with CSS, not JavaScript. For example, if our image has a ratio of 16:9 on desktop but a 4:3 ratio on mobile, we just want to handle this using CSS. JavaScript will only get the new values and do its stuff.

// index.html

<section class="container">
<article class="tile">
<figure class="tile__figure">
<img data-src="path/to/my/image.jpg" data-hover="path/to/my/hover-image.jpg" class="tile__image" alt="My image" width="400" height="300" />
</figure>
</article>
</section>

<canvas id="stage"></canvas>
// style.css

.container {
display: flex;
align-items: center;
justify-content: center;
width: 100%;
height: 100vh;
z-index: 10;
}

.tile {
width: 35vw;
flex: 0 0 auto;
}

.tile__image {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
}

canvas {
position: fixed;
left: 0;
top: 0;
width: 100%;
height: 100vh;
z-index: 9;
}

As you can see above, we have create a single image that is centered in the middle of our screen. Did you notice the data-src and data-hover attributes on the image? These will be our reference images and we’ll load both of these later in our script with lazy loading.

Don’t forget the canvas. We’ll stack it below our main section to draw the images in the exact same place as we have placed them before.


Create the scene in JavaScript

Let’s get started with the less-easy-but-ok part! First, we’ll create the scene, the lights, and the renderer.

// Scene.js

import * as THREE from ‘three’

export default class Scene {
constructor() {
this.container = document.getElementById(‘stage’)

this.scene = new THREE.Scene()
this.renderer = new THREE.WebGLRenderer({
canvas: this.container,
alpha: true,
})

this.renderer.setSize(window.innerWidth, window.innerHeight)
this.renderer.setPixelRatio(window.devicePixelRatio)

this.initLights()
}

initLights() {
const ambientlight = new THREE.AmbientLight(0xffffff, 2)
this.scene.add(ambientlight)
}
}

This is a very basic scene. But we need one more essential thing in our scene: the camera. We have a choice between two types of cameras: orthographic or perspective. If we keep our image flat, we can use the first one. But for our rotation effect, we want some perspective as we move the mouse around.

In Three.js (and other libraries for WebGL) with a perspective camera, 10 unit values on our screen are not 10px. So the trick here is to use some math to transform 1 unit to 1 pixel and change the perspective to increase or decrease the distortion effect.

// Scene.js

const perspective = 800

constructor() {
// …
this.initCamera()
}

initCamera() {
const fov = (180 * (2 * Math.atan(window.innerHeight / 2 / perspective))) / Math.PI

this.camera = new THREE.PerspectiveCamera(fov, window.innerWidth / window.innerHeight, 1, 1000)
this.camera.position.set(0, 0, perspective)
}

We’ll set the perspective to 800 to have a not-so-strong distortion as we rotate the plane. The more we increase the perspective, the less we’ll perceive the distortion, and vice versa.

The last thing we need to do is to render our scene in each frame.

// Scene.js

constructor() {
// …
this.update()
}

update() {
requestAnimationFrame(this.update.bind(this))

this.renderer.render(this.scene, this.camera)
}

If your screen is not black, you are on the right way!

Build the plane with the correct sizes

As we mentioned above, we have to retrieve some additional information from the image in the DOM like its dimension and position on the page.

// Scene.js

import Figure from ‘./Figure’

constructor() {
// …
this.figure = new Figure(this.scene)
}
// Figure.js

export default class Figure {
constructor(scene) {
this.$image = document.querySelector(‘.tile__image’)
this.scene = scene

this.loader = new THREE.TextureLoader()

this.image = this.loader.load(this.$image.dataset.src)
this.hoverImage = this.loader.load(this.$image.dataset.hover)
this.sizes = new THREE.Vector2(0, 0)
this.offset = new THREE.Vector2(0, 0)

this.getSizes()

this.createMesh()
}
}

First, we create another class where we pass the scene as a property. We set two new vectors, dimension and offset, in which we’ll store the dimension and position of our DOM image.

Furthermore, we’ll use a TextureLoader to “load” our images and convert them into a texture. We need to do that as we want to use these pictures in our shaders.

We need to create a method in our class to handle the loading of our images and wait for a callback. We could achieve that with an async function but for this tutorial, let’s keep it simple. Just keep in mind that you’ll probably need to refactor this a bit for your own purposes.

// Figure.js

// …
getSizes() {
const { width, height, top, left } = this.$image.getBoundingClientRect()

this.sizes.set(width, height)
this.offset.set(left – window.innerWidth / 2 + width / 2, -top + window.innerHeight / 2 – height / 2)
}
// …

We get our image information in the getBoundingClientRect object. After that, we’ll pass these to our two variables. The offset is here to calculate the distance between the center of the screen and the object on the page.

// Figure.js

// …
createMesh() {
this.geometry = new THREE.PlaneBufferGeometry(1, 1, 1, 1)
this.material = new THREE.MeshBasicMaterial({
map: this.image
})

this.mesh = new THREE.Mesh(this.geometry, this.material)

this.mesh.position.set(this.offset.x, this.offset.y, 0)
this.mesh.scale.set(this.sizes.x, this.sizes.y, 1)

this.scene.add(this.mesh)
}
// …

After that, we’ll set our values on the plane we’re building. As you can notice, we have created a plane of 1 on 1px with 1 row and 1 column. As we don’t want to distort the plane, we don’t need a lot of faces or vertices. So let’s keep it simple.

But why scale it while we can set the size directly? Glad you asked.

Because of the resizing part. If we want to change the size of our mesh afterwards, there is no other proper way than this one. While it’s easier to change the scale of the mesh, it’s not for the dimension.

For the moment, we set a MeshBasicMaterial, just to see if everything is fine.

Get mouse coordinates

Now that we have built our scene with our mesh, we want to get our mouse coordinates and, to keep things easy, we’ll normalize them. Why normalize? Because of the coordinate system in shaders.

coordinate-system

As you can see in the figure above, we have normalized the values for both of our shaders. So to keep things simple, we’ll prepare our mouse coordinate to match the vertex shader coordinate.

If you’re lost at this point, I recommend you to read the Book of Shaders and the respective part of Three.js Fundamentals. Both have good advice and a lot of examples to help understand what’s going on.

// Figure.js

// …

this.mouse = new THREE.Vector2(0, 0)
window.addEventListener(‘mousemove’, (ev) => { this.onMouseMove(ev) })

// …

onMouseMove(event) {
TweenMax.to(this.mouse, 0.5, {
x: (event.clientX / window.innerWidth) * 2 – 1,
y: -(event.clientY / window.innerHeight) * 2 + 1,
})

TweenMax.to(this.mesh.rotation, 0.5, {
x: -this.mouse.y * 0.3,
y: this.mouse.x * (Math.PI / 6)
})
}

For the tween parts, I’m going to use TweenMax from GreenSock. This is the best library ever. EVER. And it’s perfect for our purpose. We don’t need to handle the transition between two states, TweenMax will do it for us. Each time we move our mouse, TweenMax will update the position and the rotation smoothly.

One last thing before we continue: we’ll update our material from MeshBasicMaterial to ShaderMaterial and pass some values (uniforms) and shaders.

// Figure.js

// …

this.uniforms = {
u_image: { type: ‘t’, value: this.image },
u_imagehover: { type: ‘t’, value: this.hover },
u_mouse: { value: this.mouse },
u_time: { value: 0 },
u_res: { value: new THREE.Vector2(window.innerWidth, window.innerHeight) }
}

this.material = new THREE.ShaderMaterial({
uniforms: this.uniforms,
vertexShader: vertexShader,
fragmentShader: fragmentShader
})

update() {
this.uniforms.u_time.value += 0.01
}

We passed our two textures, the mouse position, the size of our screen and a variable called u_time which we will increment each frame.

But keep in mind that it’s not the best way to do that. For example, we only need to increment when we are hovering the figure, not every frame. I’m not going into details, but performance-wise, it’s better to just update our shader only when we need it.

The logic behind the trick & how to use noise

Still here? Nice! Time for some magic tricks.

I will not explain what noise is and where it comes from. If you’re interested, be sure to read this page from The Book of Shaders. It’s well explained.

Long story short, Noise is a function that gives us a value between -1 and 1 based on values we pass through. It will output a random pattern but more organic.

Thanks to noise, we can generate a lot of different shapes, like maps, random patterns, etc.

noise-example1

noise-example2

Let’s start with a 2D noise result. Just by passing the coordinate of our texture, we’ll have something like a cloud texture.

noise-result1

But there are several kinds of noise functions. Let’s use a 3D noise by giving one more parameter like … the time? The noise pattern will evolve and change over time. By changing the frequency and the amplitude, we can give some movement and increase the contrast.

It will be our first base.

noise-result2

Second, we’ll create a circle. It’s quite easy to build a simple shape like a circle in the fragment shader. We just take the function from The Book of Shaders: Shapes to create a blurred circle, increase the contrast and voilà!

noise-result3

Last, we add these two together, play with some variables, cut a “slice” of this and tadaaa:

noise-result4

We finally mix our textures together based on this result and here we are, easy peasy lemon squeezy!

Let’s dive into the code.

Shaders

We won’t really need the vertex shader here so this is our code:

// vertexShader.glsl
varying vec2 v_uv;

void main() {
v_uv = uv;

gl_Position = projectionMatrix * modelViewMatrix * vec4(position, 1.0);
}

ShaderMaterial from Three.js provides some useful default variables when you’re a beginner:

position (vec3): the coordinates of each vertex of our mesh
uv (vec2): the coordinates of our texture
normals (vec3): normal of each vertex our mesh have.

Here we’re just passing the UV coordinates from the vertex shader to fragment shader.

Create the circle

Let’s use the function from The Book of Shaders to build our circle and add a variable to handle the blurriness of our edges.

Moreover, we’ll add the mouse position to the origin of our circle. This way, the circle will be moving as long as we move our mouse over our image.

// fragmentShader.glsl
uniform vec2 u_mouse;
uniform vec2 u_res;

float circle(in vec2 _st, in float _radius, in float blurriness){
vec2 dist = _st;
return 1.-smoothstep(_radius-(_radius*blurriness), _radius+(_radius*blurriness), dot(dist,dist)*4.0);
}

void main() {
vec2 st = gl_FragCoord.xy / u_res.xy – vec2(1.);
// tip: use the following formula to keep the good ratio of your coordinates
st.y *= u_res.y / u_res.x;

vec2 mouse = u_mouse;
// tip2: do the same for your mouse
mouse.y *= u_res.y / u_res.x;
mouse *= -1.;

vec2 circlePos = st + mouse;
float c = circle(circlePos, .03, 2.);

gl_FragColor = vec4(vec3(c), 1.);
}

Make some noooooise

As we saw above, the noise function has several parameters and gives us a smooth cloudy pattern. How could we have that? Glad you asked.

For this part, I’m using glslify and glsl-noise, and two npm packages to include other functions. It keeps our shader a little bit more readable and avoids having a lot of displayed functions that we will not use after all.

// fragmentShader.glsl
#pragma glslify: snoise2 = require(‘glsl-noise/simplex/2d’)

//…

varying vec2 v_uv;

uniform float u_time;

void main() {
// …

float n = snoise2(vec2(v_uv.x, v_uv.y));

gl_FragColor = vec4(vec3(n), 1.);
}

noise-result5

By changing the amplitude and the frequency of our noise (exactly like the sin/cos functions), we can change the render.

// fragmentShader.glsl

float offx = v_uv.x + sin(v_uv.y + u_time * .1);
float offy = v_uv.y – u_time * 0.1 – cos(u_time * .001) * .01;

float n = snoise2(vec2(offx, offy) * 5.) * 1.;

noise-result6

But it isn’t evolving through time! It is distorted but that’s it. We want more. So we will use noise3d instead and pass a 3rd parameter: the time.

float n = snoise3(vec3(offx, offy, u_time * .1) * 4.) * .5;

As you can see, I changed the amplitude and the frequency to have the render I desire.

Alright, let’s add them together!

Merging both textures

By just adding these together, we’ll already see an interesting shape changing through time.

noise-result7

To explain what’s happening, let’s imagine our noise is like a sea floating between -1 and 1. But our screen can’t display negative color or pixels more than 1 (pure white) so we are just seeing the values between 0 and 1.

explanation-noise1

And our circle is like a flan.

explanation-noise2

By adding these two shapes together it will give this very approximative result:

explanation-noise3

Our very white pixels are only pixels outside the visible spectrum.

If we scale down our noise and subtract a small number, it will be completely moving down your waves until it disappears above the surface of the ocean of visible colors.

noise-result8

float n = snoise(vec3(offx, offy, u_time * .1) * 4.) – 1.;

Our circle is still there but not enough visible to be displayed. If we multiply its value, it will be more contrasted.

float c = circle(circlePos, 0.3, 0.3) * 2.5;

noise-result9

We are almost there! But as you can see, there are still some details missing. And our edges aren’t sharp at all.

To avoid that, we’ll use the built-in smoothstep function.

float finalMask = smoothstep(0.4, 0.5, n + c);

gl_FragColor = vec4(vec3(finalMask), 1.);

Thanks to this function, we’ll cut a slice of our pattern between 0.4 et 0.5, for example. The shorter the space is between these values, the sharper the edges are.

Finally, we can mix our two textures to use them as a mask.

uniform sampler2D u_image;
uniform sampler2D u_imagehover;

// …

vec4 image = texture2D(u_image, uv);
vec4 hover = texture2D(u_imagehover, uv);

vec4 finalImage = mix(image, hover, finalMask);

gl_FragColor = finalImage;

We can change a few variables to have a more gooey effect:

// …

float c = circle(circlePos, 0.3, 2.) * 2.5;

float n = snoise3(vec3(offx, offy, u_time * .1) * 8.) – 1.;

float finalMask = smoothstep(0.4, 0.5, n + pow(c, 2.));

// …

And voilà!

Check out the full source here or take a look at the live demo.

Mic drop

Congratulations to those who came this far. I haven’t planned to explain this much. This isn’t perfect and I might have missed some details but I hope you’ve enjoyed this tutorial anyway. Don’t hesitate to play with variables, try other noise functions and try to implement other effects using the mouse direction or play with the scroll!

If you have any questions, let me know in the comments section! I also encourage you to download the demo, it’s a little bit more complex and shows the effects in action with hover and click effects ¯_(?)_/¯

References and Credits

Images from Unsplash
Three.js
GSAP from GreenSock
Smooth Scrollbar
glslify
glsl-noise

Making Gooey Image Hover Effects with Three.js was written by Arno Di Nunzio and published on Codrops.

Introducing 15 Best New Portfolios, October 2019

Original Source: https://www.webdesignerdepot.com/2019/10/introducing-15-best-new-portfolios-october-2019/

All the signs are that web design is entering a phase of exuberance, with clashing colors, rapidly changing graphics, and dense layouts replacing the minimalism that’s dominated digital design for the last decade. Portfolios are beginning to adopt this maximalist approach, but never fear, for those who aren’t quote ready for full-on retina burn on a Monday in late October, we’ve included a few beautifully minimal sites for you to enjoy.

Hello Monday

Hello Monday’s site is utterly charming, with a delightful animation that I could watch for hours. The work section of the site is a masonry-style vertical grid, which is less easy to browse than you would expect, thanks to the number of projects. The best parts of this site are the little details: I love that they tell you how many days it is until Monday, and the way that hamburger menu slips away as you scroll is super-slick.

Bold

Bold’s portfolio is about sending a powerful message. It’s the website equivalent of huge shoulder pads, and an enormous, solid gold smartphone. The way the border expands from the featured images, giving you the sense of zooming into the project is inspired. It helps to have huge-name clients as social proof, but this site is excellent at inspiring confidence in the designers behind it.

Analog is Heavy

Analog is Heavy is a creative photography practice that works with design studios to hone brand messages with high-quality product photography. Its approach to a portfolio is a vertically aligned grid of images, and that’s it. Targeting design agencies means that they’re speaking to an audience of visually educated professionals, giving Analog is Heavy the freedom to let its work sell itself.

Athletics

Another big agency, with a client list to kill for, Athletics jumps right into fullscreen video case studies of its work for clients like IBM. One trend with many of these portfolios is that work is cherry-picked to be showcased and then less-exciting work is linked to below the initial presentation. In Athletics’ case this means an interesting grid of lower-profile, but equally exciting work.

Brittany Chiang

Brittany Chiang builds things for the web. How’s that for a no-nonsense approach? This great little site feels very app-orientated thanks to the dark-mode color palette and the monospaced typeface. Its a single-pager, which are increasingly rare these days, and the simplicity of it works really well. Brittany has out UXed plenty of dedicated UX designers, by being true to herself.

Shohei Takenaka

As the web drifts towards maximalism, it’s great that there are still calm, simple, minimalist masterpieces to admire. Shohei Takenaka’s site is beautiful, with restraint, attention to detail, and ample whitespace. The subtle underlines on the menu text, and the images protruding into the white space to encourage scrolling, as well as the way the color bands are grouped when you scroll, are all perfect examples of clever UI design.

Aristide Benoist

Aristide Benoist’s portfolio features some beautiful typography. It’s great to see a developer take an interest in the finer points of design. The all-caps sans-serif text is a little too much to cope with in large amounts, but here it works just fine. My favourite part of the site is the transition from thumbnail to case study. Hover over the list of projects and a little flag-like ribbon will appear, click on it and it expands into a full project image, delightful!

WTF Studio

WTF Studio’s portfolio is as in-yer-face as the name suggests. A front for NYC-based creative director Able Parris, the site slaps you in the eyes with color and animation the moment it loads. But scroll down past the anarchic introduction and you’ll find a series of projects for household names presented as individual case studies. It’s exactly what big brands like to see: creativity and safe hands.

Jim Schachterle

Jim Schachterle’s site takes an approach that we don’t normally see: he’s opted for a dark green background. That simple choice, alongside the carefully paired project shots make for a sophisticated, and distinct style. Unfortunately the choice of typeface doesn’t work in places, at 12px the detail in the design is lost altogether, swapping it out for a simpler sans-serif whenever the font-size was under 18pt would have been a better choice.

Swwim

Perhaps it’s the chilly Northern climate at this time of year, but this Saint-Tropez looking site for Swwim warms my heart. The rounded sans-serif is an interesting choice — most designers would aim for sharp lines to emphasize precision. I adore the logotype, and its frivolity is echoed throughout the site in section titles. The less-subtle animation feels a little forced, but the wave motion is enticing, and brand-appropriate.

Hadrien Mongouachon

Hadrien Mongouachon is a freelance developer, so it makes perfect sense for him to demo his skills front and center on his site. He’s opted for a variation of the highly-trendy liquid effect, and it works really well. I’m not convinced by the sideways type — it only works in print because you can tilt the page — and the usability is a little compromised by the click-hold action. Once you’re accustomed to the site, it’s fun to traverse.

Butchershop

Butchershop is another design agency relying heavily on a video reel to sell its brand work. What’s really interesting about this site, is all the things it does “wrong”: the logo mark is positioned top right instead of top left, the title of its homepage is “Home”. It keeps breaking with received wisdom, so either they know something we don’t, or they didn’t get the memo about UX being a thing — you decide which.

Nikolas Type

It’s rare that we get to enjoy a purely type-based portfolio, because design work is visual, but this minimal showcase is Nikolas Wrobel’s Type Foundry, Nikolas Type. Click through to the product pages and you can edit the preview text. Thanks to the foundry being a small independent, it’s able to show some lovely samples that bring the type to life, something that larger foundries often fail to do.

Jam3

It seems video (not static images) are now a must for any portfolio site. Agencies want companies to see real-world experiences, and understand what the working relationship is like. Jam3 is no exception, but scroll past the looping video and you’ll find a rigorously organized set of projects. The menu isn’t easy to locate, but I do like agencies opening up about their approach, and culture. Plus there’s a cool bubble effect hovering over the menu items.

New Land

There’s a tendency among motion graphics and video firms to be slightly mysterious about who they are, and what they do — perhaps it comes from the high-concepts of advertising. New Land’s target audience probably do know who it is, because this is the kind of company that you don’t hire without some prior-knowledge. Interestingly the site is geared around tablet and mobile preferred interactions, as if intended to be passed around a meeting.

Source

p img {display:inline-block; margin-right:10px;}
.alignleft {float:left;}
p.showcase {clear:both;}
body#browserfriendly p, body#podcast p, div#emailbody p{margin:0;}

Nike Adapt Huarache Campaign

Original Source: http://feedproxy.google.com/~r/abduzeedo/~3/AKwf9frrXyk/nike-adapt-huarache-campaign

Nike Adapt Huarache Campaign
Nike Adapt Huarache Campaign

AoiroStudioOct 22, 2019

Our friends from Ars Thanea have shared the project they have worked with Nike. What is it this time? They were part of a campaign to promote the new Nike model: Adapt. Claiming its next-generation of tech and sports footwear. Here are a few keywords: self-lacing system, mobile app. Does that sound great? Let’s give it a look!

Nike Adapt is an innovative self-lacing system which, via a mobile app or using buttons located on the midsole, loosens or tightens cables around your foot. You can choose different modes or even create your own and set the one that fits you best at a particular moment.

Advertising

Nike Adapt Huarache CampaignNike Adapt Huarache CampaignNike Adapt Huarache CampaignNike Adapt Huarache CampaignNike Adapt Huarache CampaignNike Adapt Huarache CampaignBy Ars Thanea

About Ars Thanea

Ars Thanea is a design & craft studio based in Warsaw, Poland. With offices in Poland and New York; they have worked with so many brands in the industry whatever it is tech, fashion, entertainment and you name it. Make sure to follow their work through all channels.

Studio Site
Behance
Credits

Senior Creative Director: Mike Wood
Design Director: Anders Svensson
Design Director: Ryan Noonan
Designer: Yi-Fan Lu
Senior Producer: Perry King
Executive Creative Director: Peter Jaworowski
Art Directors: Bartek Kalinowski, Maciej Mizer
Studio Supervisor: Mikolaj Valencia
Producer: Karolina Sidorowicz
3D Lead Artist: Bartek Kalinowski
3D Artist: Bartek Kalinowski, Paweł Filip, Michal Serafin, Mateusz Bargiel, Piotr Wołoszyński, Bartek Dabkowski Compositing: Łukasz Stolarski, Mateusz Bargiel, Katarzyna Strzelczyk


How to add illustration to your designs for free

Original Source: http://feedproxy.google.com/~r/CreativeBloq/~3/NmRtvszSCy4/open-doodles

A bit of illustration can be an excellent way to enliven a design and bring a bit of humanity to it, particularly when it comes to web design. It's hard to spend any time on the web without coming across a collection of illustrated cartoon figures promoting a new startup; it's one of those hot web design trends that's not going away.

If you want to incorporate illustration into your designs but don't know how to draw or where to start, here's a brilliant solution from Pablo Stanley. He's created a library of hand-drawn illustrations called Open Doodles, and he's released them for free under a Creative Commons licence so that you can use them in any way you wish.

How to tell a story with your illustrations

Open Doodles

Open Doodles are free to use, copy, edit, remix, share, anything

Stanley's a big advocate of open design; he explains that when he was young and wanted to get into digital design he had no money, so had to pirate software and steal CDs from tech magazines in order to learn his skills – at least, until he got caught. "I now offer my stuff for free," he says, "because I know other people are equally eager to learn and are looking for guidance, anywhere they can. I hope that opening my work helps them grow, get better at their craft, and make their parents proud."

They may be free, but Stanley's Open Doodles don't compromise on quality. Rather than simply release his illustration as a set of static PNGs, he's making the actual source files available for download, so that you can check the layers and see how everything fits together, as well as getting a glimpse of his untidy process. "The opportunities to improve, build on top of, fix, and reinvent are yours to discover," he says.

Open Doodles: Generator

Use the generator to quickly set up your own colour scheme

While some of the Open Doodles are scans of hand-drawn sketches, most are illustrations that were drawn on an iPad in Procreate, vectorised in Illustrator and then made into a library with global styles in Sketch before being exported as both SVG and PNG.

As well as the downloadable images, Stanley has also built an Open Doodles Generator along with developer Fang-Pen Lin. This provides a straightforward interface that enables you to change the colours of the ink, accent and background for the illustrations, and then download a custom illustration pack in your chosen palette. There's also a set of ready-made compositions to make life even easier, as well as a gallery of example landing pages demonstrating how these illustrations can be put to work online.

Open Doodles landing page gallery

There’s even an inspiring gallery to give you ideas on how to use the illustrations

Under the CC0 license you're free to copy, edit, remix, share, or redraw the Open Doodles images for any purpose, without restriction. Stanley hopes that this will encourage other designers to create their own kits and share them with the world, and that Open Doodles will make it easer for designers to show the value of illustration in mockups.

And while he's making his illustrations available for free, he also hopes that designers will use them as placeholders before going on to hire actual illustrators to help to help tell their stories; he even provides a set of useful links.

To find out more and grab your own free illustrations, hit the Open Doodles site.

Related articles:

The illustrator hotlist 2019How to move from animation to illustration6 websites that use illustration brilliantly

Great Expectations: Using Story Principles To Anticipate What Your User Expects

Original Source: https://www.smashingmagazine.com/2019/10/users-expectations-story-principles/

Great Expectations: Using Story Principles To Anticipate What Your User Expects

Great Expectations: Using Story Principles To Anticipate What Your User Expects

John Rhea

2019-10-21T13:30:59+02:00
2019-10-21T16:07:51+00:00

Whether it’s in a novel, the latest box office smash, or when Uncle Elmer mistook a potted cactus for a stress ball, we all love stories. There are stories we love, stories we hate, and stories we wish we’d never experienced. Most of the good stories share structure and principles that can help us create consistent website experiences. Experiences that speak to user expectations and guide them to engage with our sites in a way that benefits both of us.

In this article, we’ll pull out and discuss just a few examples of how thinking about your users’ stories can increase user engagement and satisfaction. We’ll look at deus ex machina, ensemble stories, consistency, and cognitive dissonance, all of which center on audience expectations and how your site is meeting those expectations or not.

We can define a story as the process of solving a problem. Heroes have an issue, and they set out on a quest to solve it. Sometimes that’s epic and expansive like the Lord of the Rings or Star Wars and sometimes it’s small and intimate such as Driving Miss Daisy or Rear Window. At its core, every story is about heroes who have a problem and what they do to solve it. So too are visits to a website.

The user is the hero, coming to your site because they have a problem. They need to buy a tchotchke, hire an agency or find the video game news they like. Your site can solve that problem and thus play an important role in the user’s story.

Deus Ex Machina

It’s a term meaning “god from the machine” that goes back to Greek plays — even though it’s Latin — when a large, movable scaffolding or “machine” would bring out an actor playing a god. In the context of story, it’s often used to describe something that comes out of nowhere to solve a problem. It’s like Zeus showing up at the end of a play and killing the villain. It’s not satisfying to the audience. They’ve watched the tension grow between the hero and the villain and feel cheated when Zeus releases the dramatic tension without solving that tension. They watched a journey that didn’t matter because the character they loved did not affect the ending.

The danger of deus ex machina is most visible in content marketing. You hook the audience with content that’s interesting and applicable but then bring your product/site/whatever in out of nowhere and drop the mic like you won a rap battle. The audience won’t believe your conclusion because you didn’t journey with them to find the solution.

If, however, the author integrates Zeus into the story from the beginning, Zeus will be part of the story and not a convenient plot device. Your solutions must honor the story that’s come before, the problem and the pain your users have experienced. You can then speak to how your product/site/whatever solves that problem and heals that pain.

State Farm recently launched a “Don’t Mess With My Discount!” campaign:

Kim comes in to talk to a State Farm rep who asks about a Drive Safe and Save discount. First, for the sake of the discount, Kim won’t speed up to make a meeting. Next, she makes herself and her child hold it till they can get home driving the speed limit. Last, in the midst of labor, she won’t let her partner speed up to get them to the hospital. (Don’t mess with a pregnant lady or her discount.) Lastly, it cuts back to Kim and the agent.

State Farm’s branding and their signature red color are strong presences in both bookend scenes with the State Farm representative. By the end, when they give you details about their “Drive Safe and Save” discount you know who State Farm is, how they can help you, and what you need to do to get the discount.

It’s not a funny story that’s a State Farm commercial in disguise, but a State Farm commercial that’s funny.

Throughout the ad, we know State Farm’s motivations and don’t feel duped into liking something whose only goal is to separate us from our money. They set the expectation of this story being an ad in the beginning and support that throughout.

Another Approach

Sometimes putting your name upfront in the piece might feel wrong or too self-serving. Another way to get at this is to acknowledge the user’s struggle, the pain the user or customer already feels. If your site doesn’t acknowledge that struggle, then your product/site/whatever seems detached from their reality, a deus ex machina. But if your content recognizes the struggle they’ve been through and how your site can solve their problem, the pitch for deeper engagement with your site will be a natural progression of the user’s story. It will be the answer they’ve been searching for all along.

Take this testimonial from Bizzabo:

Emily Fullmer, Director of Global Events for Greenbook said, We are now able to focus less on tedious operations, and more on creating a memorable and seamless experience for our attendees.

Bizzabo solved a real world problem for Greenbook. (Large preview)

It shows the user where Greenbook was, i.e. mired in tedious tasks, and how Bizzabo helped them get past tedium to do what Greenbook says they do best: make memorable experiences. Bizzabo doesn’t come out of the woodwork to say “I’m awesome” or solve a problem you never had. They have someone attesting to how Bizzabo solved a real problem that this real customer needed to be fixed. If you’re in the market to solve that problem too, Bizzabo might be the place to look.

Ensemble Stories

Some experiences, like some stories, aren’t about a single person. They’re about multiple people. If the story doesn’t give enough attention to each member, that person won’t seem important or like a necessary part of the story. If that person has a role in the ending, we feel cheated or think it’s a deus ex machina event. If any character is left out of a story, it should change the story. It’s the same way with websites. The user is the story’s hero, but she’s rarely the only character. If we ignore the other characters, they won’t feel needed or be interested in our websites.

Sometimes a decision involves multiple people because a single user doesn’t have the authority to decide. For instance, Drupalcon Seattle 2019 has a “Convince Your Boss” page. They showcase the benefits of the conference and provide materials to help you get your boss to agree to send you.

You could also offer a friends-and-family discount that rewards both the sharer and the sharee. (Yes, as of this moment, “sharee” is now a word.) Dropbox does this with their sharing program. If you share their service with someone else and they create an account, you get additional storage space.

Dropbox offers an additional 250 MB of space for every friend you get to join their service.

You get extra space, you get extra space, and you get extra space (when you invite a friend). (Large preview)

But you don’t have to be that explicit about targeting other audiences than the user themselves. In social networks and communities, the audience is both the user and their friends. The site won’t reach a critical mass if you don’t appeal to both. I believe Facebook beat MySpace early on by focusing on the connection between users and thus serving both the user and their friends. MySpace focused on individual expression. To put it another way, Facebook included the user’s friends in their audience while MySpace didn’t.

Serving Diametrically Opposed Heros

Many sites that run on ad revenue also have to think about multiple audiences, both the users they serve and the advertisers who want to reach those users. They are equally important in the story, even if their goals are sometimes at odds. If you push one of these audiences to the side, they’ll feel like they don’t matter. When all you care about is ad revenue, users will flee because you’re not speaking to their story any longer or giving them a good experience. If advertisers can’t get good access to the user then they won’t want to pay you for ads and revenue drops off.

Just about any small market newspaper website will show you what happens when you focus only on advertisers’ desires. Newspaper revenue streams have gone so low they have to push ads hard to stay alive. Take, for instance, the major newspaper from my home state of Delaware, the News Journal. The page skips and stutters as ad content loads. Click on any story and you’ll find a short article surrounded by block after block after block of ad content. Ads are paying the bills but with this kind of user experience, I fear it won’t be for long.

Let me be clear that advertisers and users do not have to be diametrically opposed, it’s just difficult to find a balance that pleases both. Sites often lean towards one or the other and risk tipping the scales too far either way. Including the desires of both audiences in your decisions will help you keep that precarious balance.

One way to do both is to have ads conform to the essence of your website, meaning the thing that makes your site different i.e. the “killer app” or sine qua non of your website. In this way, you get ads that conform to the reason the users are going to the site. Advertisers have to conform to the ad policy, but, if it really hits on the reason users are going to the site, advertisers should get much greater engagement.

On my own site, 8wordstories.com, ads are allowed, but they’re only allowed an image, eight words of copy, and a two-word call to action. Thus when users go to the site to get pithy stories, eight words in length, the advertisements will similarly be pithy and short.

Advertisers and users do not have to be diametrically opposed, it’s just difficult to find a balance that pleases both.

Consistency

The hero doesn’t train as a medieval knight for the first half of the story and then find herself in space for the second half. That drastic shift can make the audience turn on the story for dashing their expectations. They think you did a bait-and-switch, showing them the medieval story they wanted and then switching to a space story they didn’t want.

If you try to hook users with free pie, but you sell tubas, you will get lots of pie lovers and very few tuba lovers. Worse yet is to have the free pie contingent on buying a tuba. The thing they want comes with a commitment or price tag they don’t. This happens a lot with a free e-book when you have to create an account and fill out a lengthy form. For me, that price has often been too high.

Make sure the way you’re hooking the audience is consistent with what you want them to read, do, or buy. If you sell tubas offer a free tuba lesson or polishing cloth. This’ll ensure they want what you provide and they’ll think of you the next time they need to buy a tuba.

That said, it doesn’t mean you can’t offer free pie, but it shouldn’t get them in the door, it should push them over the edge.

Audible gives you a thirty-day free trial plus an audio book to keep even if you don’t stay past the trial. They’re giving you a taste of the product. When you say, “I want more.” You know where to get it.

While not offering a freebie, Dinnerly (and most of the other bazillion meal kit delivery companies) offers a big discount on your first few orders, encouraging new customers to try them out. This can be an especially good model for products or services that have fixed costs with enticing new customers.

Dinnerly offers a discount on each of your first three meal kits.

Hmmm… maybe they should offer free pie. (Large preview)

Cognitive Dissonance

There’s another danger concerning consistency, but this one’s more subtle. If you’re reading a medieval story and the author says the “trebuchet launched a rock straight and true, like a spaceship into orbit.” It might be an appropriate allusion for a modern audience, but it’s anachronistic in a medieval story, a cognitive dissonance. Something doesn’t quite make sense or goes against what they know to be true. In the same way, websites that break the flow of their content can alienate their audience without even meaning to (such as statistics that seem unbelievable or are so specific anyone could achieve them).

112% of people reading this article are physically attractive.

(Here’s lookin’ at you, reader.)

This article is the number one choice by physicians in Ohio who drive Yugos.

(Among other questions, why would a European car driving, Ohioan Doctor read a web user experience article?)

These “statistics” break the flow of the website because they make the user stop and wonder about the website’s reputability. Any time a user is pulled out of the flow of a website, they must decide whether to continue with the website or go watch cat videos.

Recently, I reviewed proposals for a website build at my day job. The developers listed in the proposal gave me pause. One with the title “Lead Senior Developer” had seven years of experience. That seemed low for a “lead, senior” developer, but possible. The next guy was just a “web developer” but had twenty years of experience. Even if that’s all correct, their juxtaposition made them look ridiculous. That cognitive dissonance pulled me out of the flow of the proposal and made me question the firm’s abilities.

Similarly poor quality photos, pixelated graphics, unrelated images, tpyos, mispelllings, weird bolding and anything else that sticks out potato can cause cognitive dissonance and tank a proposal or website (or article). The more often you break the spell of the site, the harder it will be for clients/users to believe you/your product/site/thing are as good as you say. Those cat videos will win every time because they always meet the “lolz” expectation.

Conclusion

Users have many expectations when they come to your site. Placing your users in the context of a story helps you understand those expectations and their motivations. You’ll see what they want and expect, but also what they need. Once you know their needs, you can meet those needs. And, if you’ll pardon my sense of humor, you can both …live happily ever after.

Smashing Editorial
(cct, ra, yk, il)

Use Responsive Website Templates for Max Conversions

Original Source: http://feedproxy.google.com/~r/Designrfix/~3/eNnIyl_MyxY/use-responsive-website-templates-for-max-conversions

Websites. Every business needs one, but sadly many companies waste thousands of dollars and tons of time using expensive designers and complicated coding. These days with easy-to-use website builders creating your own site couldn’t be easier and more affordable. Studies show that responsive website templates attract over 50% of all mobile users (luckily you no […]

The post Use Responsive Website Templates for Max Conversions appeared first on designrfix.com.