Minimal time logs tracker. Runs on Node.js. Features:
-
Friction-free time logging. Just type
t shopping in the grocery
to start a task. -
Everything in the terminal. It's a Node.js command-line app that runs anywhere Node can. (even Windows!)
application: you-app-name-here | |
version: 1 | |
runtime: python | |
api_version: 1 | |
default_expiration: "30d" | |
handlers: | |
- url: /(.*\.(appcache|manifest)) | |
mime_type: text/cache-manifest |
function slugify(text) | |
{ | |
return text.toString().toLowerCase() | |
.replace(/\s+/g, '-') // Replace spaces with - | |
.replace(/[^\w\-]+/g, '') // Remove all non-word chars | |
.replace(/\-\-+/g, '-') // Replace multiple - with single - | |
.replace(/^-+/, '') // Trim - from start of text | |
.replace(/-+$/, ''); // Trim - from end of text | |
} |
Minimal time logs tracker. Runs on Node.js. Features:
Friction-free time logging. Just type t shopping in the grocery
to
start a task.
Everything in the terminal. It's a Node.js command-line app that runs anywhere Node can. (even Windows!)
// http://stackoverflow.com/questions/18432577/stacked-tabs-in-bootstrap-3 | |
.tabs-below, .tabs-right, .tabs-left { | |
.nav-tabs { | |
border-bottom: 0; | |
} | |
} | |
.tab-content > .tab-pane, | |
.pill-content > .pill-pane { | |
display: none; |
#GDG Android in Berlin brainstorming session
On November 27, 2013 I was asking the brilliant Android developers at GDG Android in Berlin for their favorite libraries that make their lives easier and should be included in every newly developed app.
This is the list of libraries we collected during this 10 minute session.
#!/usr/bin/env python | |
""" | |
JSON encoder/decoder adapted for use with Google App Engine NDB. | |
Usage: | |
import ndb_json | |
# Serialize an ndb.Query into an array of JSON objects. | |
query = models.MyModel.query() |
@media (min-width: 768px) { | |
.seven-cols .col-md-1, | |
.seven-cols .col-sm-1, | |
.seven-cols .col-lg-1 { | |
width: 100%; | |
} | |
} | |
@media (min-width: 992px) { | |
.seven-cols .col-md-1, |
All of the below properties or methods, when requested/called in JavaScript, will trigger the browser to synchronously calculate the style and layout*. This is also called reflow or layout thrashing, and is common performance bottleneck.
Generally, all APIs that synchronously provide layout metrics will trigger forced reflow / layout. Read on for additional cases and details.
elem.offsetLeft
, elem.offsetTop
, elem.offsetWidth
, elem.offsetHeight
, elem.offsetParent
$white: #ffffff; | |
$black: #000000; | |
$red50: #ffebee; | |
$red100: #ffcdd2; | |
$red200: #ef9a9a; | |
$red300: #e57373; | |
$red400: #ef5350; | |
$red500: #f44336; | |
$red600: #e53935; | |
$red700: #d32f2f; |
@api_v1.resource('/run/patch', endpoint='api.run.patch') | |
class PatchRunAPI(restful.Resource): | |
def get(self): | |
deferred.defer(update_run_task) | |
return flask.jsonify({ | |
'result': 'The queues started patching all run models!!', | |
'status': 'success', | |
}) | |