반응형
반응형

Martini: Web development with Go

 

Martini makes web development with Go much easier. It has a flexible routing layer, comes with a set of stock middleware, and can leverage open source web packages built in Go.

martini

 

Martini is a powerful package for quickly writing modular web applications/services in Golang.

package main

import "github.com/codegangsta/martini"

func main() {
  m := martini.Classic()
  m.Get("/", func() string {
    return "Hello world!"
  })
  m.Run()
}

Install the package (go 1.1 and greater is required):

go get github.com/codegangsta/martini

Join the Mailing list

Watch the Demo Video

Features

  • Extremely simple to use.
  • Non-intrusive design.
  • Play nice with other Golang packages.
  • Awesome path matching and routing.
  • Modular design - Easy to add functionality, easy to rip stuff out.
  • Lots of good handlers/middlewares to use.
  • Great 'out of the box' feature set.
  • Fully compatible with the http.HandlerFunc interface.

More Middleware

For more middleware and functionality, check out the martini-contrib repository.

Table of Contents

반응형
반응형

OpenTSDB: Scalable time-series database

opentsdb

 

What's OpenTSDB?

OpenTSDB is a distributed, scalable Time Series Database (TSDB) written on top of HBase. OpenTSDB was written to address a common need: store, index and serve metrics collected from computer systems (network gear, operating systems, applications) at a large scale, and make this data easily accessible and graphable.

Thanks to HBase's scalability, OpenTSDB allows you to collect many thousands of metrics from thousands of hosts and applications, at a high rate (every few seconds). OpenTSDB will never delete or downsample data and can easily store billions of data points. As a matter of fact,StumbleUpon uses it to keep track of hundred of thousands of time series and collects over 1 billion data points per day in their main production datacenter. Other sites such asBox orTumblr are pushing tens of billions of data points per day.

Imagine having the ability to quickly plot a graph showing the number ofDELETE statements going to your MySQL database along with the number of slow queries and temporary files created, and correlate this with the 99th percentile of your service's latency. OpenTSDB makes generating such graphs on the fly a trivial operation, while manipulating millions of data point for very fine grained, real-time monitoring.

반응형
반응형

RocksDB: Persistent key-value store for fast storage http://ow.ly/2BzPfY

 

RocksDB: Persistent key-value store for fast storage

Embedded key-value store for fast storage

rocksdb

Homepage: http://rocksdb.org/
GitHub: https://github.com/facebook/rocksdb
Docs: http://rocksdb.org/overview.html

 

 

The rocksdb library provides a persistent key value store. Keys and values are arbitrary byte arrays. The keys are ordered within the key value store according to a user-specified comparator function.

The library is maintained by the Facebook Database Engineering Team, and is based on leveldb, by Sanjay Ghemawat and Jeff Dean at Google.

This overview gives some simple examples of how RocksDB is used. For the story of why RocksDB was created in the first place, see Dhruba Borthakur's introductory talk from the Data @ Scale 2013 conference.

 

 

 

반응형
반응형

Web.go: Create web applications with Go

Framework - Web Application/Added on November 17, 2013/Add to favorites

Web.go is an easy way to create web applications using Go, a lightweight web app framework that doesn’t impose any kind of scaffolding on the user. It’s great for creating simple, performant backend web services.

webgo

 

 

web.go

web.go is the simplest way to write web applications in the Go programming language. It's ideal for writing simple, performant backend web services.

Overview

web.go should be familiar to people who've developed websites with higher-level web frameworks like sinatra or web.py. It is designed to be a lightweight web framework that doesn't impose any scaffolding on the user. Some features include:

  • Routing to url handlers based on regular expressions
  • Secure cookies
  • Support for fastcgi and scgi
  • Web applications are compiled to native code. This means very fast execution and page render speed
  • Efficiently serving static files

 

 

 

반응형
반응형

 

microjs - a listing of small JS libraries

 

 

 

http://microjs.com/#

 

 

https://github.com/madrobby/microjs.com

 

 

 

Fantastic Micro-Frameworks and
Micro-Libraries for Funand Profit!

How much library code do you really need — 50K? 100K? 150K? More? How much of that do you really use?

Sure, we all love our favorite monolithic frameworks, and sometimes we even use them fully. But how often do we reach for the ride-on John Deere tractor with air conditioning and six-speaker sound system, when a judiciously applied pocketknife would do the trick better, faster, slicker?

Micro-frameworks are definitely the pocketknives of the JavaScript library world: short, sweet, to the point. And at 5k and under, micro-frameworks are very very portable. A micro-framework does one thing and one thing only — and does it well. No cruft, no featuritis, no feature creep, no excess anywhere.

Microjs.com helps you discover the most compact-but-powerful microframeworks, and makes it easy for you to pick one that’ll work for you.

Want to add your own? Fork this site on GitHub, add your framework to data.js and submit a pull request.

 

 

 

반응형
반응형
https://github.com/component/component/wiki/Components

 

 

component module list - all the components

 

 

 

Components

This page acts as our "registry". When you add a component to this list it becomes automatically available to component-search(1) and http://component.io which are refreshed every 15 minutes. It'll also get tweeted by @component_js

The eventual goal of components is that you use only the pieces that you need, not large libraries like jQuery or underscore, these should be application-level dependencies, if used at all. However if you must use them for now, design your APIs in such a way that these are merely implementation details, for example $(selector).mylibrary(options) is not a good choice, so that they can be phased out. Try your best to create components everyone may use, then create backbone-<name> based on that code when possible, otherwise the community will remain fragmented.

AJAX

Routing

CQRS DDD Domain

Huskies

  • huskies/huskies – method or function processor before execution
  • huskies/lock - Lock method according to options, is huskies framework's middle
  • huskies/strict - strict method ,convert and validate arguments, is huskies middleware.

Access Control

Data Modelling

Data Structures

Browser Storage

Dependency Injection

UI Elements

DOM Interaction

Conversion Utilities

Control Flow

Async utilities

Function Utilities

Date Utilities

Array Utilities

String Utilities

Number Utilities

Object Utilities

Math Utilities

Database Utilities

Debugging Utilities

Performance Utilities

WebGL

Canvas

SVG

Shims

Testing

Styling

Templating

Audio

Video

Feature Detection

Other

Crypto

MVC

Backbone

Ember

Foundation

SUIT

  • suitcss/suit – HTML/CSS framework for creating loosely coupled UI components
  • suitcss/base – SUIT base styles for web apps

Utilities

Components

Gaming

CSS Animations

Fonts

Colors

Themes

Aurora

Nightrider

Celtic

Darktone

Display component themes

AngularJS

Localization

Web APIs

반응형

+ Recent posts