background preloader

PouchDB, the JavaScript Database that Syncs!

Related:  kazooskiy

Capturing Audio & Video in HTML5 Many browsers now have the ability to access video and audio input from the user. However, depending on the browser it might be a full dynamic and inline experience, or it could be delegated to another app on the user's device. On top of that, not every device even has a camera. HTML5 Video Player Video.js is a JavaScript and CSS library that makes it easier to work with and build on HTML5 video. This is also known as an HTML5 Video Player. Video.js provides a common controls skin built in HTML/CSS, fixes cross-browser inconsistencies, adds additional features like fullscreen and subtitles, manages the fallback to Flash or other playback technologies when HTML5 video isn't supported, and also provides a consistent JavaScript API for interacting with the video. What's HTML5 Video? HTML is the markup language that makes up every page on the web. The newest version, HTML5, includes specifications for a <video> tag, that's meant to allow web developers to add a video to a page in the same way they would add an image.

What’s New in Node.js v0.12 – Performance Optimizations The long development cycle for v0.12 (nine months and counting, the longest one to date) has given the core team and contributors ample opportunity to introduce a number of performance optimizations. This blog post aims to cover the most notable ones. Cork support for writable streams Writable streams now support a “corked” mode, similar to the TCP_CORK and TCP_NOPUSH socket options from `man tcp`. Offline-First with Node.js and Hoodie: A Practical Introduction to Progressive Web Apps Progressive Web Apps (or PWAs for short) aim to deliver a better and engaging user experience by applying progressive enhancements using modern web standards and best practices. These include among others service workers, push APIs, background sync and serving your page over HTTPS. If the app is loaded in browsers that doesn’t support a web standard, it should work just like a normal website.

A Simple Trip Meter using the Geolocation API Introduction The Geolocation API lets you find out where the user is and keep tabs on them as they move around, always with the user's consent. This functionality could be used as part of user queries, e.g. to guide someone to a destination point. It could also be used for "geo-tagging" some content the user has created, e.g. to mark where a photo was taken. The API is device-agnostic; it doesn't care how the browser determines location, so long as clients can request and receive location data in a standard way.

Introducing JSON Template March 2009 JSON Template is a minimal but powerful templating language, currently implemented in bothPython and JavaScript. To use it, simply copy the Python file or the JavaScript file into your project. Neither has any external dependencies. Since there are over one bajillion template languages for Python alone, it deserves some explanation. Stinger: Interactive Query for Apache Hive Apache Hive is the de facto standard for SQL-in-Hadoop with more enterprises relying on this open source project than any alternative. The Stinger Initiative is a broad, community-based effort to drive the future of Apache Hive, delivering 100x performance improvements at petabyte scale with familiar SQL semantics. Project Goals Speed Deliver interactive query through 100x performance increases as compared to Hive 10. Scale

Making Your App Awesome When the Network Isn’t (Part 2) As I shared in the first article of this beginner-friendly series, the Offline First development approach plans for the most constrained network environment first, enabling a great user experience even while a device is offline or has only an intermittent connection, and providing progressive enhancement as network conditions improve. Even if your app isn’t specifically intended to be useful offline, the speed and performance delivered by an Offline First design pattern can greatly improve user satisfaction. Through the example of the offline-capable project management tool I built to manage the editorial workflow for the Offline Camp Medium publication, we saw there how to enable offline data storage, sync, and sharing with PouchDB and Apache CouchDB™. Keeping our data local, though, isn’t enough to make it useful to us while we’re offline. The user interface for our web app, which allows us to access that data, needs to be available offline as well. The typical offline experience

Hello Backbone.js Tutorial Shameless advertisement: Don't forget to check out Agility.js, a simpler alternative to Backbone.js. Hello Backbone is a simple Backbone.js tutorial comprised of self-explanatory "hello world" examples of increasing complexity. It was designed to provide a smoother transition from zero to the popular Todos example. Backbone.js offers a lean MVC framework for organizing your Javascript application. It leads to more maintainable code by untangling the "spaghetti" of callbacks tied to different parts of the DOM and the backend server that often arises in rich client-side applications. The tutorial starts with a minimalist View object, and progressively introduces event binding/handling, Models, and Collections.

Making Your App Awesome When the Network Isn’t (Part 1) Enabling offline data storage, sync, and sharing Like every useful web form, our project management tool needs a place to store the data it collects. If we store that data exclusively in a remote cloud database, it will only be accessible when we have a network connection. If we store it only locally on the device, we can’t have multiple users or access our data across multiple devices.