Lightcloud es una base de datos basada en clave-valor muy rápida, desarrollada por la gente de Plurk, que llega casi al rendimiento de Memcachedb. Está basado en Tokyo Tyrant.
Puede almacenar millones de keys en pocos servidores
Escala horizontalmente
Los nodos se replican vía master-master, failover automático y balanceo de carga
Por ahora solo está para Python, pero el puerto puede ser desarrollado fácilmente en cualquier lenguaje
COLOURLovers , un sitio en donde los usuarios pueden enviar, describir, comentar y votar sus paletas de colores favoritas. Entre las secciones del sitio está el ranking con las combinaciones más votadas, un buscador de tendencias, noticias y varios art
El MEC ha puesto un curso online para aprender Linux Ubuntu. Nos explicancan desde la instalación de Ubuntu, pasando por la configuración básica del sistema, herramientas ofimáticas, gestión de archivos … todo ello con capturas de pantalla, estas c
Aunque sea un poco antiguo… Cómo incluir vÃdeos de youtube y google video sin romper la validación en xhtml. En el artÃculo enlazan a otra anotación de A List Apart que da otras formas de incluir vÃdeos de quictime, windows media player…
El Ayuntamiento de Madrid ha puesto en marcha el portal de Internet madripedia.es, una ‘enciclopedia libre virtual’ en la que los ciudadanos pueden aportar sus conocimientos y su visión sobre las peculiaridades y los acontecimientos históricos de la cap
Luego de varios meses recolectando información, hoy les presentamos una nueva sección de nuestro sitio para recolectar a todas las empresas entusiastas del web.
Como se puede ver, existen dos scripts dentro de npm: build que compila el js y extrae los CSS, y dev, que arranca el servidor de webpack habilitando HMR (🎶 ¡ya no puedo vivir sin él! 🎶).
Ambas configuraciones de webpack usan un script en común (webpack.config.common.js):
const webpack = require( 'webpack' );
const path = require( 'path' );
// Carga los ficheros .vueconst VueLoaderPlugin = require( 'vue-loader/lib/plugin' );
// Configura stylelintconst StyleLintPlugin = require( 'stylelint-webpack-plugin' );
// Para obtener un path para los aliasfunctionresolve( dir ) {
return path.join( __dirname, '.', dir );
}
module.exports = {
mode: 'production',
// Fichero inicial del proyecto
entry: './js/main.js',
// Fichero final para incluir
output: {
filename: 'js/main.js',
publicPath: '/dist/',
},
module: {
// Reglas para los ficheros
rules: [
{
test: /\.js$/,
exclude: /node_modules/,
loader: 'babel-loader',
},
{
test: /\.vue$/,
loader: 'vue-loader',
},
{
test: /\.css$/,
use: [
'css-loader',
'sass-loader',
],
},
],
},
plugins: [
new webpack.HotModuleReplacementPlugin(),
new VueLoaderPlugin(),
new StyleLintPlugin( {
files: [ '**/*.{vue,htm,html,css,sss,less,scss,sass}' ],
} ),
],
resolve: {
extensions: [ '.js', '.vue', '.json' ],
alias: {
'@': resolve( '' ),
},
},
};
El frontend se gestiona desde el fichero main.js, que inicializará Vue y añadirá el componente principal:
import Vue from 'vue';
import Buefy from 'buefy';
import'buefy/dist/buefy.css';
import App from './components/App.vue';
import'@/assets/scss/main.scss';
Vue.use( Buefy );
new Vue( {
el: '#app',
components: {
App,
},
render: ( c ) => c( 'app' ),
} );
// accept replacement modulesif ( module.hot ) {
module.hot.accept();
}
Y ya por último el componente App.vue, que muestra simplemente un poco de HTML