Ya disponible en https://odiometro.es
Este es un proyecto que ayuda a medir el nivel de odio que se genera en Twitter en tiempo real.
El objetivo de este proyecto es hacernos conscientes del nivel de debate que se produce en España, y el amplio uso de insultos, descalificaciones, etc. que se producen en Twitter. También recoge tweets de otros países hispanoparlantes.
La web hace uso de las siguientes tecnologías:
- NodeJS / Express
- Socket.io
- MySQL
- VueJS
- SASS
- Grunt
- Clonar el repositorio
git clone git@github.com:ojoven/odiometro.git
- Desde la raíz del proyecto (instalará express, socket y otras librerías)
npm install
- También desde la carpeta
/public
(instalará grunt y plugins, vue)
cd public && npm install
- Crea una base de datos e importa el dump en
db/odiometro.sql
mysql -u [username] -p [dbname] < db/odiometro.sql
- Desde
/public
tendrás que corrergrunt
para que los archivos SCSS compilen en CSS, se unifiquen los JS y el HTML. - Los componentes Vue se encuentran en
js/src/app/components
- Otros archivos interesantes son:
- bus.js -> Lo utilizamos como bus de eventos para emitir / recibir eventos
- lib.js -> Una instancia Vue que nos sirve como librería de funciones (para funcionalidades compartidas entre componentes)
- socket.js -> Simplemente inicializa socket.io en el frontend
- store.js -> Una clase "store" donde almacenamos variables que serán compartidas por varios componentes
- vue-instance.js -> Inicializa la instancia Vue principal
- en
vendor/smoothie.js
tenemos la librería que renderiza la gráfica en tiempo real - si tienes sugerencias sobre cómo optimizar el código, hacerlo más legible, refactorizar, etc. las sugerencias y los pull requests son bienvenidos.
Si tienes alguna duda, sugerencia, crítica o palabra de odio, puedes contactarme en https://twitter.com/ojoven