winwardo / solid-octo-disco Goto Github PK
View Code? Open in Web Editor NEWTopher and Vasily's Intelligent Web Assignment
Topher and Vasily's Intelligent Web Assignment
ability to use import/export rather than let x = require('x'); and not having to put "use strict" over every file.
To do this use gulp.
Also see https://github.com/arnarthor/node-es6-boilerplate for inspiration, checked it over and it neat and understandable about how to enable this as well as some other goodies ๐
Use the Twit package for this, need to be able to run basic searches, maybe check out streaming.
Allow access to stream from Twitter, so we can see new tweets instantly.
Two options on how to request searches:
I believe option two is the better.
Live Stream tweats based on a randomly selected team of the day
In the given query, who are the users who make up the most tweets? This is based on the given search query.
Per user, find the most used words - see #6.
Adding a pie-chart for this would be neat.
subcomponet of #4
Category selections include:
Team
Player
League
Match ? maybe
Sensitivity (on/off)
Get semantic-UI setup and working for the project
Just use Google Maps probably and drop pins on, but we'll check out other potential APIs.
Have something along these lines in webpack.config.dev.js
module.exports = {
devtool: 'eval',
entry: [
'eventsource-polyfill', //necessary evil for hot loading with IE
'webpack-hot-middleware/client',
'./src/index.js'
],
output: {
path: path.join(__dirname, 'public'),
filename: 'bundle.js',
publicPath: '/public/'
},
plugins: [
new webpack.HotModuleReplacementPlugin(),
new webpack.NoErrorsPlugin()
],
module: {
loaders: [{
test: /\.js$/,
loaders: ['babel'],
include: path.join(__dirname, 'src')
}, {
test: /\.css$/,
loader: 'style!css',
include: path.join(__dirname, 'css')
}]
}
};
and devServer.js:
var path = require('path');
var express = require('express');
var webpack = require('webpack');
var config = require('./webpack.config.dev');
var app = express();
var compiler = webpack(config);
app.use(require('webpack-dev-middleware')(compiler, {
noInfo: true,
publicPath: config.output.publicPath
}));
app.use(require('webpack-hot-middleware')(compiler));
app.get('*', function(req, res) {
res.sendFile(path.join(__dirname, '/public', 'index.html'));
});
app.listen(8080, 'localhost', function(err) {
if (err) {
console.log(err);
return;
}
console.log('Listening at http://localhost:8080');
});
To run : "node devServer.js" command
for #4
MapDispatchToProps function and pass to connect redux function from SearchTermList and pass to props of 'TermItem' for delete and edit 'paramTypes'.
Style Search 'TermItem' to have appropriate @,#,from,keyword UI feedback to user of each TermItem depending on the paramTypes of its query prop
From the data retrieved from #1 and also think about relating them to Tweeters where possible
This is so social media sites that have a lower userbase aren't always at the bottom of the results
Soccer -> octopus -> social
The Premier Social Soccer Graph
ie most used word Lemon = [LeMON, lemon, LeMoN]
currently can only hide/show the variants individual which means 3 clicks for user and 3 different actions
should be able to hide/show all variants with 1 click and 1 action since only advanced users are likely to care about the variants of the mostUsedWords
For the Twitter API search
At the moment it does a dummy search, it should be using real data.
Only run development server/middleware etc.. when NODE_ENV set to development otherwise if undefined run production.
This is to make sure it works on Lewin
Use Semantic-UI with React. ๐
Only add Redux if we know there's a good use for it.
When searching, a user should be able to tick a check box which says whether or not they want their query terms to result in intersected, or unioned results - e.g. more queries = more specific vs more general.
By default we'll choose OR.
#82
Also make it a vbit prettier :)
This is currently mitigated in #84 by wrapping in a try/catch, but it's indicative of the code below not correctly checking before trying to access [0]
React
Express
Babel for ES6
OrientDB
Webpack
Semantic-UI
Anything else @VasilyShelkov?
Promises are resolved at the wrong times
Being able to save the queries made by a user to be either alerted or quickly be able to use that saved query in future uses
The retrieved queries need to be stored as:
-a source of data
-cache to reduce the number of queries to Twitter
GraphQL/Relational/NoSQL?
If a user logs in with Twitter, we can find out who they're following. We can then find out if any of those accounts are following people we know to be footballers or big football tweeters, and can recommend them.
(at least) 10 most active users and the main keywords associated with them Example:
< profile picture> @WayneRooney 25 tweets - most frequent words: pal(100), mate(100), ball(11), player(8)โฆ
@lizziecundy tweets: 12 - most frequent words: game(12), what(11), gorgeous(8) โฆ
This is the requirement from the assignment spec
Add header follow #5
Especially useful to people who want to know about transfers as soon as possible
at /search/:query
POST an object of this minimum form: {'query': 'some string'}, and it will return data from OrientDB.
Before returning, it MAY search Twitter (or Flickr, etc) for extra, more updated information using some heuristic.
Add geo location where available to the Tweets that are stored when a search query is made
Right now, the Search API only considers the first term we search for.
We need to be able to search on multiple queries at once, then either intersect (for) AND or union (for OR) the results.
Add a filewatcher such as nodemon (https://github.com/remy/nodemon) so that during development don't have to keep killing the server and restarting for every little change made.
Via Twitter (maybe facebook, google+) and just standard login with email/password
{'query': 'some string'}
at the minimum, although obviously there'll be a lot more depth to it.
@VasilyShelkov comment as you get a better idea of what you want to send from #4
#46 will need to keep up with the latest version of this.
If this isn't written with complete test coverage I will ๐ข
Finding a public rest API for football related information such as:
-> Teams
-> Players
-> Match Data
Open up a Stream, when a new tweet arrives, display on map.
http://tweetping.net an example.
E.g.
football (x)
. Football (x)
. FOOTBALL (x)
For a more finegrained view of words
I recommend we have a series of input boxes that add an extra one as you type, so the user doesn't have to worry about typing AND and OR etc.
Also if we can have a name -> twitter account optional substitution that'd be cool. E.g. typing in "Wayne Rooney" recommends "Did you mean @WayneRooney?"
Find what public APIs are available from Twitter.
Check out any convenient npm libraries like twit: https://www.npmjs.com/package/twit
Decouple it enough to allow for Tweets vs other types of post, but get a basic design out. We can make it look nicer later.
query each search term individually to our DB and check the latest result if older than X then search twitter.
Two less files and plus I can't run them in Linux :( npm universal and shouldn't have problems running it right ?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.