Friday, September 30, 2016

5 HDR Photos Done Right, and How to Make Your Own

#html5 #css3 GeekWork Picks: Camping review platform The Dyrt seeks front-end developer #html5 #css3 https://t.co/omA8ZtnaAb


from Twitter https://twitter.com/Web_improve

#code #HTML5 #webdesigns #css #ruby Download of the Day: Abstract Grunge Vector Box Freebie https://t.co/p4HZ16pol7


from Twitter https://twitter.com/Web_improve

Who Needs AMP? How to Lazy Load Responsive Images Quick and Easy with Layzr.js

Digital Drawing for Beginners: Before You Publish Your Drawing

#webdevelop #webdesigns Blog: JUSTIN JEWETT: How important is the homepage?: Welcome users with the information th… https://t.co/z2gHuVvSxW


from Twitter https://twitter.com/Web_improve

#webdevelop #webdesigns JUSTIN JEWETT: How important is the homepage?: CRAFTED BY Justin Jewett, VP, director of t… https://t.co/w4bePVUFNi


from Twitter https://twitter.com/Web_improve

#webdevelop #webdesigns RT speckyboy: Tools to Help Improve Your Website Proofreading https://t.co/vYn853maQL https://t.co/RD0o8g0aTg


from Twitter https://twitter.com/Web_improve

#webdevelop #webdesigns RT Creativepool: FOX+: Moustache, Apple, Tongue #CPSpotlight by Freddy Montero Galva … https://t.co/NObXb1tFpi


from Twitter https://twitter.com/Web_improve

#webdevelop #webdesigns RT Creativepool: BBDO Guerrero Philippines Client - Normagut #CPSpotlight by Sarang Bijaga… https://t.co/rLuNW7IMKz


from Twitter https://twitter.com/Web_improve

#webdevelop #webdesigns RT onishiweb: "You can have too much pre-processing" Spoken from the mouth of Mr Sass StuRobson Empathise with th…


from Twitter https://twitter.com/Web_improve

Competitive Analysis: How to Find Out Who's Buying From Your Competitors

#webdevelop #webdesigns RT jeffrey_way: It just occurred to me that, during this design refresh I’m working on, I haven’t use float: left/r…


from Twitter https://twitter.com/Web_improve

#webdevelop #webdesigns RT jquery_rain: Choreographer.js : JavaScript Library for Complex CSS Animations … https://t.co/UaVOUCTqXe


from Twitter https://twitter.com/Web_improve

#webdevelop #webdesigns RT thelogosmith: Don’t really quite see what all the fuss is RE the Wonder Woman logo and … https://t.co/2FXnjndnss


from Twitter https://twitter.com/Web_improve

#webdevelop #webdesigns RT jquery_rain: EQCSS : CSS Extension for Element Queries with Javascript … https://t.co/KFsyduh6uW


from Twitter https://twitter.com/Web_improve

#webdevelop #webdesigns RT thisiscrowd: Crowd are so thrilled to be Wirehive100 finalists for #FastestGrowth. We c… https://t.co/K8S2arrVaZ


from Twitter https://twitter.com/Web_improve

#webdevelop #webdesigns RT imaginesubs: Become a subscriber to PshopCreative & get over $10k worth of free assets.… https://t.co/vab3EdSMfy


from Twitter https://twitter.com/Web_improve

#webdevelop #webdesigns RT BrightBlueDay: We had so much fun yesterday at #TFM16. Here's our blog about it: … https://t.co/L4mgQ0QPWz


from Twitter https://twitter.com/Web_improve

#webdevelop #webdesigns RT Engzell: Halfway there. https://t.co/DsObAUd2Dp


from Twitter https://twitter.com/Web_improve

#webdevelop #webdesigns RT codepo8: text-spinners https://t.co/1tpVTqas5D - I like the emoji ones :)


from Twitter https://twitter.com/Web_improve

#webdevelop #webdesigns THIS IS A POSSUM. But what's it got to do with SEO? Find out more https://t.co/sWd7R8HaYC https://t.co/GqnapYX0hP


from Twitter https://twitter.com/Web_improve

The Designer's Guide to Outsourcing Using Envato Studio & Envato Market

Character Animation: How to Animate a Backflip in Blender

Photoshop in 60 Seconds: Create a Hero Image Using Scene Generators

Get Started With Firebase for Android

Help! How to Fix Your Overheating Media-Making Mac

16 Print-Ready Creative Resume Templates from TheResumeCreator - only $24! https://t.co/cGlV08nbrf #developerdeals


from Twitter https://twitter.com/Web_improve

Thursday, September 29, 2016

#html5 #css3 School of Professional Studies launches coding boot camp #html5 #css3 https://t.co/btkZBUm6KW


from Twitter https://twitter.com/Web_improve

#webdevelop #webdesigns Blog: Game Of Drones: GoPro Karma V DJI Mavic Pro: 2016 has been a good year for drones an… https://t.co/WJWpNjbmJ1


from Twitter https://twitter.com/Web_improve

Digital Drawing for Beginners: Digital Shading

How to Use Feedback From Customer Reviews (In Your Small Business)

How to Create a Tous-Les-Memes-Inspired, Isometric Scene Effect in Photoshop

#webdevelop #webdesigns Blog: Video Headphones: The Future of Entertainment?: Meet iWear, the all-in-one audiovisu… https://t.co/gsASb3zYpJ


from Twitter https://twitter.com/Web_improve

How to Master Zapier Integration to Automate Your App Workflows

#webdevelop #webdesigns Video Headphones: The Future of Entertainment?:   The modern home cinema is not just one t… https://t.co/I41M7lkXD9


from Twitter https://twitter.com/Web_improve

New Coffee Break Course on React Router

Control a Star Wars BB-8 Droid With Arm Gestures and IBM Bluemix Internet of Things

Adobe Illustrator: How to Change the PPI in an Existing Document

Wednesday, September 28, 2016

How to Get More Views: 5 Video SEO Strategies

5 Landing Page Templates Available Now From Envato Elements

Successful website creation – everything you need to know https://t.co/aMNUUXUAUx #webdevelopment


from Twitter https://twitter.com/Web_improve

The State of HTML5 Gaming presented at Prov.js #JavaScriptWorld #Provjs #HTML5 ☞ https://t.co/i6v0AmaKjb https://t.co/e3YODJ7zlO


from Twitter https://twitter.com/Web_improve

Control a Droid With Your Mind and IBM Bluemix Internet of Things

Get Started With Angular 2 and TypeScript

Digital Drawing for Beginners: From Sketching to Line Art

CSS Grid Layout: Using Grid Areas

15 Simple Invoice Templates: Made For Microsoft Word

15 Best IFTTT Recipes for Productive Business Automation

How to Create a Stylized Chalk Text Effect in Adobe Photoshop

Create a Pokémon GO Style Augmented Reality Game With Vuforia

How to Customize Your Gmail Interface Look With Themes

Particles.js: Motion and Interaction

Sympli for Developers

Selenium WebDriver with Java https://t.co/CeIcBD6VgK #programming


from Twitter https://twitter.com/Web_improve

Java Socket Programming: Build a Chat Application https://t.co/tKD4NnKTN5 #programming


from Twitter https://twitter.com/Web_improve

Now You See Me: How to Get Started With Instagram Stories

How to Create a Road Text Effect in Adobe Illustrator

Java for Beginners in 2 hours: Build a Banking Application https://t.co/R19EXyMvGE #programming


from Twitter https://twitter.com/Web_improve

1 Year Unlimited Access to 1300+ Premium Fonts - only $27! https://t.co/W5vzfP2b6y #developerdeals


from Twitter https://twitter.com/Web_improve

Tuesday, September 27, 2016

Data structures in C language https://t.co/vS4dSj9SqL #programming


from Twitter https://twitter.com/Web_improve

How to Use Siri on a Mac

Node.js Crash Course for .NET Developers #JavaScriptWorld #Node.js #Developers ☞ https://t.co/vx7Ocfd6cv https://t.co/qP463VFa2b


from Twitter https://twitter.com/Web_improve

Learn Cucumber: Develop automated test in Java following BBD https://t.co/4DVppKKwF2 #programming


from Twitter https://twitter.com/Web_improve

#code #HTML5 #webdesigns #css #ruby 5 Benefits of Online Tutoring https://t.co/jk6JpEXKFa


from Twitter https://twitter.com/Web_improve

How to Create a Photo Collage Effect Using Photoshop Actions

Coding with Scratch Junior https://t.co/DuNsm8csbX #programming


from Twitter https://twitter.com/Web_improve

Now Available: Web Templates on Envato Elements

Digital Drawing for Beginners: Before You Start Drawing

What is the Difference Between a CV vs Resume?

Improving Website Performance Through Image Optimization

10 Business Presentation Mistakes (And How to Avoid Them)

Building a Welcome Page for Your WordPress Product: Code Part 2

20 Best Minimal WordPress Themes: With Simple, Elegant Designs

How to Use Gmail Keyboard Shortcuts to Save More Time

How to Build a Striped Navigation With Flexbox

How to Build a Striped Navigation With Flexbox

Thanks to flexbox, nowadays we can build some really attractive and modern layouts with relative ease. In this tutorial we’re going to look at an interface used recently for Google National Parks, and see how flexbox can help us improve on it.

 As always, before going any further, let’s look at what we’ll be building (you may need to check out the larger version as the full effect kicks in on viewports wider than 800px):

Be sure to hover over the links to trigger the corresponding effects. 

The Markup

First, let’s examine the markup we’ll be using to build this layout. We define a div element with five links within it (you can use whichever elements you feel are appropriate). Each of our links contains a div with the class of overlay. Below you can see the skeleton of our code:

Initial CSS Styles

With the markup ready, we start defining some initial CSS styles, specifically:

  • Specify the outermost div as a flex container and set its height equal to the viewport height with height: 100vh;.
  • Set an equal width for all links (flex items). To achieve that, we give them each flex: 1. Additionally, all of our links will have a background image (sourced from unsplash.com) which covers the viewport height. As a fallback (in case an image isn’t available), we also specify a unique background color for each one.
  • When we hover over a link, its size becomes three times bigger relative to the size of the other links. We do this by changing the value of the flex property of the target link. Happily enough this property belongs to the animated CSS properties, so we’re able to generate a smooth transition effect (at least in most recent browsers). 

Here’s part of the CSS code demonstrating what we’ve described above:

So far, if we preview the demo in a browser that supports flexbox, we’ll see this result:

Styling the Overlay

Our next step is to assign a few styles to the overlay. Here’s what we’ll do:

  • Give overlay the same dimensions as the parent link. We can achieve this behavior by positioning it absolutely (relative to the immediate parent) and then specifying zero values for all the offset properties. 
  • Define the overlay as a flex container. This way, we’re able to center its direct child (i.e. .overlay-inner element) vertically and horizontally.
  • Add a semi-transparent grey background to the overlay when we hover over the parent link.

Here are the associated CSS styles:

Inner Overlay

Now, it’s time to style the inner parts of our overlay. By default these are hidden and should appear only when we hover over the corresponding parent link. But not immediately, we’ll reveal them after a small delay. This delay is important; if we don’t define it specifically, the transition effect will look a little bit ugly. Remove it and test the demo to understand what I mean. 

So just to recap, first the link gets bigger, then the overlay elements become visible. Also, we use the translate3d() to create some slide in effects. Last but not least, we use the transform-style: preserve-3d hack (or a similar one) to prevent possible flickering effects across different browsers.

And here are the related CSS styles:

Let’s see what that’s given us.


Going Responsive

The page looks great on large screens, but perhaps on small, or even on medium screens we’ll have to make a few adjustments. For example, here are a few things we can do:

  •  Flip the main-axis of the flex container by adding flex-direction: column to it. In doing so the flex items will flow from top to bottom.
  • Cancel all the transition effects and show the overlay elements by default . 

Our desktop-first media query looks as follows (I’ve used 800px only because that suits the embedded demos in this post–you can choose whatever you feel is best):

Here’s the final appearance of our navigation:

Browser Support

The demo works in all recent browsers that support flexbox. 

In some browsers you may notice that the animation of the flex property isn’t as smooth as it should be, or perhaps doesn’t work at all. For example, IE11 doesn’t animate this property, whereas Edge does. This is reasonable enough, considering the fact that flexbox is a new layout mode which is still gaining traction.

Conclusion

In this tutorial, we improved our flexbox knowledge by learning how to build a stylish navigation layout. Hopefully you enjoyed what we’ve built here and have taken some inspiration for your next projects!

If you build a similar layout, don’t forget to show us the approach (pure CSS or JavaScript-based solution) you used.  

In the Wild   

Before closing, I’d like to share with you a few sites which use a similar layout to what we’ve just created:


Building Your Startup: Exporting iCal Files into Calendar Events

Apache Spark 2.0 + Java : DO Big Data Analytics & ML https://t.co/0SmovGQH5y #programming


from Twitter https://twitter.com/Web_improve

How to Create a Football Text Effect in Adobe Illustrator

The Complete Ethical Hacking Course 2.0: Python & Kali Linux https://t.co/jdVmqWotIQ #webdevelopment


from Twitter https://twitter.com/Web_improve

108 Hi-Res Magazine Mockups from Zippy Pixels - only $17! https://t.co/08DZjFnXSR #developerdeals


from Twitter https://twitter.com/Web_improve

Monday, September 26, 2016

Learn basics of HTML in 30 Minutes https://t.co/ZdgdUfUJrU #webdevelopment


from Twitter https://twitter.com/Web_improve

Test and improve your Java skills https://t.co/jswTmn9NIH #programming


from Twitter https://twitter.com/Web_improve

Learn basics of HTML in 30 Minutes https://t.co/ZdgdUgckQu #webdevelopment


from Twitter https://twitter.com/Web_improve

Basics of CSS – Udemy Course for Free https://t.co/18X4ndu9Eu #webdesign


from Twitter https://twitter.com/Web_improve

Master Color Correction With These Two Courses

Knocking it out of the park, with Knockout.JS #JavaScriptWorld #Knockout.JS #javascript ☞ https://t.co/WStWE19i5O https://t.co/tNPGwyTjod


from Twitter https://twitter.com/Web_improve

Digital Drawing for Beginners: An Introduction to the Tools

15 Professional PowerPoint Templates - For Better Business Presentations

How to Recreate Apple TV’s Parallax Thumbnail Rollover Effect

An Introduction to the UserNotifications Framework

How to Draw a Classic Steam Locomotive From Scratch

Particles.js: Control Particle Count and Shape

How to Pick The Best Way to Print Your Photos

How to Design a Logo When You’re Short on Time!

2350+ Graphic Design Elements and Patterns (with Extended License) - $21! https://t.co/eNNQeVoGot #developerdeals


from Twitter https://twitter.com/Web_improve

Sunday, September 25, 2016

WordPress Security: Prevent Your WordPress Site From Hackers https://t.co/VhFHkrp3IK #webdesign


from Twitter https://twitter.com/Web_improve

Home Mastering 101: Finishing the Master and Applying EQ

Java Developer course: Become a Java programmer in 3 hours https://t.co/H3db1EoTha #programming


from Twitter https://twitter.com/Web_improve

Build professional sites without coding 10 plus projects https://t.co/LlE8gTzRSy #webdesign


from Twitter https://twitter.com/Web_improve

Learn Reactivex From Ground Up https://t.co/jq2SywgsaY #programming


from Twitter https://twitter.com/Web_improve

Creating a Realistic Teddy Bear in Maya—Part 2

WordPress essentials Step by Step setup and using WordPress https://t.co/opLDZEw0QB #webdevelopment


from Twitter https://twitter.com/Web_improve

WordPress for Beginners – Build a Pro Website in 90 minutes https://t.co/eQo9gc6bbZ #webdesign


from Twitter https://twitter.com/Web_improve

Complete WordPress Theme Developer Course https://t.co/wCarpxcers #webdevelopment


from Twitter https://twitter.com/Web_improve

Building Cross Platform Apps with Xamarin and C# https://t.co/2J3ZmEQwLW #programming


from Twitter https://twitter.com/Web_improve

JavaScript Landscape for Java Developer #JavaScriptWorld #JavaScript #JavaDeveloper ☞ https://t.co/GEPlrb8D7x https://t.co/fENU5HSOJ6


from Twitter https://twitter.com/Web_improve

Architecting Ember.js in Production 2015 Tutorial #JavaScriptWorld #Emberjs #Javascript ☞ https://t.co/op8mjQ31Z0 https://t.co/51hGLEjD5T


from Twitter https://twitter.com/Web_improve

Building XQuery Apps with the MarkLogic NoSQL Database https://t.co/WIIvP81UL3 #programming


from Twitter https://twitter.com/Web_improve

Saturday, September 24, 2016

Build Your Own $5000 WordPress Website For About Fifty Bucks https://t.co/JWAQPawSaP #webdesign


from Twitter https://twitter.com/Web_improve

Bootstrap :basics for beginners https://t.co/fxT5rZvGQm #programming


from Twitter https://twitter.com/Web_improve

Maven Tutorial – Manage Java Dependencies in 20 Steps https://t.co/UabWkm7TN8 #programming


from Twitter https://twitter.com/Web_improve

Home Mastering 101: Making Mixes Loud and Powerful

AngularJs :basics for beginners https://t.co/18SUgEdrZy #webdevelopment


from Twitter https://twitter.com/Web_improve

Multipurpose UI Bundle of 230+ components, 18 Full Templates - $19! https://t.co/kLa9Xgp5rB #developerdeals


from Twitter https://twitter.com/Web_improve

Friday, September 23, 2016

1 Year Unlimited Access to 1300+ Premium Fonts - only $27! https://t.co/km2cHnVolV #developerdeals


from Twitter https://twitter.com/Web_improve

Java EE Made Easy – Patterns, Architecture and Frameworks https://t.co/uFWbOHAt55 #programming


from Twitter https://twitter.com/Web_improve

Learn Matlab Programming by Examples (Codes Included) https://t.co/drf6ejyvsa #programming


from Twitter https://twitter.com/Web_improve

How Artists Make a Living With Patreon

Coding Made Easy: A Beginners Guide To JavaScript https://t.co/tct9ne3jDI #webdevelopment


from Twitter https://twitter.com/Web_improve

AngularJS Tutorial for Beginners #JavaScriptWorld #AngularJS #Programming ☞ https://t.co/wXNw4YKHxl https://t.co/Rm3fLyaVz0


from Twitter https://twitter.com/Web_improve

The Best Online Accounting Software for Your Small Business

C++ Basics – As Soon As Possible https://t.co/3uoXX7YgG4 #programming


from Twitter https://twitter.com/Web_improve

#webdevelop #webdesigns Blog: Handy Sgnl watchband turns your fingers into a phone: Kickstarter that transmits cal… https://t.co/jw1GoOQbOR


from Twitter https://twitter.com/Web_improve

#webdevelop #webdesigns Handy Sgnl watchband turns your fingers into a phone: Feel like James Bond next time you t… https://t.co/LFlLRCMVKo


from Twitter https://twitter.com/Web_improve

#code #HTML5 #webdesigns #css #ruby Instant Message Reaction: 500M Yahoo Accounts Breached and We’re Not Happy Abo… https://t.co/qTR5D04U3f


from Twitter https://twitter.com/Web_improve

C :basics for beginners https://t.co/ASQxK7Y6QQ #programming


from Twitter https://twitter.com/Web_improve

Google Play Services: Google Cast v3 and Media

Java Servlets and JSP – Build Java EE (JEE) App in 25 Steps https://t.co/7rwJQUVkDj #programming


from Twitter https://twitter.com/Web_improve

Particles.js: Introduction

Photoshop in 60 Seconds: How to Create Flower Brushes

Photoshop in 60 Seconds: How to Create an Easy Sketch Effect

Learn Typography and Branding With These Graphic Design Courses

Superb Fonts Bundle of 7 Script & Display Typefaces - only $7! https://t.co/VgqSy4lNUj #developerdeals


from Twitter https://twitter.com/Web_improve

Thursday, September 22, 2016

How to Create Your Own Website with WordPress https://t.co/jdCFRtTjrR #webdesign


from Twitter https://twitter.com/Web_improve

How to Create a Presentation From a Google Slides Theme

Ultimate Angular 2 Developer with Bootstrap 4 & TypeScript https://t.co/QsmMuJS9KN #webdevelopment


from Twitter https://twitter.com/Web_improve

#html5 #css3 Frozen in time: Fascinating 360-degree tour of the eerie Cypriot airport that was abandoned almost 40… https://t.co/mxwaFw3t2i


from Twitter https://twitter.com/Web_improve

Learn HTML CSS creating a single page website https://t.co/F1OPBBQNAr #programming


from Twitter https://twitter.com/Web_improve

Photoshop in 60 Seconds: How to Properly Fill a Drawn Outline

#webdevelop #webdesigns Blog: Websites that make you go wow: CUBERTO: A simple one-colour screen is enhanced with … https://t.co/2X5P8Ub2P6


from Twitter https://twitter.com/Web_improve

#webdevelop #webdesigns Blog: Websites that make you go wow: CUBERTO: A simple one-colour screen is enhanced with … https://t.co/GsN7sbsKBP


from Twitter https://twitter.com/Web_improve

10 Creative Presentation Ideas: That Will Inspire Your Audience to Action

C# in 3 Hours: C# Programming Tutorial for Beginners https://t.co/TAmP4MThyw #programming


from Twitter https://twitter.com/Web_improve

How to Set Up Basic Routing in Angular 2

How to Create a 3D Black and Gold Text and Logo Mockup

Exploring Devise, Part 1

Exploring Devise, Part 1

In some of my previous articles about image uploading in Rails, I made mention of Devise but did not go deep into it. In this tutorial, I will be teaching you about Devise.

Ready? Let's get started!

Devise Introduction and Modules

Devise is an authentication solution for Rails built with Warden and provided by the awesome people at Plataformatec. Devise provides different modules:

  • Database Authenticatable: This encrypts and stores a password to the database to validate the authenticity of a user while signing in.
  • Omniauthable: This attaches OmniAuth support to Devise. Users of your application will be able to sign in using accounts such as Facebook, Twitter, and Google.
  • Confirmable: This enables the sending of emails with instructions that will help in the verification of an account.
  • Recoverable: This module helps in times when users forget their password and need to recover it. With this, the user will be able to reset the password.
  • Registerable: This handles the signup of users. It also allows users to edit and delete their accounts.
  • Rememberable: This module makes it possible for your application to remember a logged-in user by storing a cookie.
  • Trackable: This module helps track sign-in count, timestamps, and IP address.
  • Timeoutable: This module is responsible for expiring a session that has not been active for a period of time.
  • Validatable: With this module, email and password get to be validated.
  • Lockable: This provides an extra layer of security—when activated, an account can be locked after a given number of failed sign-in attempts.

Devise Integration

For the purpose of this tutorial, we are going to generate a Rails application that we'll use to check out the workings of Devise. Let's proceed!

rails new devise-app -T

The -T flag tells Rails to generate the application without the default test suite. Navigate to your application directory and drop the following gems into your Gemfile.

Now install the Devise and Bootstrap gems you just added.

bundle install

Rename your app/assets/stylesheets/application.css file to app/assets/stylesheets/application.scss and add the following lines in it:

Open up the app/assets/javascripts/application.js file and require bootstrap-sprockets. Mine looks like this:

Next, you need to run the Rails command to install the configuration files for Devise. You do so by running this command:

rails generate devise:install

The command generates the following on your terminal. You should read it to understand what happened.

The command also generates two files, which you can find in the config directory. It also gives us some instructions on what we should do.

Navigate to your application layout, app/views/layouts/application.html.erb, and make it look like what I have below:

You need to define the default URL options for your development environment. Add the code below in config/environments/development.rb.

Now you need to create a User model for Devise. You can do so using your terminal.

rails generate devise User

This will generate a user.rb file in your app/models directory. The file generated will look like this:

You can see that it contains the default modules I mentioned above. The command you ran also modified your config/routes.rb file by adding a route for devise. You should check that out.

At this point, you need to migrate your database. You do so by running: 

rake db:migrate

Authentication Using Devise

Now you need to create a PagesController and wrap Devise authentication around it—this will prevent unauthorized persons from seeing the page.

rails generate controller Pages index

Open up your routes file and set the root of your application.

Open up your PagesController and add authentication for your index and new pages.

The code shows that the index and new pages are accessible only to registered users. Open up your terminal and start your rails server. Point your browser to http://localhost:3000 and you will automatically be redirected to the Devise sign-in page.

Signing in Without Using Email

The default means of signing into Devise involves the use of email address and password. What if you want to enable users to sign in with their unique username? If that is what you want, it is possible. Let's see how.

Run the command:

rails generate migration AddUsernameToUSers username:string

This will add a new column for username in your users table. Migrate your database.

rake db:migrate

You need to add a field to your views where your users can enter their username. When you go to your app/views directory, you will not find any file that renders the Devise views. This is because Devise loads the views from its gemset. To customize it, you have to generate copies of the views. The command below does the magic.

rails generate devise:views

This will generate some folders and files in your app/views directory.

You will need to edit the page for signing in, signing up, and updating user information. Just paste the blocks of code below into their respective files.

Sign-Up

Edit

Sign-In

Using your text editor, navigate to app/controllers/application_controller.rb. You need to modify it to permit the use of username. Modify it to look like this:

Now a user can sign in with his/her username. At this point there is something not right about your application. When a user signs in, there is no way of signing out. This does not result in a great user experience. I'll show you how to fix that.

From your terminal, create a new directory called shared in your app/views folder.

The file you created above is a partial where the code for your navigation bar will be written. Drop in the following code.

Now you need to render the navigation bar in your application layout. Open up app/views/layouts/application.html.erb and drop in the code to render your navigation bar.

Conclusion

In this part you learned how to install Devise and add authentication to your pages. I also made mention of a partial. I will cover that in a separate tutorial. 

In the next part, we will cover some areas more advanced than this. I hope this was worth your time!


Create Web Apps with Meteor & React https://t.co/MnqCWlNG6H #webdevelopment


from Twitter https://twitter.com/Web_improve

Creating Custom WordPress Administration Pages, Part 3

CSS Grid Layout: Fluid Columns and Better Gutters

CSS Grid Layout: Fluid Columns and Better Gutters

In this tutorial we’re going to take the grid from our previous tutorial and use it as a playground to explore different units of measurement and Grid’s properties. 

Flexible Units

The whole point of Grid is to enable us to properly control layout on the web, so let’s make our static grid fluid before we go any further. If you recall, we were defining our grid with static pixel measurements:

It’s quite possible to use other units here too, such as ems, or rems for example. Or even more unusual units like vh and vmin

In this case we’re going to change our pixel units for percentages. As we’re defining our column widths and our gutter widths manually we have to make sure the total values equal 100%:

Mind the Gap

There does exist a newer, more efficient way to declare gutter measurements, and that’s with a purpose-made property. We can use grid-column-gap and grid-row-gap, or the shorthand grid-gap property instead. 

Using this means we no longer need to include grid tracks to accommodate our gutters, we only need to declare the columns and rows, so in our case that means three of each:

Hmm, that’s a bit messy, but it sort of does the job. The difference you’ll notice is that the column widths now add up to 100%; our gutters will actually be subtracted from them automatically. 

Repeat

Let’s write this is a neater way, using the repeat() function:

This states “repeat 33.33% three times” giving us three columns. And we don’t even need the grid-template-rows declaration because the auto value is assigned as default anyway. Now we just need to state how big we want our gutters:

grid-gap will accept fixed or flexible units, which means we can perfectly combine fluid columns and fixed gutters without any complex calculations on our part.

Resetting Our grid-column and grid-row Values

Something is amiss: we still have a load of grid-column and grid-row declarations on our grid items, but they’re all wrong because we no longer have as many grid tracks. Happily, because we’re using grid-gap to define our gutters, we can leave positioning of the items to automatic placement–items will no longer fall into the gutters. For now, remove all the positioning:

The fr Unit

One final improvement can be made to our simple grid; we’re going to introduce the fr, or fraction unit. A single fr unit describes “one piece of however many pieces we’re splitting this into”. For example, we could declare our columns using:

Here there’s a total of three fr units, so each column would be one third wide. Here’s another example:

Now there’s a total of four fr units, so the first column would take up half the available width, with the other two columns each taking a quarter.

These units are really powerful, especially in combination with other units of measurement:

Here we’ve declared four columns: 

  • the first is fixed at 300px wide
  • the last is a flexible 20% of the grid container element wide
  • then the fr units are calculated, leaving the second column with one piece of the remaining space
  • and the third with three pieces.

It looks like this, perfectly highlighting auto-placement as our nine items shift to fill the gaps:

But back to our original grid. Let’s replace the clumsy and inaccurate 33.33% value with 1fr: 

Finished pen:

Conclusion

So, to recap:

  1. Grid will accept flexible units in combination with fixed units of measurements.
  2. We needn’t declare gutters within our grid-template, we can use the grid-gap properties instead.
  3. grid-gap means we are less bound to positioning our grid items–we can hand more responsibility over to auto-placement.
  4. The repeat() function will save us time and keep our stylesheets maintainable.
  5. The fr, or fraction unit is a very powerful way of describing grid templates.

We’ve come a long way in just two tutorials, but you’re now the proud owner of a very neat and concise grid! In the next tutorial we’ll explore grid areas, taking a look at the span keyword and some practical layouts.

Useful Resources


Python and Ruby programming Complete step-by-step Tutorial https://t.co/N1ixi0vRCQ #programming


from Twitter https://twitter.com/Web_improve

How to Create a Set of Retro Media Icons in Affinity Designer

#webdevelop #webdesigns Blog: Shoot fireballs from your wrist with Pyro Mini: This wearable flamethrower can shoot… https://t.co/Y7thyRfnVl


from Twitter https://twitter.com/Web_improve

#webdevelop #webdesigns Win an Astell & Kern AK70: Spotfiy is great and all, but more often than not streaming mus… https://t.co/jkvOK24C3n


from Twitter https://twitter.com/Web_improve

How to Organize Your Pictures for Free With Daminion

Java Interview Guide : 200+ Interview Questions and Answers https://t.co/b8lyxFXe9j #programming


from Twitter https://twitter.com/Web_improve

Wednesday, September 21, 2016

jQuery Fundamentals Powerful Bootcamp for beginners https://t.co/58f7nc2flf #webdevelopment


from Twitter https://twitter.com/Web_improve

Zero to Hero with jQuery - Tutorial #JavaScriptWorld #jQuery #Code #Programming ☞https://t.co/9lABO85rIq https://t.co/HAqD1dMztd


from Twitter https://twitter.com/Web_improve

jQuery Fundamentals Powerful Bootcamp for beginners https://t.co/58f7ncjQcN #webdevelopment


from Twitter https://twitter.com/Web_improve

Practical CSS Website Development: Crash Course https://t.co/7ERGOxM2uk #webdevelopment


from Twitter https://twitter.com/Web_improve

Envato Tuts+ Community Challenge: Created by You, September 2016 Edition

#webdevelop #webdesigns Blog: Multitalented Tools: Hack all areas of your life with the latest multitools. https://t.co/10URmFwdFc


from Twitter https://twitter.com/Web_improve

Practical CSS Website Development: Crash Course https://t.co/7ERGOy3DSU #webdevelopment


from Twitter https://twitter.com/Web_improve

#webdevelop #webdesigns Fresher Tech: Uni Gear Guide 2016: Acer Chromebook 14   Unlike college and secondary schoo… https://t.co/1hfI3HavNJ


from Twitter https://twitter.com/Web_improve

Interaction Design Specialist For Web Developers https://t.co/NZ1FST65yS #webdevelopment


from Twitter https://twitter.com/Web_improve

WordPress Development For Beginners https://t.co/kiq8x12hz3 #webdevelopment


from Twitter https://twitter.com/Web_improve

Apply Photo Filters With Core Image in Swift

WordPress Development With VVV

What Is Rolestorming? A Useful (+Playful) Group Brainstorming Method

Bootstrap 4.0 New Features: Build Responsive Website https://t.co/H44F5cVOjn #webdevelopment


from Twitter https://twitter.com/Web_improve

CSS Grid Layout: A Quick Start Guide

How to Create School Supply Icons in Adobe Illustrator

CodeIgniter Framework (Compatible with Version 3 & above) https://t.co/UJZxKYymAn #programming


from Twitter https://twitter.com/Web_improve

How to Frame Your Webcam Video Like a Pro

12,000+ Professional Icons in the iconapp.io Forever Plan - only $47! https://t.co/1TV6paPbNe #developerdeals


from Twitter https://twitter.com/Web_improve

Tuesday, September 20, 2016

Developing Universal Windows Apps with HTML and JavaScript #JavaScriptWorld #windowsapps #html #Javascript ☞… https://t.co/Ckth997xcF


from Twitter https://twitter.com/Web_improve

Multithreading, Java Generics, Collections & More (4 in 1) https://t.co/rcREi6BZHp #programming


from Twitter https://twitter.com/Web_improve

A Complete Java Tutorial Course for Beginners https://t.co/1i5wGnX1sV #programming


from Twitter https://twitter.com/Web_improve

Rediscovering JavaScript #JavaScriptWorld #JavaScript #java #code #programming #webdev #webdevelopment ☞… https://t.co/ADha2WXPdS


from Twitter https://twitter.com/Web_improve

C programming, Golden step to become software developer https://t.co/UuwTYNFxsH #programming


from Twitter https://twitter.com/Web_improve

JSP (Java server pages), Servlet & JSTL tutorial https://t.co/F67K2AH3lk #programming


from Twitter https://twitter.com/Web_improve

The Complete Web Developer Course with Rails Online Training Program https://t.co/ageFLtyunk #webdevelopment


from Twitter https://twitter.com/Web_improve

#webdevelop #webdesigns RT IA_UXJOBS: #uxjobs (Bay Area) Senior Product Designer - Workbridge Associates - San Fra… https://t.co/Q8x8nPd5ki


from Twitter https://twitter.com/Web_improve