Wednesday, June 28, 2017

Superhero Studios

The brand new portfolio for tiny design studio Superhero Studios featuring bold, bright colours, fun illustrations, and a wide snapshot of our work


by csreladm via CSSREEL | CSS Website Awards | World best websites | website design awards | CSS Gallery

PRIME VISION

Clips and premium movies anywhere in the world


by csreladm via CSSREEL | CSS Website Awards | World best websites | website design awards | CSS Gallery

Code My Views

“Code My Views is a team of Expert Developers specializing in all things code. We work with some of the best technology and creative companies in the business and can take your code to the next level with best in class service, coding, and a US-base


by csreladm via CSSREEL | CSS Website Awards | World best websites | website design awards | CSS Gallery

Flash Sale: All UX Mastery Books $5 Each!

Winter has well and truly set in here in Melbourne and what better way to spend it than to curl up in front of the fire with a good book? We can help you out with that!

How’s this? For the next 48 hours, all of our ebooks are on sale for just $5 each. That’s about 75% off, all our ebooks, for the rest of the month.

Been thinking about buying one of our insightful, practical and easy-to-apply titles, but haven’t taken the plunge yet? Now’s your chance to take advantage of this special deal, conveniently also timed for the end of the financial year.

Here’s a little more about each our ebooks.

Think First – A no-nonsense approach to creating successful products, powerful user experiences + very happy customers.

Everyday UX – 10 successful UX designers share their tales, tools, and tips for success.

Get Started in UX – The complete guide to launching a career in user experience design.

A Practical Guide to Information Architecture – Simple steps to tackle your own IA projects, large or small.

Bonus! Grab a copy of our UX Sketchnotes ebook, a collection of over 50 sketchnotes covering UX talks from around the world.

Get in quick, though, as this deal only lasts 48 hours!

button

Happy reading!

The post Flash Sale: All UX Mastery Books $5 Each! appeared first on UX Mastery.


by UX Mastery Team via UX Mastery

Why I’m Switching from React to Cycle.js

I would guess that most developers these days are using some sort of framework for developing apps. Frameworks are there to help us structure complex apps and save us time. Every day, we can see much discussion about which framework is the best, which framework should you learn first, etc. So today, I would like to share my experience, and why I'm switching to Cycle.js from React.

React is probably the most popular frontend framework these days and it has a great community. I am a big fan of it and it really helped me to change the way I think about web apps and how I develop them. Some developers love it, and some think that it's not as good as everyone says.

Most people start to use React without thinking that there might be a better way to build a web app. That reflection made me try Cycle.js, a new reactive framework that is becoming more popular every day. In this article, I want to explain what reactive programming is, how Cycle.js works, and why I think it's better than React. So let's start!

What is Reactive Programming?

Reactive programming (RP) is programming with asynchronous data streams. If you've already built a web app, you probably did a lot of reactive programming. As an example, click events are asynchronous data streams. We can observe them and perform some side effects. The idea behind RP is to give us an ability to create data streams from anything and manipulate with them. We then have the same abstraction for all our side effects which is easier to use, maintain, and test.

You're probably thinking "why do I need this new reactive programming thing?" The answer is simple: Reactive programming will help you unify your code and make it more consistent. You won't need to think about how the things should work and how to properly implement them. Just write the code in the same way, no matter what data you work on (click events, HTTP calls, web sockets...). Everything is a stream of data and each stream has many functions that you can use to work with it, such as map, and filter. These function will return new streams that can be used, and so on.

Reactive programming gives you the bigger abstraction of your code. It will give you an ability to create interactive user experiences and focus on business logic.

reactive-clicks
Image taken from http://ift.tt/1x4NpLA

Reactive Programming in JavaScript

In JavaScript, we have a couple of awesome libraries for dealing with data streams. The most well-known one is RxJS. It's an extension of ReactiveX, an API for asynchronous programming with observable streams. You can create an Observable (a stream of data), and manipulate it with various functions.

The second one is Most.js. It has the best performance and they can prove that with some numbers: Performance comparation.

I would also like to mention one small and fast library, made by the creator of Cycle.js and made specifically for it. It's called xstream. It has only 26 methods, is approximately 30kb, and is one of the fastest libraries for reactive programming in JS.

In the examples below, I will use xstream library. Cycle.js is made to be a small framework and I want to attach the smallest reactive library to it.

What is Cycle.js?

Cycle.js is a functional and reactive JavaScript framework. It abstracts your application as a pure function, main(). In functional programming, functions should have only inputs and outputs, without any side effects. In Cycle.js's main() function, inputs are read effects (sources) from the external world and outputs (sinks) are write effects to the external world. Managing side effects is done using drivers. Drivers are plugins that handle DOM effects, HTTP effects, and web sockets etc.

Cycle.js
Image taken from Cycle.js website

Cycle.js is there to help us build our user interfaces, test them and write reusable code. Each component is just one pure function that can run independently.

The core API has just one function, run.

run(app, drivers);

It has two arguments, app and drivers. app is the main pure function and drivers are plugins that need to handle side effects.

Cycle.js separates additional functionality into smaller modules. They are:

Cycle.js Code

Let's see some Cycle.js code? We will create a simple app that should demonstrate how it works. I think that a good old counter app should be ideal for this example. We will see how handling DOM events and re-rendering the DOM works in Cycle.js.

Let's create two files, index.html and main.js. index.html will just serve our main.js file, where the whole of our logic will be. We are also going to create a new package.json file, so run:

npm init -y

Next, let's install our main dependencies:

Continue reading %Why I’m Switching from React to Cycle.js%


by Ivan Jovanovic via SitePoint

​An Introduction to Component IO

This article is part of an SEO series from Component IO. Thank you for supporting the partners who make SitePoint possible.

It doesn't matter what content management system you use — at some point, someone, somewhere will want to make a change which is beyond the technical limit of their control. Typical examples:

  • changing your site's logo or header appearance
  • updating the content of your standard page footer
  • adding, removing or rearranging social media buttons
  • re-configuring a contact form's fields or layout
  • adding links to a navigation menu which are not part of the page hierarchy.

It's impossible to create a CMS with an easy-to-use interface which provides for every possible option users could ever want. (Well, you could, but it'd effectively be a code editor!) At some point, you'll need to make technical changes to your WordPress template, static site rendering, React components, Angular configuration or whatever system you're using. The process will typically involve:

  1. Allocating developer time and resources. That could be a matter of contacting your development agency, discussing the options and agreeing a budget.
  2. Adding new code, plug-ins or configurations to the existing templates as required.
  3. Pushing the updates to a staging server.
  4. Testing the new system thoroughly and ensuring it doesn't cause regression problems elsewhere.
  5. Repeating the steps above if any errors or omissions are encountered.
  6. Deploying the verified updates to your live server.

Even the smallest changes take time and money. Inevitably, a new request will arrive the minute the first update goes live.

The Component IO Approach

Component IO tackles the problem in a different way. Rather than taking a holistic, site-wide approach, the service provides a range of ready-to-use components which can be embedded into any website or application regardless of the implementation technology. Most developers will use the service to supplement existing CMS-based content. However, it is possible to create a multi-page site with minimal HTML and a series of embedded components which control everything.

Hundreds of components are available including:

  • content blocks
  • images and galleries
  • navigation bars and menus
  • social media integration
  • overlays and modal dialogs
  • carousels and sliders
  • sign-up and contact forms
  • buttons, tabs and form elements
  • videos, maps and other embedded media.

Components are added to a page with a <component> block and any number can be used. A single </script> tag at the end of the page is then required to activate and control every component.

Once a component has been installed, developers and non-technical users can access the Component IO dashboard to make changes. They don't need to understand HTML, CSS and JavaScript or directly edit the page where the component is used. Updates are instantly available on the next refresh.

The benefits of Component IO include:

  • there are hundreds of ready-made, attractive and configurable components to choose from
  • component code can be installed with a simple cut and paste
  • every CMS, framework and system is supported. If you can edit the HTML, you can add a component.
  • it's easy for non-technical editors to use. They can make changes in a WYSIWYG editor and check it with a live preview
  • developers can make changes to a component's HTML, CSS and JavaScript code in the dashboard if necessary
  • all users can share Component IO dashboard links and collaborate on the same items
  • Component IO is fast and delivers items quickly with a single API call regardless of the number embedded within the page
  • a full help guide and real-time chat assistance is available
  • a free trial account can be used to test the service on your system.

Example 1: Create a Content Block

A content block is one of the simplest and most-used components. First, create or switch to your project by clicking the shield icon at the top left.

Switch to the library tab at the top to view a list of several hundred components. Click the Content Block component to view a preview then hit the Add to your project button.

Continue reading %​An Introduction to Component IO%


by Craig Buckler via SitePoint

GreenSock for Beginners: a Web Animation Tutorial (Part 1)

Animating the DOM with GreenSock (GSAP)

My aim in this article is to give you a thorough introduction to GreenSock, also known as GSAP (GreenSock Animation Platform), a super performant, professional-grade HTML5 animation engine for the modern web.

This is the fourth article in the series Beyond CSS: Dynamic DOM Animation Libraries.

Here's what I covered in the past issues:

GSAP has too many features to fit in one article. This is why I've opted for a multi-part article all dedicated to various areas of the GreenSock library.

In more detail:

  • By the end of this first part, you'll have learned about GreenSock's capabilities and features, licensing model, core components, and basic syntax to tween and stagger DOM elements
  • In part 2, I'll introduce GreenSock's native timeline functionality
  • Finally, part 3 will focus on some powerful bonus plugins GreenSock makes available to accomplish complex animation tasks easily with a few lines of code.

If you're already a GSAP Ninja, check out Animating Bootstrap Carousels with the GSAP Animation Library, where George Martsoukos illustrates an effective use of GreenSock for UI animation.

Without further ado, brace yourself, the journey is about to begin!

What is GreenSock and What Is It Good For?

GreenSock is the de facto industry-standard JavaScript animation platform available today.

It's a mature JavaScript library that has its roots in Flash-based animation. This means the guys behind GreenSock know web animation inside-out, the library has been around for a long time and is not going anywhere any time soon.

GSAP includes a comprehensive suite of tools, utilities, and plugins you can leverage to handle any web animation challenge you happen to face, from animating SVGs consistently across multiple browsers to coding complex animation sequences, dragging elements across the screen, splitting and scrambling text, and so much more.

To mention just three things I particularly love about GreenSock:

  • Although the library is mega rich in terms of features, the learning curve is relatively shallow because it uses an intuitive and consistent syntax across all its various implementations and plugins. In addition, it offers awesome documentation, tutorials, and support via the GSAP Forums. Also, the library itself is continually updated and maintained. These are all crucial factors when building a project which relies on an external library for any of its key features and user experience
  • It's modular and light-weight, which means it won't add bloat to your web projects
  • Thanks to its powerful timeline functionality, GSAP affords precise control over the timings not only of single tweens, but also of multiple tweens as part of a whole animation flow.

Core GreenSock Tools

These are GreenSock's core modules:

  • TweenLite — the foundation of GSAP, a lightweight and fast HTML5 animation library
  • TweenMax — TweenLite's extension, which besides comprising TweenLite itself, includes:
    • TimelineLite
    • TimelineMax
    • CSSPlugin
    • AttrPlugin
    • RoundPropsPlugin
    • DirectionalRotationPlugin
    • BezierPlugin
    • EasePack
  • TimelineLite — a lightweight timeline to take control of multiple tweens and/or other timelines
  • TimelineMax — an enhanced version of TimelineLite, which offers additional, non essential capabilities like repeat, repeatDelay, yoyo, and more.

You can choose to include TweenLite in your project and then add other modules separately as you need them. Alternatively, you can choose to include TweenMax (the approach I'm going to take in this multi-part series), which packages all the core modules in one optimized file.

It's also worth noting that GSAP offers some paid extras like the DrawSVGPlugin to create animated line drawing effects with SVGs, the powerful MorphSVGPlugin to morph one SVG shape into another (even without requiring that the two shapes have the same number of points), and others. Although you need to be a paying member of the Club GreenSock to use these plugins, GSAP makes available to you for free a special CodePen-based version so that you can try them out. This is a cool offer I'm going to take full advantage of later on in part 3 (and you with me).

License

GSAP hasn't adopted a free open-source license like MIT largely for reasons that concern keeping the product's quality high and its maintenance financially sustainable over the long term.

GreenSock makes available two licenses:

  • Standard License — use of the library is totally free in digital products that are free to use (even if developers get paid to build them)
  • Business Green — this license includes three tiers with the middle tier, Shockingly Green, being the most popular. As a Shockingly Green member you'll gain access to all the bonus plugins and extras, but without the commercial license.

Despite the non-adherence to MIT and similar free use licenses, by letting you peek into its raw code both on the project's GitHub repo and in your downloads, GreenSock encourages you to learn from its developers' code and their mastery of JavaScript animation, which is one of the best features of the open source philosophy.

Tweening with GreenSock

Continue reading %GreenSock for Beginners: a Web Animation Tutorial (Part 1)%


by Maria Antonietta Perna via SitePoint