Data, Maps, Usability, and Performance

API canvas d3 data geo GeoJSON html5 image JavaScript json maps mysql PHP WordPress

Repeatable Field Creation and Inline Edit with Fromidable Forms

Formidable Forms Repeatable Field PHP

Last year I wrote an article on Gravity Forms and now I want to follow up with something on Formidable Forms. Instead of doing a comparison between these two WordPress plugins, I will write about two problems that I have encountered with FormidableForms and explain how I have resolved them. The first one is based on the backend, PHP code that will create repeatable fields inside a form and the second one goes into the front end, JavaScript code that helps hooking into “in-place” edit.
Read more

Minimalist WordPress Theme

Professional and Minimalist WP Theme

I’m back and happy to announce a new WordPress theme that I have created called Minimalist which you can see on this blog. Why? Because almost all WordPress themes focus on nice design and flexibility while killing performance. It looks great on the cover but then you dig in and see a lot of garbage in the source code, ridiculous amounts of database calls, a large amount of files, and plugins needed for simple stuff. Most of it is not needed.

Minimalist is simple, fast, responsive, and SEO optimized WordPress theme that can be used out of the box or as a great starting point for WP theme development. I only tweaked a few things and applied it on this blog.

Read more

Page Performance in HTTP1 vs HTTP2

http1 versus http2

When I think about HTTP2, I think about web performance and page load times. There is a lot more to HTTP2 like server push but I am very curious about the impact on website speed. How do the webperf metrics change when a page is delivered with HTTP2 instead of HTTP1? Let’s check out a waterfall comparison via WebPageTest:
Read more

Editing Gravity Forms Entries on The Front-End

edit gravity forms on frontend

If you are using WordPress and the Gravity Forms plugin, you might want to allow users to edit their posts or entries on the front-end. This is not supported by the plugin but there are other plugins or addons like Gravity Forms Edit Entries, Gravity Forms Sticky List, Gravity Forms: Post Updates, and GravityView that provide such functionality. But, they also come with other features that you might not want or need and installing more and more plugins can certainly impact performance. Moreover, a few of the plugins that I have tried would create and delete entries in GravityFroms causing missing Entry IDs which isn’t ideal and it is additional work on the system. Today, I will show you how to edit Gravity Forms entries on a page by simply using GF actions, hooks, and the API.
Read more

Top 10 Free Templates for API Documentation

Templates for API documentation

Do you need to create API docs for your RESTful API? Want to automatically generate API documentation? Today, I am going to share some free templates that are designed to showcase your API. Good documentation is really important so start with a good foundation. These API resources are simple, clean, leverage best practices, and will make your API users happy.
Read more

Online Image Editor and Photo Collage Maker

Online Image Editor

CanvasEdit – the HTML5 Photo Editor and Collage Creator

Recently, a few image editors have been created with HTML5 and Canvas. Today, I decided to build by own Photo Editor by using UI Kit for layout, FabricJS for Canvas manipulation, Color Thief for retrieving a color palette from an image, Spectrum for a color picker and other libraries like Say Cheese for integrating pictures from a webcam and noUiSlider for a nice range slider. Since I have previously covered building Instagram photo filters with HTML5, these are also included in the image editor.
Read more

Map Maker and Editor with D3.js

map creator and map designer

After building a bunch of D3 map demos, I wanted to combine them all into a Map building tool, a Map Creator based on GeoJSON or TopoJSON with many design features, editing capabilities, and proper export to SVG or PNG. It started out as an enhancement to this GeoJSON and TopoJSON Visualizer and D3 Map Starter Template. I wanted to finally use dat.GUI as a visual controller for map creation. I added some preselected maps of the world, individual countries, and even states as well as the ability to add your own map data. You can change the map projection, resize the map container, and control various design elements from colors, opacity, stroke, and even textures via Textures.js.

You also have some powerful editing capabilities: ability to remove individual objects from the map and ability to merge objects together. The best thing is that you can edit the shape of any object by clicking on it and and zooming in. This exposes small green circles on object borders that can be dragged around and the drag event changes the object shape by automatically editing the SVG path data. My previous examples on working with SVG graphics helped in adding this feature. The final image can be saved as SVG or PNG using code from the Save SVG as PNG article. Finally, I integrated SimpleModal which has a textarea where you can add points (latitude, longitude, and location name) that get added as markers on the map.
Read more

Image Proxy with Google App Scripts

google app script example

I have been a big fan of Google App Scripts. This service allows you to build powerful scripts that can be scheduled and integrated with Google (email, Google Docs, Excel) and external APIs. You write in JavaScript, within a browser based code editor right in Google Drive and the script can even be published as a web app. The quotas or limits are pretty good so you can quickly build something powerful for free.

Today, I will show how to create an Image Proxy with Google App Scripts which would allow you to grab images from other domains or go around the browser’s same-origin policy. Basically, the Google App Script is a server side proxy for your client side request. So, if you are exporting SVG as an image with images hosted on another domain or saving HTML5 Canvas with toDataURL() method, this could help you avoid tainted canvas and browser security errors. But, really, it’s just a simple example of a Google App Script published as a web app.
Read more

Automate Pinterest Pinning with CasperJS

Auto Pin on Pinterest Script

How do you pin photos on Pinterest automatically? I have covered some elements of the Pinterest API before, but I did not expose the endpoints necessary to pin via the API. None of that is yet publicly available but it got me thinking about doing more programmatically on Pinterest in general. What would it take to automate the process of pinning an image automatically? I think a simple solution is to use a headless browser and recreate the steps to make that happen. Lets go over a simple script that will login into Pinterest, retrieve an image from an external source, add pin it to a board with a pin description.
Read more

20 Free Clean and Minimalist Portfolio WordPress Themes for Seamless Web Development

If you are an artist, photographer or other creative personality, running a portfolio site is essential. Otherwise, what’s the purpose of doing your job if you don’t show your achievements to the world? If you share this point of view, then our blog post today should prove useful to you. Ordering a custom-made design can cost you a fortune. If you are on a limited budget or simply not ready to spend much on a custom-made design, then a freemium website template is just what you need to achieve success.

Today, we have handpicked 20 beautifully designed free portfolio WordPress themes that you can safely download and use for different purposes. Why did we decide to share a compilation of WP themes, you might ask? Well, the answer is simple. According to CMS Usage Statistics by BuiltWith, the WordPress market share has reached 49.47%, and this percentage is only expected to grow with time. The world’s most popular companies have chosen WP from among thousands of other Content Management Systems with which to build their sites. For instance, TechCrunch, The New York Times, Coca-Cola France, Fortune, The New Yorker, and many other well-known names have trusted their online presentation to WordPress. So, if you want your business to gain international recognition, then choosing WP for building an online portfolio would be the right solution.
Read more