elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Curso de javascript por TickTack


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web (Moderador: #!drvy)
| | |-+  Flicker.js - Creemos un framework web latino para node,js
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Flicker.js - Creemos un framework web latino para node,js  (Leído 2,945 veces)
Dext3rCode

Desconectado Desconectado

Mensajes: 5


Ver Perfil
Flicker.js - Creemos un framework web latino para node,js
« en: 11 Mayo 2016, 00:51 am »

Que tal gente!, en esta ocasion les escribo para presentarle mi nuevo proyecto, Flicker.js.

Flicker.js en un framework web para node.js que usa la sintaxis de ES6 por ende es compatible con una version >=6.0.0 de node. Mi idea al crear este framework comenzo como una tarea personal para crear un framework desde cero en node, ya que usaba uno pero tenia ganas de ver como es todo por dentro (mi curiosidad como programador) y decidi empezarlo, luego me gusto como iba y decidi lanzarlo en NPM para ver que tal me iba. Actualmente Flicker.js esta en su version 1.0.1 y cuenta con un paquete como generador de aplicaciones (flicker-easy).

Para que vean algunas funcionalidades de Flicker.js

Código
  1.  
  2. const flicker = require('flickerjs'); /* requerir el modulo */
  3. var app = flicker(); /* iniciar la app */
  4. app.to({ url: '/'}, /* la funcion app.to recibe dos parametros, un objecto de configuracion que contiene el metodo y la url a manejar (ambos opcionales) y el callback que ejecutara al manejar la peticion*/
  5.    (req, res) => { // recibe los parametros peticion y respuesta
  6.        res.send('Hello Flicker.js'); /* envia al usuario el mensaje "Hello Flicker.js" con statusCode 200 por defecto*/
  7. })
  8.    .listen(3000); // a la escucha en el puerto 3000
  9.  
  10.  


Tambien puedes anidar routers, un ejemplo de una pequeña REST API:

Código
  1.  
  2. const flicker = require('flickerjs');
  3. const bodyParser = require('body-parser');
  4. const compress = require('compression');
  5.  
  6. let app = flicker();
  7.  
  8. app.to(compress())
  9.    .to(bodyParser.json())
  10.    .to(bodyParser.urlencoded({ extended: true }));
  11.  
  12. let api = app.Router();
  13.  
  14. app.locals.todos = [
  15.    {
  16.        description: "Lorem 0"
  17.    },
  18.    {
  19.        description: "Lorem 1"
  20.    },
  21.    {
  22.        description: "Lorem 2"
  23.    },
  24.    {
  25.        description: "Lorem 3"
  26.    },
  27.    {
  28.        description: "Lorem 4"
  29.    },
  30.    {
  31.        description: "Lorem 5"
  32.    }
  33. ];
  34.  
  35. api.to({ url:'/todos', method: 'GET'},
  36.    (req,res,next) => { /* retorna todos los todos  */
  37.        res.json(app.locals.todos);
  38. })
  39.    .to({ url: '/todos/:todo', method: 'GET'},
  40.        (req,res,next) => { /*  retorna un todo */
  41.            if(req.params.todo >= app.locals.todos.length){
  42.                next();
  43.            }
  44.            else{
  45.                res.json(app.locals.todos[req.params.todo]);
  46.            }
  47.    })
  48.    .to({ url: '/todos', method: 'POST'},
  49.        (req,res,next) => { /*  insertar un nuevo todo */
  50.            app.locals.todos.push(req.body.todo);
  51.            res.json(app.locals.todos)
  52.    })
  53.    .to({ url:'/todos/:todo', method: 'DELETE'},
  54.            (req,res,next) => { /*  borrar un todo */
  55.            if(req.params.todo >= app.locals.todos.length){
  56.                next();
  57.            }
  58.            else{
  59.                app.locals.todos.splice(req.params.todo,1);
  60.                res.json(app.locals.todos);
  61.            }
  62.    })
  63.    .to({ url: '/todos/:todo', method: 'PUT'},
  64.            (req,res,next) => { /*  editar un todo */
  65.            if(req.params.todo >= app.locals.todos.length){
  66.                next();
  67.            }
  68.            else{
  69.                app.locals.todos[req.params.todo] = req.body.todo;
  70.                res.json(app.locals.todos)
  71.            }
  72.    })
  73.  
  74. app.to({ url: '/api'},api) // anidamos el router (como una sub-app)
  75.  
  76.    .to({ url: '/'}, (req,res,next) => {
  77.        res.redirect("/api/todos");
  78.    })
  79.    .to((req,res,next) => {
  80.        res.json({}); // retorna un json vacio en caso de error
  81.    })
  82.    .listen(3000); /* listen */
  83.  
  84.  


Pueden ver el repositorio en github -> https://github.com/FlickerStudio/flickerjs

Mi propuesta es que esperaria con ansias que alguno de ustedes se anime a seguir el proyecto juntos, y compartir ideas para mejorarlo, ademas estoy cambiando muchas funcionalidades y agregando otras para que la logica sea muy diferente a la de Express, aunque ambos frameworks estan basados en Connect, pero lo que quiero es que sin importar su experiencia en nodejs, sus ideas y Pull request seran bien recibidos, en resumen, el repositorio esta a su disposicion.

Ademas, si se animas desearia que la comunidad del proyecto sea un poco grande y trasladar el proyecto completamente al español y que la documentacion, codigo y desarrollo sea por y para la comunidad hispana, desearia (aunque manejo un poco el ingles) que hubiera proyectos como estos que fueran completamente para la comunidad hispana, con su documentacion en nuestro idioma para aquellos que empiezan y no dominan el ingles.


Bueno esto es todo (un poco largo la verdad) lo que queria contarles!

*Cualquier sugerencia, opinion o critica sera bien recibida en los issues del repositorio, los Espero por ahi!!!, Happy Coding!.



« Última modificación: 11 Mayo 2016, 01:29 am por Dext3rCode » En línea

engel lex
Moderador Global
***
Desconectado Desconectado

Mensajes: 15.514



Ver Perfil
Re: Flicker.js - Creemos un framework web latino para node,js
« Respuesta #1 en: 11 Mayo 2016, 03:38 am »

si estás creando un framework latino por qué usas un nombre en inglés y que a demás es bien asociado con un servicio estadounidense hijo de yahoo? :s

no entiendo el valor de "latino" aquí


En línea

El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
Dext3rCode

Desconectado Desconectado

Mensajes: 5


Ver Perfil
Re: Flicker.js - Creemos un framework web latino para node,js
« Respuesta #2 en: 11 Mayo 2016, 03:56 am »

si estás creando un framework latino por qué usas un nombre en inglés y que a demás es bien asociado con un servicio estadounidense hijo de yahoo? :s

no entiendo el valor de "latino" aquí

Hermano, antes que todo Saludos!
En primer lugar, el nombre proviene de 'parpadeo' en ingles por ser un framework rapido ( rapido como un parpadeo) .

Como dije anteriormente, el software nació como una practica personal por lo que mi intención era solo crear un paquete NPM (preferiblemente en ingles) y por eso esta desarrollado en dicho idioma.
PERO, como expuse en el articulo, mi intención es transformar el proyecto en uno latino (cambio de nombre, idioma de desarrollo, comunidad, etc.) pero primero, la comunidad que lo desarrolle debe ser hispana. Por eso el motivo del artículo, para que sean ustedes que decidan a que se transforme el proyecto.

Gracias por tu comentario y espero haberte aclarado cualquier duda, pero sobre todo, disculpas!.
En línea

engel lex
Moderador Global
***
Desconectado Desconectado

Mensajes: 15.514



Ver Perfil
Re: Flicker.js - Creemos un framework web latino para node,js
« Respuesta #3 en: 11 Mayo 2016, 04:12 am »

comprendo...

está bien, la programación debe ser invariablemente en inglés, evita traducir variables y funciones eso ayuda mucho a 3ros, sin embargo todos los comentarios y bases si pueden ser hispanas al igual que el nombre..

realmente no se mucho de nodejs (no más que para revisar y modificar programas) y no se de que va tu proyecto, pero así como avance podría ver que puedo colaborar!

saludos
En línea

El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Manual 02 para aprender YII FRAMEWORK [ Instalacion de Mbmenu en YII FRAMEWORK]
PHP
Graphixx 0 5,962 Último mensaje 10 Noviembre 2011, 19:43 pm
por Graphixx
Plataforma para aprovechar al máximo Node.js
Desarrollo Web
inlain 2 2,734 Último mensaje 29 Abril 2012, 21:39 pm
por desastro
¿distro para node.js y django?
GNU/Linux
bacanzito 1 2,029 Último mensaje 1 Julio 2014, 05:56 am
por engel lex
¿Para programar en Java c++ php javascript node.js se usan las matematicas?
Programación General
bacanzito 2 2,990 Último mensaje 23 Febrero 2015, 15:57 pm
por bacanzito
Creemos un grupo de skype para novatos
Foro Libre
xxblxxbxxe 1 1,603 Último mensaje 19 Abril 2018, 19:02 pm
por simorg
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines