Skip to content

merged updates from sprint 3 #46

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 277 commits into from
Jul 25, 2018
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
277 commits
Select commit Hold shift + click to select a range
f90e03a
added selectors to get page content
SeijiEmery Jul 12, 2018
141d078
basic test crawler now breaks page content into sections and dumps al…
SeijiEmery Jul 12, 2018
6fb62ad
added parallelism (trivial)
SeijiEmery Jul 12, 2018
19524b9
Merge branch 'development' of https://github.com/SeijiEmery/CourseGra…
xuyanwen2012 Jul 12, 2018
91c8a01
hacking on fields; may need to rewrite this
SeijiEmery Jul 13, 2018
a7d4bd0
parsed most fields (some bugs)
SeijiEmery Jul 13, 2018
621f683
fixed issues
SeijiEmery Jul 13, 2018
7ca3b59
basic graph(node view)
Kuahoo Jul 13, 2018
7b4dce9
fixed some spacing
Kuahoo Jul 13, 2018
643665e
added the color function to nodes
Kuahoo Jul 13, 2018
54b8ef8
changed var to let
Kuahoo Jul 13, 2018
1ba1086
Remove outdated api and data
xuyanwen2012 Jul 14, 2018
8e6bfc4
Fix Fetching Bug
xuyanwen2012 Jul 14, 2018
8951254
cleaned up code
SeijiEmery Jul 14, 2018
591ebe2
added course list (temp text dump)
SeijiEmery Jul 14, 2018
e50a278
Adding login page
xuyanwen2012 Jul 14, 2018
abe12e9
Adding proper List view
xuyanwen2012 Jul 14, 2018
69993f0
made changes
SeijiEmery Jul 14, 2018
a6d40ca
Cleanup old pages, components, refactoring code
xuyanwen2012 Jul 14, 2018
4712f3f
Upgrade client to https
xuyanwen2012 Jul 14, 2018
96ad40f
moved data model (temp) into separate file
SeijiEmery Jul 14, 2018
a00b278
Fake data generator
xuyanwen2012 Jul 14, 2018
c28a6a8
refactoring; setup structure to finish crawler with TDD
SeijiEmery Jul 15, 2018
cc3ae46
built out utils to enable saner child element searching
SeijiEmery Jul 15, 2018
fd84c9a
implemented childRange as a full bidirectional, random-access range
SeijiEmery Jul 15, 2018
b142662
demo-ed code to make sure the section selections work
SeijiEmery Jul 15, 2018
61e773d
wrote simple expect() library and refactored unittests
SeijiEmery Jul 15, 2018
78ccc06
PopMenu
wendyrliang Jul 15, 2018
93c4936
fixed + collected all contact info
SeijiEmery Jul 15, 2018
75b6c1f
finished parsing faculty info from the ucsc registrar
SeijiEmery Jul 15, 2018
364b083
started parsing courses
SeijiEmery Jul 15, 2018
b709af2
Database Query from Browser
xuyanwen2012 Jul 15, 2018
1c7c9ee
Add LRUCache
xuyanwen2012 Jul 15, 2018
51c163a
struggled with this last bit for ~ 20 minutes until I realized I'd ma…
SeijiEmery Jul 15, 2018
7460a82
Update Material UI with official demo
xuyanwen2012 Jul 15, 2018
c062598
Update styled-jsx
xuyanwen2012 Jul 15, 2018
55091a8
Fix api routing
xuyanwen2012 Jul 15, 2018
1594f60
fixing edge cases...
SeijiEmery Jul 15, 2018
1730ce9
cleanup + bugfixes
SeijiEmery Jul 15, 2018
e66e43f
fixed ElementRange impl
SeijiEmery Jul 15, 2018
e256b4b
added jsonizer for output
SeijiEmery Jul 15, 2018
3a5d81f
started writing thorough unittests for parser code
SeijiEmery Jul 15, 2018
912b8c6
added text dumps for testing
SeijiEmery Jul 15, 2018
404fab0
added unittests
SeijiEmery Jul 15, 2018
b6fc4be
Implementing Instant Search API
xuyanwen2012 Jul 15, 2018
c94d3f7
Refactor files, Write documents
xuyanwen2012 Jul 15, 2018
dfed76a
Adding Highlight
xuyanwen2012 Jul 15, 2018
21b7d66
Merge pull request #32 from coursegraph/feature-instant-search
xuyanwen2012 Jul 15, 2018
516b4ef
came up with thorough list of regex replacement rules (for raw text d…
SeijiEmery Jul 15, 2018
a55b1cd
Integrating actual data
xuyanwen2012 Jul 15, 2018
ff047d0
Adding Stylesheet for Search Page
xuyanwen2012 Jul 15, 2018
e45d329
renamed file; added fixSentences function
SeijiEmery Jul 15, 2018
7fbc85c
Fixed it up
ThePatrickLauderdale Jul 15, 2018
c3354a6
Initial setup
xuyanwen2012 Jul 15, 2018
36527c7
Adding costume config
xuyanwen2012 Jul 15, 2018
786f981
Initial set up
xuyanwen2012 Jul 16, 2018
0425fc3
PopMenu
wendyrliang Jul 16, 2018
6c4bd12
Start Integrate VIS and InstantSearch
xuyanwen2012 Jul 16, 2018
a82c0a4
Change API to serve data from database
xuyanwen2012 Jul 16, 2018
af7afb3
new schema
ThePatrickLauderdale Jul 16, 2018
e0458ab
made progress
SeijiEmery Jul 17, 2018
aa28d84
wrote a bunch of validator stuff for course names... then threw it ou…
SeijiEmery Jul 17, 2018
4c8e4e3
building out parse cases. not parsing semantically, just to see which…
SeijiEmery Jul 17, 2018
ad63197
adding cases
SeijiEmery Jul 17, 2018
509c6a8
added more cases. not done, but I think I'll stop here...
SeijiEmery Jul 17, 2018
828ac89
wrote nifty algorithm for transforming shitty input (ie. "CHEM 1A/B/C…
SeijiEmery Jul 17, 2018
8be5b47
finished basic output
SeijiEmery Jul 17, 2018
395c1dd
added pretty formatting
SeijiEmery Jul 17, 2018
19d66af
fixed parallelism (so it now actually works -_-)
SeijiEmery Jul 17, 2018
1f896db
added a nice-ish commandline interface
SeijiEmery Jul 17, 2018
7a4ae10
added preliminary impl for ucsc registrar...
SeijiEmery Jul 17, 2018
9fb0518
wrote a quick script to transform data into a vis.js format
SeijiEmery Jul 17, 2018
dc4a287
setup demo page
SeijiEmery Jul 17, 2018
272956b
fleshed out arguments
SeijiEmery Jul 18, 2018
9563cf5
renamed file
SeijiEmery Jul 18, 2018
f26b4ff
fixed departments (ie. should alias)
SeijiEmery Jul 18, 2018
21e5c0b
fixed edge order
SeijiEmery Jul 18, 2018
a342e53
Playing around with UCSD Graph
xuyanwen2012 Jul 18, 2018
6f28c39
Fix instantsearch npm denpendency bug
xuyanwen2012 Jul 18, 2018
8434e06
Merge pull request #31 from coursegraph/fuzzysearch
SeijiEmery Jul 19, 2018
a06ecac
Merge pull request #33 from coursegraph/graph-viz-prototype
SeijiEmery Jul 19, 2018
4e7702f
Merge pull request #34 from coursegraph/feature-d3-graph
SeijiEmery Jul 19, 2018
48593b8
some refactoring
ThePatrickLauderdale Jul 19, 2018
5945c0d
Merge pull request #37 from coursegraph/crawlers
SeijiEmery Jul 19, 2018
4633394
updated graph
SeijiEmery Jul 19, 2018
ad1fc69
PopMenu: draggable, Popups: tags
wendyrliang Jul 19, 2018
fff89d3
updated to include title, etc
SeijiEmery Jul 19, 2018
5460fe7
removed graph
SeijiEmery Jul 19, 2018
8626c54
Merge branch 'development' into feature-vis-graph
SeijiEmery Jul 19, 2018
0a76d6c
Merge pull request #35 from coursegraph/feature-vis-graph
SeijiEmery Jul 19, 2018
873b62a
Merge branch 'development' into searchbar
SeijiEmery Jul 19, 2018
e389165
PopMenu
wendyrliang Jul 19, 2018
99adf3b
Merge pull request #38 from coursegraph/searchbar
SeijiEmery Jul 19, 2018
c2d16a6
Merge remote-tracking branch 'crawlers/master' into pull-crawlers
SeijiEmery Jul 19, 2018
50f64d9
Merge pull request #39 from coursegraph/pull-crawlers
SeijiEmery Jul 19, 2018
145bd82
Merge branch 'development' into sprint3
SeijiEmery Jul 19, 2018
f0bb2ca
Clean up code
xuyanwen2012 Jul 19, 2018
91ce1dc
Merge branch 'sprint3' of https://github.com/SeijiEmery/CourseGraph i…
xuyanwen2012 Jul 19, 2018
1a6387c
re-added files
SeijiEmery Jul 19, 2018
bb469f9
Merge pull request #40 from coursegraph/pull-crawlers
SeijiEmery Jul 19, 2018
9f7ae81
Merge branch 'development' into sprint3
SeijiEmery Jul 19, 2018
4f16779
cleanup
SeijiEmery Jul 19, 2018
f6a6989
moved graph into separate component
SeijiEmery Jul 19, 2018
7b578e3
moved graph view into separate component
SeijiEmery Jul 19, 2018
ab369aa
separated GraphViewApp into GraphViewLoader and GraphViewAssembly
SeijiEmery Jul 19, 2018
e80b8ac
fixed => export default
SeijiEmery Jul 19, 2018
a2cd81d
refactored window content out of Popup
SeijiEmery Jul 19, 2018
42c3890
refactored out course details window
SeijiEmery Jul 19, 2018
0d3abe2
started scaffolding search bar; giving up on popmenu (for now...)
SeijiEmery Jul 19, 2018
190fa81
got basic fuzzy search working
SeijiEmery Jul 19, 2018
64125cf
started running w/ full dataset; fixed initial performance issue quit…
SeijiEmery Jul 19, 2018
0b3e7d1
implemented levenshtein (doesn't really work that well tho)
SeijiEmery Jul 19, 2018
f31df92
[Eslint] Clean up code
xuyanwen2012 Jul 19, 2018
37fcdf1
Added drawer
ThePatrickLauderdale Jul 19, 2018
da06bdb
refactored crawler
SeijiEmery Jul 20, 2018
498585b
updated output to include all data
SeijiEmery Jul 20, 2018
6bd508a
Tooltip component
wendyrliang Jul 20, 2018
f23c218
Tooltip
wendyrliang Jul 20, 2018
ca29e8d
Starting login page
xuyanwen2012 Jul 20, 2018
00568bf
setup UCSD API
xuyanwen2012 Jul 20, 2018
28e8249
Merge branch 'sprint3' of https://github.com/SeijiEmery/CourseGraph i…
xuyanwen2012 Jul 20, 2018
fa21906
Cleanup code
xuyanwen2012 Jul 20, 2018
7f4b17e
Tooltip
wendyrliang Jul 20, 2018
83e9f74
Tooltip/popup
wendyrliang Jul 20, 2018
22ab265
scrolling, dummy graph filter
ThePatrickLauderdale Jul 21, 2018
f4ffe53
added graph filter alogrithmn
ThePatrickLauderdale Jul 21, 2018
e97de45
filter function
Kuahoo Jul 21, 2018
4e15250
prototype graph filter
Kuahoo Jul 21, 2018
e768829
Graph can be filtered
ThePatrickLauderdale Jul 21, 2018
e4837db
Multiple classes can be selected
ThePatrickLauderdale Jul 21, 2018
bea7cf6
removed duplicate filteralgroithm
Kuahoo Jul 22, 2018
f365c37
Can deselect courses
ThePatrickLauderdale Jul 22, 2018
f6c1b1b
commented out consoles logs
ThePatrickLauderdale Jul 22, 2018
35203a0
Merge branch 'sprint3' of https://github.com/coursegraph/CourseGraph …
Kuahoo Jul 22, 2018
af5bc51
changed ListItemText values
Kuahoo Jul 22, 2018
25ad42a
styled selected listItem
Kuahoo Jul 22, 2018
c63030a
Eslint fix
xuyanwen2012 Jul 22, 2018
d53ade2
Remove Redux and Doc gen
xuyanwen2012 Jul 22, 2018
fda2961
Merge branch 'sprint3' of https://github.com/coursegraph/CourseGraph …
Kuahoo Jul 22, 2018
ea55974
Merge branch 'sprint3' of https://github.com/coursegraph/CourseGraph …
Kuahoo Jul 22, 2018
e5b56fa
expanded filterGraph algorithmn
ThePatrickLauderdale Jul 22, 2018
9584e08
Chips instead of an ugly list
ThePatrickLauderdale Jul 23, 2018
acbd22b
Adding Floating Action Button component
xuyanwen2012 Jul 23, 2018
b5789d6
Merge branch 'sprint3' of https://github.com/SeijiEmery/CourseGraph i…
xuyanwen2012 Jul 23, 2018
9dc526e
Merge branch 'sprint3' of https://github.com/SeijiEmery/CourseGraph i…
xuyanwen2012 Jul 23, 2018
f30334b
refactored colors (deselect broken)
SeijiEmery Jul 23, 2018
ca577f7
fixed node deselection; cleanup
SeijiEmery Jul 23, 2018
aae48c1
resolved merge conflict
SeijiEmery Jul 23, 2018
0217ce3
graph_view double click
wendyrliang Jul 23, 2018
053be43
Refactored graph_view_assembly
ThePatrickLauderdale Jul 23, 2018
612a398
Merge branch 'sprint3' of https://github.com/coursegraph/CourseGraph …
ThePatrickLauderdale Jul 23, 2018
10da594
Count UCSD department Objects
xuyanwen2012 Jul 23, 2018
779efbd
minor refactor filterAlgorithm
ThePatrickLauderdale Jul 23, 2018
aa6cf23
Merge branch 'sprint3' of https://github.com/coursegraph/CourseGraph …
ThePatrickLauderdale Jul 23, 2018
f657ea8
Account pages, setting up login pages
xuyanwen2012 Jul 23, 2018
9d9d9c6
Login POST request done
xuyanwen2012 Jul 23, 2018
856e680
Added GraphSelection class (untested, probably incomplete)
ThePatrickLauderdale Jul 23, 2018
610f9b2
Home Page
xuyanwen2012 Jul 23, 2018
964c000
Merge branch 'sprint3' of https://github.com/SeijiEmery/CourseGraph i…
xuyanwen2012 Jul 23, 2018
fc56a79
wrote function to grab registrar index urls
SeijiEmery Jul 23, 2018
a96514d
GraphSelection class updated (still buggy)
ThePatrickLauderdale Jul 23, 2018
7c15299
Merge branch 'sprint3' of https://github.com/coursegraph/CourseGraph …
ThePatrickLauderdale Jul 23, 2018
75225da
wrote course page fetcher
SeijiEmery Jul 23, 2018
7aa7003
started ucsc course parser
SeijiEmery Jul 23, 2018
82fd99e
started parsing course descrips
SeijiEmery Jul 23, 2018
040f929
rewrote fetch_course_pages to handle whitespace (and unicode) correctly
SeijiEmery Jul 23, 2018
4ba8118
cleanup; fully switched to python3 (was supporting python2 for idk wh…
SeijiEmery Jul 23, 2018
9cd4a93
cleaned up output
SeijiEmery Jul 23, 2018
556f836
started parsing ucsc courses
SeijiEmery Jul 23, 2018
56aec63
parsing course listings...
SeijiEmery Jul 23, 2018
0df6931
fixed annoying edge cases
SeijiEmery Jul 23, 2018
4cc1aab
more stupid edge cases
SeijiEmery Jul 23, 2018
aaaf573
blame the f***ing history dept (and film). acronyms !#$*^#*&!
SeijiEmery Jul 23, 2018
5836057
filtering out <p align="..."> tags failed for some reason for biochem…
SeijiEmery Jul 23, 2018
86251d6
finished edge cases...?!
SeijiEmery Jul 23, 2018
0d02cf4
parsed instructors
SeijiEmery Jul 23, 2018
3fdb46e
Code Cleanup
xuyanwen2012 Jul 23, 2018
531989d
added info log of courses by dept / div
SeijiEmery Jul 23, 2018
b0a8c79
working on proper prereq parser
SeijiEmery Jul 23, 2018
0556759
added hoverNode event
wendyrliang Jul 23, 2018
9db12d6
fixed index parsing (only was fetching half of all course listings...)
SeijiEmery Jul 23, 2018
70926b6
fixed history edge cases
SeijiEmery Jul 23, 2018
3fc4677
fixed weird edge case where the lit page has nested divs...
SeijiEmery Jul 23, 2018
8e14826
fixed edgecases
SeijiEmery Jul 23, 2018
d2c782a
used a terrible hack to fix output from the sociology page (first cou…
SeijiEmery Jul 23, 2018
d21121c
crappy solution to SPECIFICALLY fix a line break inside of a strong t…
SeijiEmery Jul 24, 2018
098a868
fixed it again b/c someone on the anthropology page fucked up and put…
SeijiEmery Jul 24, 2018
ee9110d
updated to skip comments (was not aware that this WASN'T skipping com…
SeijiEmery Jul 24, 2018
024e6e3
User can now register account
xuyanwen2012 Jul 24, 2018
fa2d512
Introducing Home Page that can navigate us to UCSD page or UCSD page
xuyanwen2012 Jul 24, 2018
8bb2e16
Extract Home page panel components
xuyanwen2012 Jul 24, 2018
31c6b1f
added a ton of parse cases to filter out unneeded tokens
SeijiEmery Jul 24, 2018
fee8868
fixed graph view (was iterating over values, not keys. please read up…
SeijiEmery Jul 24, 2018
176b44c
Switch to simple login system
xuyanwen2012 Jul 24, 2018
e0822c0
Rearrange files
xuyanwen2012 Jul 24, 2018
ef6b203
Implement server-side fetch
xuyanwen2012 Jul 24, 2018
6fa218b
Remove console Warning
xuyanwen2012 Jul 24, 2018
a4b43f5
Minimal Refactoring
xuyanwen2012 Jul 24, 2018
b31b88b
Continue refactoring + Serve UCSD graph data
xuyanwen2012 Jul 25, 2018
12a0011
Update Favicon
xuyanwen2012 Jul 25, 2018
ffa6b5e
Change API URL to or actuall server
xuyanwen2012 Jul 25, 2018
cd1d1f3
Fix Floating button bug, add true Fullpage graph view
xuyanwen2012 Jul 25, 2018
ce967f5
Graph Color by department
xuyanwen2012 Jul 25, 2018
e889db0
Refactoring Code style
xuyanwen2012 Jul 25, 2018
9e4018a
Refactoring Code Style
xuyanwen2012 Jul 25, 2018
696138c
Graph Info Card
xuyanwen2012 Jul 25, 2018
0c35cae
Update fetch
xuyanwen2012 Jul 25, 2018
d23de23
Merge pull request #42 from coursegraph/feture-SSR-fetch
xuyanwen2012 Jul 25, 2018
c952b2c
update README.md
Kuahoo Jul 25, 2018
b8aabbc
Optimization ssr-caching and Production CORS setting
xuyanwen2012 Jul 25, 2018
f5443da
Fix Bug, do not cache Graph page
xuyanwen2012 Jul 25, 2018
3ebf0da
Merge branch 'development' into ucsc-data
SeijiEmery Jul 25, 2018
3c1a163
Merge branch 'development' into sprint3
SeijiEmery Jul 25, 2018
8af0a1a
Merge remote-tracking branch 'origin/sprint3' into sprint3
SeijiEmery Jul 25, 2018
98bc764
removed data files
SeijiEmery Jul 25, 2018
e3eb1a2
refactored crawler
SeijiEmery Jul 20, 2018
162aa84
updated output to include all data
SeijiEmery Jul 20, 2018
dd35abd
Merge branch 'firebase' of https://github.com/coursegraph/CourseGraph…
SeijiEmery Jul 25, 2018
d057980
added gitignore for data outputs
SeijiEmery Jul 25, 2018
61580b6
wrote function to grab registrar index urls
SeijiEmery Jul 23, 2018
25ae2b5
wrote course page fetcher
SeijiEmery Jul 23, 2018
7128461
started ucsc course parser
SeijiEmery Jul 23, 2018
457769f
started parsing course descrips
SeijiEmery Jul 23, 2018
85480cf
rewrote fetch_course_pages to handle whitespace (and unicode) correctly
SeijiEmery Jul 23, 2018
df8a0ed
cleanup; fully switched to python3 (was supporting python2 for idk wh…
SeijiEmery Jul 23, 2018
12a8729
cleaned up output
SeijiEmery Jul 23, 2018
9c8761b
started parsing ucsc courses
SeijiEmery Jul 23, 2018
05d4e6e
parsing course listings...
SeijiEmery Jul 23, 2018
e5eb758
fixed annoying edge cases
SeijiEmery Jul 23, 2018
18305e9
more stupid edge cases
SeijiEmery Jul 23, 2018
3fddd5f
blame the f***ing history dept (and film). acronyms !#$*^#*&!
SeijiEmery Jul 23, 2018
8feefa5
filtering out <p align="..."> tags failed for some reason for biochem…
SeijiEmery Jul 23, 2018
084f610
finished edge cases...?!
SeijiEmery Jul 23, 2018
f72256a
parsed instructors
SeijiEmery Jul 23, 2018
0d4933a
added info log of courses by dept / div
SeijiEmery Jul 23, 2018
dd58b5d
working on proper prereq parser
SeijiEmery Jul 23, 2018
24f97ef
fixed index parsing (only was fetching half of all course listings...)
SeijiEmery Jul 23, 2018
97efea0
fixed history edge cases
SeijiEmery Jul 23, 2018
42aca19
fixed weird edge case where the lit page has nested divs...
SeijiEmery Jul 23, 2018
6467bd2
fixed edgecases
SeijiEmery Jul 23, 2018
a20f044
used a terrible hack to fix output from the sociology page (first cou…
SeijiEmery Jul 23, 2018
24c76b4
crappy solution to SPECIFICALLY fix a line break inside of a strong t…
SeijiEmery Jul 24, 2018
82435c4
fixed it again b/c someone on the anthropology page fucked up and put…
SeijiEmery Jul 24, 2018
d633682
updated to skip comments (was not aware that this WASN'T skipping com…
SeijiEmery Jul 24, 2018
0a4659e
added a ton of parse cases to filter out unneeded tokens
SeijiEmery Jul 24, 2018
0964fca
Merge branch 'ucsc-data' of https://github.com/coursegraph/CourseGrap…
SeijiEmery Jul 25, 2018
4fdae30
merged minor changes / refactoring done in firebase branch w/ ucsc-da…
SeijiEmery Jul 25, 2018
5af2901
removed data file
SeijiEmery Jul 25, 2018
f89788e
Merge pull request #44 from coursegraph/ucsc-data
SeijiEmery Jul 25, 2018
5d98036
Merge pull request #45 from coursegraph/sprint3
SeijiEmery Jul 25, 2018
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 7 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -23,3 +23,10 @@ package-lock.json

*.pyc
/.coveralls.yml

/crawlers/ucsc/data/*
/crawlers/ucsc/prereqs
/crawlers/ucsc/unparsed
crawlers/ucsc/temp
crawlers/ucsd/ucsd_courses.json
crawlers/ucsd/ucsd_graph_data.json
64 changes: 45 additions & 19 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,8 +21,8 @@ Solution? CourseGraph, a webapp that will:

Technology: we will need

+ a web frontend (probably React, Typescript, D3) and people interested in UX and software design (myself included)
+ a web backend (probably node) and people interested in backend development and data storage / retrieval
+ a web frontend (probably React, vis.js, material-ui) and people interested in UX and software design (myself included)
+ a web backend (probably node, mongoDB) and people interested in backend development and data storage / retrieval
+ several web crawlers to datamine UCSC sites and maybe others; anyone interested in this please apply!
+ possible integration of other web services (if we could embed eg. ratemyprofessors that would be awesome)

Expand All @@ -32,11 +32,11 @@ Is this feasible in <5 weeks?
+ Plus side is we all get to wear lots of hats and use a lot of cool tech to build a real tool that students and counselors can use to explore class options and make planning schedules a lot easier
+ This project can be subdivided with 2-3 teams working in parallel on different components (eg. frontend and data mining), so we should be able to work without too many bottlenecks

You do NOT need to have experience with typescript, react, node, or d3 to join this project, just a good attitude and a willingness to learn and contribute.
You do NOT need to have experience with react, node, or Vis to join this project, just a good attitude and a willingness to learn and contribute.

That said, you will need time to learn a bit of typescript and either frontend (react, d3), backend (node, databases – ask Ivan), or data mining (web crawlers, either node or python), since we'll probably be splitting into sub-teams that focus on one of those categories. And you'll need to do this fairly quickly (ie. over the next few weeks) since we'll need to hit the ground running as soon as possible. Oh, and if you'd like to do project management (as one of your many hats) that would be very useful too.
That said, you will need time to learn a bit of typescript and either frontend (react, vis.js), backend (node, databases – ask Ivan), or data mining (web crawlers, either node or python), since we'll probably be splitting into sub-teams that focus on one of those categories. And you'll need to do this fairly quickly (ie. over the next few weeks) since we'll need to hit the ground running as soon as possible. Oh, and if you'd like to do project management (as one of your many hats) that would be very useful too.

I'll be learning react and d3 over the next week or so, so if you're interested in that (whether you're a part of this team or not) please hit me up! (ssemery@ucsc.edu)
I'll be learning react and vis.js over the next week or so, so if you're interested in that (whether you're a part of this team or not) please hit me up! (ssemery@ucsc.edu)

## Getting Started

Expand All @@ -45,6 +45,7 @@ These instructions will get you a copy of the project up and running on your loc
### Prerequisites

[Node.js](https://nodejs.org/en/) - JavaScript runtime built on Chrome's V8 JavaScript engine.
[mongoDB] (https://docs.mongodb.com/manual/installation/) - MongoDB is an open-source document database that provides high performance, high availability, and automatic scaling.

The minimum supported Node version is `v6.0.0` by default. (We are using `v10.0.0`).

Expand Down Expand Up @@ -89,29 +90,54 @@ npm run test

This command runs [`jest`](http://jestjs.io/) and [`enzyme`](http://airbnb.io/enzyme/), an incredibly useful testing utility.

### And coding style tests

We uses `TSLint`, just a command:

```
npm run pretest
```

## Built With

* [Next.js](https://nextjs.org/) - A lightweight framework for static and server‑rendered applications.
* [React](https://reactjs.org) - A JavaScript library for building user interfaces
* [Node.js](https://nodejs.org/en/) - A JavaScript runtime built on Chrome's V8 JavaScript engine.
* [MongoDB](https://www.mongodb.com/) - Build innovative modern applications that create a competitive advantage.

## Dependencies
* [Material-ui/core]
* [material-ui/icons]
* [algoliasearch]
* [bcrypt-nodejs]
* [body-parser]
* [compression]
* [connect-mongo'
* [crypto]
* [express]
* [express-flash]
* [express-session]
* [express-validator]
* [isomorphic-unfetch]
* [jss]
* [lru-cache]
* [mongoose]
* [next]
* [npgrogress]
* [passport]
* [passport-local]
* [prop-types]
* [qs]
* [react]
* [react-dom]
* [react-draggable]
* [react-graph-vis]
* [react-instantsearc]
* [react-jss]
* [reactjs-popup]
* [styled-jsx]


## Authors

* **Seiji Emery** ([SeijiEmery](https://github.com/SeijiEmery) ) -
* **Seiji Emery** ([SeijiEmery](https://github.com/SeijiEmery) ) - Lead Tech Developer
* **Yanwen Xu** ([RaiderSoap](https://github.com/RaiderSoap) ) - :floppy_disk: Back-End Developer
* **Patrick Lauderdale** ([ThePatrickLauderdale](https://github.com/ThePatrickLauderdale)) -
* **Sharad Shrestha** ([sharad97](https://github.com/sharad97) ) -
* **Wendy Liang** ([wendyrliang](https://github.com/wendyrliang) ) -
* **Ka Ho Tran** ([Kutaho](https://github.com/Kutaho) ) -
* **Patrick Lauderdale** ([ThePatrickLauderdale](https://github.com/ThePatrickLauderdale)) - FrontEnd Developer
* **Wendy Liang** ([wendyrliang](https://github.com/wendyrliang) ) - FrontEnd Developer
* **Ka Ho Tran** ([Kutaho](https://github.com/Kutaho) ) - FrontEnd Developer
* **Nikki Miller** ([NikMills](https;//github.com/nikmills)) - FrontEnd Developer

See also the list of [contributors](https://github.com/coursegraph/CourseGraph/settings/collaboration) who participated in this project.

Expand All @@ -123,4 +149,4 @@ This project is licensed under the MIT License - see the [LICENSE.md](LICENSE.md

Big thanks to Richard Jullig.

:kissing_heart:
:kissing_heart:
56 changes: 0 additions & 56 deletions components/AddCount.jsx

This file was deleted.

11 changes: 0 additions & 11 deletions components/AddCount.test.jsx

This file was deleted.

46 changes: 0 additions & 46 deletions components/Clock.jsx

This file was deleted.

30 changes: 30 additions & 0 deletions components/Course.jsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
import React from 'react';
import PropTypes from 'prop-types';

/**
* @inheritDoc
*/
class Course extends React.Component {
static propTypes = {
title: PropTypes.string.isRequired,
};

static defaultProps = {
title: 'Null',
};

/**
* @return {Element}
*/
render() {
return (
<div className="Course">
<h3>
{this.props.title}
</h3>
</div>
);
}
}

export default Course;
17 changes: 17 additions & 0 deletions components/Course.test.jsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
import React from 'react';
import { shallow } from 'enzyme';

import Course from './Course';


describe('A Course', () => {
it('should render default text without throwing an error', () => {
const wrapper = shallow(<Course/>);
expect(wrapper.find('h3').text()).toEqual('Null');
});

it('should render title props without throwing an error', () => {
const wrapper = shallow(<Course title="CMPS 101"/>);
expect(wrapper.find('h3').text()).toEqual('CMPS 101');
});
});
20 changes: 0 additions & 20 deletions components/Header.js

This file was deleted.

34 changes: 34 additions & 0 deletions components/Header.jsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
import React from 'react';
import NextHead from 'next/head';
import NProgress from 'nprogress';
import Router from 'next/router';

Router.onRouteChangeStart = (url) => {
NProgress.start();
};

Router.onRouteChangeComplete = () => NProgress.done();
Router.onRouteChangeError = () => NProgress.done();

/**
* A header Component that provide Progress bar
* @return {*}
*/
export default () => (
<div style={{marginBottom: 20}}>
<NextHead>
<meta charSet="UTF-8"/>
<title>Course Graph</title>
<meta
name="description"
content="A lightning-fast search for your UCSC courses"
/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<link rel="icon" sizes="192x192" href="/static/touch-icon.png"/>
<link rel="apple-touch-icon" href="/static/touch-icon.png"/>
<link rel="mask-icon" href="/static/favicon-mask.svg" color="#49B882"/>
<link rel="icon" href="/static/favicon.ico"/>
<link rel="stylesheet" type="text/css" href="/static/nprogress.css"/>
</NextHead>
</div>
);
5 changes: 5 additions & 0 deletions components/Instantsearch.jsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
import { createInstantSearch } from 'react-instantsearch/server';

const {InstantSearch, findResultsState} = createInstantSearch();

export { InstantSearch, findResultsState };
19 changes: 0 additions & 19 deletions components/Page.jsx

This file was deleted.

Loading