Presentación (no-oficial aún) de Pillars.js, framework de desarrollo web para #Node.js en el #OpenExpoDay #Madrid gracias a los chicos de @NodeJsMadrid.
Más información, documentación y referencia de #PillarsJS en www.pillarsjs.com
Licencia MIT.
5. • Optimización de tiempos de desarrollo
• Entorno homogéneo
• Estructuras Dinámicas
• “Pluginizable”
• Herramientas
Objetivos de Pillars.js
Proporcionar un entorno de trabajo homogéneo, asequible y
optimizado, para de esta forma hacer llegar el desarrollo web
en Node.js a un público más amplio.
6. Objetivo
Ofrecer a la comunidad un marco de
desarrollo web para Node.js, sencillo,
ágil y bien documentado.
Las herramientas que necesitamos para el desarrollo web, estén implementadas de base.
Make it easy!
13. Negociación HTTP
gangway: un objeto generado
automáticamente en cada petición.
Tiene como propiedades los datos del
request parseados y métodos para la
respuesta (response).
gw
Plugins built-in
LangPath, encoding,
maxUploadSize, CORS,
directory, bodyReader
{
14. Gestión de Caché del sistema de archivos
.maxCacheFileSize
Tamaño máximo de un archivo para que entre en la
caché. Si el archivo supera este tamaño no lo mete en
memoria ni lo comprime.
.cacheMaxSamples
Dato relacionado con la heurística del reciclado de
caché del servidor, indica el máximo número de usos
que se tienen en cuenta para el cálculo.
.cacheMaxSize Tamaño máximo de la caché del servidor.
.cacheMaxItems
Número máximo de elementos en la caché del
servidor.
project.config
16. Datos de la solicitud
IP gw.ip
HOST gw.host
PUERTO gw.port
MÉTODO gw.method
FICHEROS gw.files
POST gw.content.params
GET gw.query
PATH PARAMS gw.pathParams
HTTPS gw.https
ejemplos
18. Gestión de Cookies
Seteo cookies para el envío gw.setCookie(name, value [, config]);
Cookies enviadas en el request gw.cookie;
WWW-Authenticate
gw.authenticate();
gw.auth.user
gw.auth.pass
ejemplos
25. project.plugins
El funcionamiento y flujo de trabajo en
Pillars.js se basa en la Cadena de Plugins, que
está formada por objetos de la Clase Plugin.
Plugin router.js
Controlador
(Route)
37. templated Añade motores de renderizado. https://github.com/bifuer/templated
textualization Internacionalización https://github.com/bifuer/textualization
Scheduled Automatización de tareas con patrones cron y control de
estado.
https://github.com/bifuer/scheduled
Crier Gestión de logs, configuración de almacén, tipo de log,
etc.
https://github.com/bifuer/crier
Procedure Simple JS async development https://github.com/bifuer/procedure
JSON.decycled
Versión de JSON.stringify() y JSON.parse()
respectivamente, pero compatible con objetos con
referencias circulares, expresiones regulares, objetos
de error, objetos date y funciones.
https://github.com/bifuer/JSON.decycled
Algunas de las librerías están aún sin documentar. Estamos trabajando en ello ;).
39. Referencia y manuales
disponibles en:
www.pillarsjs.com
¡Gracias a todos por vuestra
atención!
Si quieres colaborar
{chelo@pillarsjs.com
javi@pillarsjs.com
Hinweis der Redaktion
- gracias, grupo meetup nodejs y al openexpoday
- No tenemos aún una presentación formal de producto.
- Aprovechando el expoday, tenemos la oportunidad de hacer una presentación del proyecto, Feedback
- Patadas en el culo por tener una versión lo más estable posible, con la máxima doc. posible.
- muchas librerías, muchas decisiones de qué hacer, integrar todas las librerías
- Necesidad de tener algo base sobre lo que construir aplicaciones web
- licencia, crear comunidad
- usar sin restricciones
- feedback, mejorar y colaborar
- Grupos de controladores, conjunto de funcionalidades concreto
- Cada route tiene objetos de configuración con propiedades: herencia.
- Se van pasando el control la solicitud/gangway
- Configuración de route --> lo importante que es para los plugins.
- En gw.routing vamos a tener toda la información de la configuración del objeto route.
- Integración de i18n con Pillars.js
- Si en un directorio se encuentra un archivo de una extensión conocida por el sistema de templates, se mostrará renderizado, es como funciona el sitio actual de la referencia de Pillarsjs.com.
- si hay un index, se muestra el index. Por lo tanto funciona como lo que podemos tener con un servidor apache de base.