Git Product home page Git Product logo

comma-separated-values's Introduction

Práctica: Comma Separated Values

Tecnologías utilizadas

Se hace uso de varias tecnologías en el desarrollo de esta actividad:

  • localStorage.
  • jQuery.
  • Underscore y EJS.
  • Express.
  • SASS.
  • Heroku.

Descripción

Se trata de añadir los requisitos que a continuación se detallan al proyecto de partida que se encuentra en este repositorio. En él, se resuelve el problema de analizar una entrada de valores separados por comas generando como salida una tabla con el resultado del análisis.

Enlaces

Requisitos (1)

  • Modificar la solución actual para obtener una aplicación cliente-servidor (más detalles aquí).
  • Utilizar SASS para generar el estilo CSS.
  • Usar GULP para la automatización de tareas.
  • Se debe hacer uso de localStorage para almacenar las últimas entradas (ya hecho en la versión inicial).
  • Se usa también Underscore para las plantillas en el cliente y EJS para las del servidor.

Requisitos (2)

  • Realizar un request AJAX de manera que el navegador lea los datos de entrada y los envíe al servidor, quien calcula la tabla y devuelve en formato JSON la tabla (el array de arrays) que finalmente es insertado en la página por el cliente/navegador.
  • Aislar el cálculo de la tabla en un módulo Node.js (notación module.exports);
  • Añadir botones de selección que permitan cargar un fichero específico en una lista de ficheros en el textarea de entrada.
  • Añadir una zona de Drag-and-Drop a la que se pueda arrastrar un fichero para analizar.
  • Añadir un botón de lectura de fichero para cargar una entrada desde fichero.

Requisitos (3)

  • Se añade un botón de guardado que hace que la entrada actual se guarde en una base de datos MongoDB. El contenido de la entrada actual se guarda con un nombre que se solicita previamente al usuario y se utilizará Mongoose de Node.js para el acceso a la base de datos MongoDB.
  • Sólo se guardan hasta un límite de cuatro entradas en la base de datos. Cuando el número excede el límite, se borra uno de los anteriores para insertar la nueva entrada (en este caso, se ha optado por borrar la entrada más antigua).
  • Se pondrán tantos botones de selección de entradas como registros almacenados haya en la base de datos.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.