diff --git a/.gitignore b/.gitignore
index a1d1c5f..16eb98b 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,6 +1,4 @@
-assets
-Gemfile
_site
-Gemfile.lock
.bundle
vendor
+node_modules
diff --git a/404.md b/404.md
deleted file mode 100644
index c7f0737..0000000
--- a/404.md
+++ /dev/null
@@ -1,5 +0,0 @@
----
-title: 404 Not Found
----
-
-Sorry, we couldn't find what you were looking for.
diff --git a/Gemfile b/Gemfile
new file mode 100644
index 0000000..37f5eaa
--- /dev/null
+++ b/Gemfile
@@ -0,0 +1,2 @@
+source 'https://rubygems.org'
+gem 'github-pages', group: :jekyll_plugins
diff --git a/Gemfile.lock b/Gemfile.lock
new file mode 100644
index 0000000..7666e38
--- /dev/null
+++ b/Gemfile.lock
@@ -0,0 +1,248 @@
+GEM
+ remote: https://rubygems.org/
+ specs:
+ activesupport (4.2.10)
+ i18n (~> 0.7)
+ minitest (~> 5.1)
+ thread_safe (~> 0.3, >= 0.3.4)
+ tzinfo (~> 1.1)
+ addressable (2.5.2)
+ public_suffix (>= 2.0.2, < 4.0)
+ coffee-script (2.4.1)
+ coffee-script-source
+ execjs
+ coffee-script-source (1.11.1)
+ colorator (1.1.0)
+ commonmarker (0.17.13)
+ ruby-enum (~> 0.5)
+ concurrent-ruby (1.1.3)
+ dnsruby (1.61.2)
+ addressable (~> 2.5)
+ em-websocket (0.5.1)
+ eventmachine (>= 0.12.9)
+ http_parser.rb (~> 0.6.0)
+ ethon (0.11.0)
+ ffi (>= 1.3.0)
+ eventmachine (1.2.7)
+ execjs (2.7.0)
+ faraday (0.15.3)
+ multipart-post (>= 1.2, < 3)
+ ffi (1.9.25)
+ forwardable-extended (2.6.0)
+ gemoji (3.0.0)
+ github-pages (192)
+ activesupport (= 4.2.10)
+ github-pages-health-check (= 1.8.1)
+ jekyll (= 3.7.4)
+ jekyll-avatar (= 0.6.0)
+ jekyll-coffeescript (= 1.1.1)
+ jekyll-commonmark-ghpages (= 0.1.5)
+ jekyll-default-layout (= 0.1.4)
+ jekyll-feed (= 0.10.0)
+ jekyll-gist (= 1.5.0)
+ jekyll-github-metadata (= 2.9.4)
+ jekyll-mentions (= 1.4.1)
+ jekyll-optional-front-matter (= 0.3.0)
+ jekyll-paginate (= 1.1.0)
+ jekyll-readme-index (= 0.2.0)
+ jekyll-redirect-from (= 0.14.0)
+ jekyll-relative-links (= 0.5.3)
+ jekyll-remote-theme (= 0.3.1)
+ jekyll-sass-converter (= 1.5.2)
+ jekyll-seo-tag (= 2.5.0)
+ jekyll-sitemap (= 1.2.0)
+ jekyll-swiss (= 0.4.0)
+ jekyll-theme-architect (= 0.1.1)
+ jekyll-theme-cayman (= 0.1.1)
+ jekyll-theme-dinky (= 0.1.1)
+ jekyll-theme-hacker (= 0.1.1)
+ jekyll-theme-leap-day (= 0.1.1)
+ jekyll-theme-merlot (= 0.1.1)
+ jekyll-theme-midnight (= 0.1.1)
+ jekyll-theme-minimal (= 0.1.1)
+ jekyll-theme-modernist (= 0.1.1)
+ jekyll-theme-primer (= 0.5.3)
+ jekyll-theme-slate (= 0.1.1)
+ jekyll-theme-tactile (= 0.1.1)
+ jekyll-theme-time-machine (= 0.1.1)
+ jekyll-titles-from-headings (= 0.5.1)
+ jemoji (= 0.10.1)
+ kramdown (= 1.17.0)
+ liquid (= 4.0.0)
+ listen (= 3.1.5)
+ mercenary (~> 0.3)
+ minima (= 2.5.0)
+ nokogiri (>= 1.8.2, < 2.0)
+ rouge (= 2.2.1)
+ terminal-table (~> 1.4)
+ github-pages-health-check (1.8.1)
+ addressable (~> 2.3)
+ dnsruby (~> 1.60)
+ octokit (~> 4.0)
+ public_suffix (~> 2.0)
+ typhoeus (~> 1.3)
+ html-pipeline (2.9.0)
+ activesupport (>= 2)
+ nokogiri (>= 1.4)
+ http_parser.rb (0.6.0)
+ i18n (0.9.5)
+ concurrent-ruby (~> 1.0)
+ jekyll (3.7.4)
+ addressable (~> 2.4)
+ colorator (~> 1.0)
+ em-websocket (~> 0.5)
+ i18n (~> 0.7)
+ jekyll-sass-converter (~> 1.0)
+ jekyll-watch (~> 2.0)
+ kramdown (~> 1.14)
+ liquid (~> 4.0)
+ mercenary (~> 0.3.3)
+ pathutil (~> 0.9)
+ rouge (>= 1.7, < 4)
+ safe_yaml (~> 1.0)
+ jekyll-avatar (0.6.0)
+ jekyll (~> 3.0)
+ jekyll-coffeescript (1.1.1)
+ coffee-script (~> 2.2)
+ coffee-script-source (~> 1.11.1)
+ jekyll-commonmark (1.2.0)
+ commonmarker (~> 0.14)
+ jekyll (>= 3.0, < 4.0)
+ jekyll-commonmark-ghpages (0.1.5)
+ commonmarker (~> 0.17.6)
+ jekyll-commonmark (~> 1)
+ rouge (~> 2)
+ jekyll-default-layout (0.1.4)
+ jekyll (~> 3.0)
+ jekyll-feed (0.10.0)
+ jekyll (~> 3.3)
+ jekyll-gist (1.5.0)
+ octokit (~> 4.2)
+ jekyll-github-metadata (2.9.4)
+ jekyll (~> 3.1)
+ octokit (~> 4.0, != 4.4.0)
+ jekyll-mentions (1.4.1)
+ html-pipeline (~> 2.3)
+ jekyll (~> 3.0)
+ jekyll-optional-front-matter (0.3.0)
+ jekyll (~> 3.0)
+ jekyll-paginate (1.1.0)
+ jekyll-readme-index (0.2.0)
+ jekyll (~> 3.0)
+ jekyll-redirect-from (0.14.0)
+ jekyll (~> 3.3)
+ jekyll-relative-links (0.5.3)
+ jekyll (~> 3.3)
+ jekyll-remote-theme (0.3.1)
+ jekyll (~> 3.5)
+ rubyzip (>= 1.2.1, < 3.0)
+ jekyll-sass-converter (1.5.2)
+ sass (~> 3.4)
+ jekyll-seo-tag (2.5.0)
+ jekyll (~> 3.3)
+ jekyll-sitemap (1.2.0)
+ jekyll (~> 3.3)
+ jekyll-swiss (0.4.0)
+ jekyll-theme-architect (0.1.1)
+ jekyll (~> 3.5)
+ jekyll-seo-tag (~> 2.0)
+ jekyll-theme-cayman (0.1.1)
+ jekyll (~> 3.5)
+ jekyll-seo-tag (~> 2.0)
+ jekyll-theme-dinky (0.1.1)
+ jekyll (~> 3.5)
+ jekyll-seo-tag (~> 2.0)
+ jekyll-theme-hacker (0.1.1)
+ jekyll (~> 3.5)
+ jekyll-seo-tag (~> 2.0)
+ jekyll-theme-leap-day (0.1.1)
+ jekyll (~> 3.5)
+ jekyll-seo-tag (~> 2.0)
+ jekyll-theme-merlot (0.1.1)
+ jekyll (~> 3.5)
+ jekyll-seo-tag (~> 2.0)
+ jekyll-theme-midnight (0.1.1)
+ jekyll (~> 3.5)
+ jekyll-seo-tag (~> 2.0)
+ jekyll-theme-minimal (0.1.1)
+ jekyll (~> 3.5)
+ jekyll-seo-tag (~> 2.0)
+ jekyll-theme-modernist (0.1.1)
+ jekyll (~> 3.5)
+ jekyll-seo-tag (~> 2.0)
+ jekyll-theme-primer (0.5.3)
+ jekyll (~> 3.5)
+ jekyll-github-metadata (~> 2.9)
+ jekyll-seo-tag (~> 2.0)
+ jekyll-theme-slate (0.1.1)
+ jekyll (~> 3.5)
+ jekyll-seo-tag (~> 2.0)
+ jekyll-theme-tactile (0.1.1)
+ jekyll (~> 3.5)
+ jekyll-seo-tag (~> 2.0)
+ jekyll-theme-time-machine (0.1.1)
+ jekyll (~> 3.5)
+ jekyll-seo-tag (~> 2.0)
+ jekyll-titles-from-headings (0.5.1)
+ jekyll (~> 3.3)
+ jekyll-watch (2.1.2)
+ listen (~> 3.0)
+ jemoji (0.10.1)
+ gemoji (~> 3.0)
+ html-pipeline (~> 2.2)
+ jekyll (~> 3.0)
+ kramdown (1.17.0)
+ liquid (4.0.0)
+ listen (3.1.5)
+ rb-fsevent (~> 0.9, >= 0.9.4)
+ rb-inotify (~> 0.9, >= 0.9.7)
+ ruby_dep (~> 1.2)
+ mercenary (0.3.6)
+ mini_portile2 (2.3.0)
+ minima (2.5.0)
+ jekyll (~> 3.5)
+ jekyll-feed (~> 0.9)
+ jekyll-seo-tag (~> 2.1)
+ minitest (5.11.3)
+ multipart-post (2.0.0)
+ nokogiri (1.8.5)
+ mini_portile2 (~> 2.3.0)
+ octokit (4.13.0)
+ sawyer (~> 0.8.0, >= 0.5.3)
+ pathutil (0.16.2)
+ forwardable-extended (~> 2.6)
+ public_suffix (2.0.5)
+ rb-fsevent (0.10.3)
+ rb-inotify (0.9.10)
+ ffi (>= 0.5.0, < 2)
+ rouge (2.2.1)
+ ruby-enum (0.7.2)
+ i18n
+ ruby_dep (1.5.0)
+ rubyzip (1.2.2)
+ safe_yaml (1.0.4)
+ sass (3.7.2)
+ sass-listen (~> 4.0.0)
+ sass-listen (4.0.0)
+ rb-fsevent (~> 0.9, >= 0.9.4)
+ rb-inotify (~> 0.9, >= 0.9.7)
+ sawyer (0.8.1)
+ addressable (>= 2.3.5, < 2.6)
+ faraday (~> 0.8, < 1.0)
+ terminal-table (1.8.0)
+ unicode-display_width (~> 1.1, >= 1.1.1)
+ thread_safe (0.3.6)
+ typhoeus (1.3.1)
+ ethon (>= 0.9.0)
+ tzinfo (1.2.5)
+ thread_safe (~> 0.1)
+ unicode-display_width (1.4.0)
+
+PLATFORMS
+ ruby
+
+DEPENDENCIES
+ github-pages
+
+BUNDLED WITH
+ 1.16.5
diff --git a/README b/README
index d0abb10..1a088cc 100644
--- a/README
+++ b/README
@@ -1,4 +1,5 @@
Getting started:
+================
Install jekyll:
@@ -8,8 +9,17 @@ Serve files:
$ bundle exec jekyll serve
+Install webpack/javascript dependencies
+
+$ npm install
+
+Build Javascript:
+
+$ webpack
+
Misc commands
+=============
jq command to convert old database
diff --git a/_config.yml b/_config.yml
index c8ca9c5..a56a9ab 100644
--- a/_config.yml
+++ b/_config.yml
@@ -1,15 +1,12 @@
-exclude:
- - Gemfile
- - Gemfile.lock
- - vendor
- - README
- - pull.sh
- - deploy.sh
- - csv2yaml.py
- - json2yaml.py
- - drive.py
+source: src
+
+destination:
+
+baseurl:
kramdown:
show_warnings: true
description: The Computer Science Undergraduate Association at UC Berkeley (CSUA)
+
+semester: sp19
diff --git a/_data/pb.csv b/_data/pb.csv
deleted file mode 100644
index 97fbc3a..0000000
--- a/_data/pb.csv
+++ /dev/null
@@ -1,12 +0,0 @@
-semester,president,vp,indrel,treasurer,externalevents,internalevents,outreach
-Fall 2014,Collin,Alex,Sherry,Claire,Jeff,Neil,Kara
-Spring 2015,Claire Lieu,Robert Chang,Jessie Salas,Ana,Ryan,Megan,Michelle (Not Hsueh)
-Fall 2015,Claire Lieu,Austin Kim,Jason Tu,Ana Shuler,Megan Zhu,Susanna Souv,Eranda Bregasi
-Spring 2016,Ana Shuler,Caleb Wyllie,Jason Tu,Ana/Yitz Deng,Kara Gieseking,Michelle Hsueh,Sid Masih
-Fall 2016,Megan Zhu,Caleb Wyllie,Sid Masih,Yitz Deng,Barak Zhou,Neil Lingarkar,Julie Chen
-Spring 2017,Megan Zhu,Caleb Wyllie,Sid Masih,Yitz Deng,Barak Zhou,Neil Lingarkar,Michelle Hsueh
-Fall 2017,Megan Zhu,Jonathan Tan,Eric Hou,Yitz Deng,Ray Pan,Neil Lingarkar,Emily Gosti
-Fall 2017 (v2),Jonathan Tan,Robert Quitt,Eric Hou,Yitz Deng,Ray Pan,Jason Ji,Jessica Kuo
-Spring 2018,Megan Zhu,Robert Quitt,Anna Brewer,Ray Pan,Daniel Wu,Arthur Kazantsev,Jessica Kuo
-Fall 2018,Daniel Wu,Mark Hill,Benjamin Wu,Ray Pan,Sophie Wen,Aniruddha Nrusimha,Jessica Kuo
-Spring 2019,Daniel Wu,Mark Hill,Benjamin Wu,Aniruddha Nrusimha,Ben Chen,Charles Sun,Robert Quitt
diff --git a/_data/sponsors.json b/_data/sponsors.json
deleted file mode 100644
index d3495b6..0000000
--- a/_data/sponsors.json
+++ /dev/null
@@ -1,254 +0,0 @@
-[
- {
- "name": "Microsoft",
- "url": "http://www.microsoft.com/",
- "photo": "images/sponsors/Microsoft.png",
- "description": "TechTalk",
- "current": false
- },
- {
- "name": "Riot Games",
- "url": "http://www.riotgames.com/",
- "photo": "images/sponsors/Riot_Games.jpg",
- "description": "TechTalk",
- "current": true
- },
- {
- "name": "Blizzard",
- "url": "http://www.blizzard.com/",
- "photo": "images/sponsors/Blizzard.png",
- "description": "TechTalk",
- "current": false
- },
- {
- "name": "Niantic, Inc.",
- "url": "https://www.nianticlabs.com/",
- "photo": "images/sponsors/Niantic_Inc..png",
- "description": "Fall 2016 GM #2",
- "current": false
- },
- {
- "name": "Dropbox",
- "url": "https://www.dropbox.com/",
- "photo": "images/sponsors/Dropbox.jpg",
- "description": "TechTalk",
- "current": false
- },
- {
- "name": "Pinterest",
- "url": "https://www.pinterest.com/",
- "photo": "images/sponsors/Pinterest.png",
- "description": "TechTalk",
- "current": true
- },
- {
- "name": "Nvidia",
- "url": "http://www.nvidia.com/",
- "photo": "images/sponsors/Nvidia.jpg",
- "description": "TechTalk and Donating Tesla GPU's for CSUA's New Server",
- "current": true
- },
- {
- "name": "CoreOS",
- "url": "http://www.coreos.com/",
- "photo": "images/sponsors/CoreOS.png",
- "description": "TechTalk",
- "current": false
- },
- {
- "name": "Workday",
- "url": "http://www.workday.com/",
- "photo": "images/sponsors/Workday.png",
- "description": "TechTalk",
- "current": false
- },
- {
- "name": "HackerRank",
- "url": "https://www.hackerrank.com/",
- "photo": "images/sponsors/HackerRank.jpg",
- "description": "Spring Code Sprint",
- "current": false
- },
- {
- "name": "Goldman Sachs",
- "url": "http://www.goldmansachs.com/",
- "photo": "images/sponsors/Goldman_Sachs.png",
- "description": "Code Challenge",
- "current": false
- },
- {
- "name": "HealthTap",
- "url": "http://www.healthtap.com/",
- "photo": "images/sponsors/HealthTap.png",
- "description": "TechTalk",
- "current": false
- },
- {
- "name": "Voleon",
- "url": "http://voleon.com/",
- "photo": "images/sponsors/Voleon.png",
- "description": "TechTalk",
- "current": false
- },
- {
- "name": "State Farm",
- "url": "https://www.statefarm.com/",
- "photo": "images/sponsors/State_Farm.jpg",
- "description": "Fall 2016 Tech Talk",
- "current": false
- },
- {
- "name": "6sense",
- "url": "https://6sense.com/",
- "photo": "images/sponsors/6sense.png",
- "description": "TechTalk",
- "current": false
- },
- {
- "name": "NerdWallet",
- "url": "https://www.nerdwallet.com/",
- "photo": "images/sponsors/NerdWallet.png",
- "description": "TechTalk",
- "current": false
- },
- {
- "name": "EMC",
- "url": "http://www.emc.com/",
- "photo": "images/sponsors/EMC.jpg",
- "description": "TechTalk",
- "current": false
- },
- {
- "name": "Intel",
- "url": "http://intel.com/",
- "photo": "images/sponsors/Intel.png",
- "description": "Fall 2016 Donor, Spring 2014 Intel Hackathon",
- "current": false
- },
- {
- "name": "Qualcomm",
- "url": "https://www.qualcomm.com/",
- "photo": "images/sponsors/Qualcomm.png",
- "description": "TechTalk",
- "current": true
- },
- {
- "name": "OpenTable",
- "url": "http://www.opentable.com/",
- "photo": "images/sponsors/OpenTable.png",
- "description": "Fall 2017 and Fall 2016 TechTalk",
- "current": true
- },
- {
- "name": "Capital One",
- "url": "https://www.capitalone.com/",
- "photo": "images/sponsors/Capital_One.jpg",
- "description": "Fall 2016 Tech Talk",
- "current": false
- },
- {
- "name": "Cisco Meraki",
- "url": "http://www.meraki.com/",
- "photo": "images/sponsors/Cisco_Meraki.jpg",
- "description": "Fall 2017 TechTalk, Fall 2016 Hackathon, Fall 2012, Spring 2013, Fall 2013, Spring 2014 Hackathons, Multiple Coding for Grubs",
- "current": true
- },
- {
- "name": "Yelp",
- "url": "http://www.yelp.com/",
- "photo": "images/sponsors/Yelp.png",
- "description": "TechTalk",
- "current": true
- },
- {
- "name": "Oracle",
- "url": "https://www.oracle.com/index.html",
- "photo": "images/sponsors/Oracle.png",
- "description": "TechTalk",
- "current": false
- },
- {
- "name": "Ellation | Crunchyroll",
- "url": "http://www.ellation.com/home",
- "photo": "images/sponsors/Ellation__Crunchroll.png",
- "description": "TechTalk",
- "current": false
- },
- {
- "name": "GoDaddy",
- "url": "https://www.godaddy.com/",
- "photo": "images/sponsors/GoDaddy.jpg",
- "description": "Workshop",
- "current": false
- },
- {
- "name": "IBM",
- "url": "http://www.ibm.com/us-en/",
- "photo": "images/sponsors/IBM.jpg",
- "description": "TechTalk",
- "current": false
- },
- {
- "name": "Lightspeed Venture Partners",
- "url": "http://lsvp.com/",
- "photo": "images/sponsors/Lightspeed_Venture_Partners.jpg",
- "description": "TechTalk",
- "current": false
- },
- {
- "name": "Fin",
- "url": "https://www.fin.com/letters/introducing-fin",
- "photo": "images/sponsors/Fin.jpg",
- "description": "TechTalk",
- "current": true
- },
- {
- "name": "General Motors",
- "url": "http://www.gm.com/index.html",
- "photo": "images/sponsors/General_Motors.jpg",
- "description": "Tabling",
- "current": false
- },
- {
- "name": "Groupon",
- "url": "https://www.groupon.com/",
- "photo": "images/sponsors/Groupon.gif",
- "description": "TechTalk",
- "current": false
- },
- {
- "name": "Luminate Wireless",
- "url": "http://www.luminatewireless.com/",
- "photo": "images/sponsors/Luminate_Wireless.jpg",
- "description": "TechTalk",
- "current": false
- },
- {
- "name": "Cisco",
- "url": "http://www.cisco.com/c/en/us/index.html",
- "photo": "images/sponsors/Cisco.jpg",
- "description": "TechTalk",
- "current": false
- },
- {
- "name": "Facebook",
- "url": "https://www.facebook.com/",
- "photo": "images/sponsors/Facebook.png",
- "description": "Puzzle Hunt",
- "current": true
- },
- {
- "name": "Anker",
- "url": "https://www.anker.com/",
- "photo": "images/sponsors/Anker.jpg",
- "description": "Equipment Sponsor",
- "current": false
- },
- {
- "name": "Salesforce",
- "url": "https://www.salesforce.com/",
- "photo": "images/sponsors/Salesforce_4YSmSMk.jpg",
- "description": "TechTalk",
- "current": true
- }
-]
diff --git a/package.json b/package.json
new file mode 100644
index 0000000..15ccf0c
--- /dev/null
+++ b/package.json
@@ -0,0 +1,38 @@
+{
+ "name": "static-website",
+ "version": "1.0.0",
+ "description": "CSUA static website using Jekyll",
+ "main": "",
+ "scripts": {
+ "test": "echo \"Error: no test specified\" && exit 1"
+ },
+ "repository": {
+ "type": "git",
+ "url": "git+https://github.com/CSUA/static-website.git"
+ },
+ "author": "Philip Nunez",
+ "license": "",
+ "bugs": {
+ "url": "https://github.com/CSUA/static-website/issues"
+ },
+ "homepage": "https://github.com/CSUA/static-website#readme",
+ "dependencies": {
+ "moment": "^2.24.0",
+ "react": "^16.7.0",
+ "react-dom": "^16.7.0"
+ },
+ "devDependencies": {
+ "@babel/core": "^7.2.2",
+ "@babel/preset-env": "^7.3.1",
+ "@babel/preset-react": "^7.0.0",
+ "babel-loader": "^8.0.5",
+ "webpack": "^4.29.0",
+ "webpack-cli": "^3.2.1"
+ },
+ "babel": {
+ "presets": [
+ "@babel/preset-env",
+ "@babel/preset-react"
+ ]
+ }
+}
diff --git a/src/404.md b/src/404.md
new file mode 100644
index 0000000..e7f168c
--- /dev/null
+++ b/src/404.md
@@ -0,0 +1,24 @@
+---
+title: 404 Not Found
+---
+
+
+
+ _ _ ___ _ _ _ _ _ _____ _
+ | || | / _ \| || | | \ | | ___ | |_ | ___|__ _ _ _ __ __| |
+ | || |_| | | | || |_ | \| |/ _ \| __| | |_ / _ \| | | | '_ \ / _` |
+ |__ _| |_| |__ _| | |\ | (_) | |_ | _| (_) | |_| | | | | (_| |
+ |_| \___/ |_| |_| \_|\___/ \__| |_| \___/ \__,_|_| |_|\__,_|
+ _______________________________________
+ / Sorry, we couldn’t find what you were \
+ \ looking for. /
+ ---------------------------------------
+ \ ^__^
+ \ (xx)\_______
+ (__)\ )\/\
+ U ||----w |
+ || ||
+
+
+
+
diff --git a/_data/events/fa18.yml b/src/_data/events/fa18.yml
similarity index 97%
rename from _data/events/fa18.yml
rename to src/_data/events/fa18.yml
index 130943d..8be23e4 100644
--- a/_data/events/fa18.yml
+++ b/src/_data/events/fa18.yml
@@ -34,7 +34,7 @@
category: Industry
- title: Dolby Recruiting Event
- start: Thurs Nov 15 6PM
+ start: Thurs Nov 15 2018 6PM
end: 8PM
location: 126 Wheeler Hall
link: https://www.facebook.com/events/248006782544261/
diff --git a/src/_data/events/sp19.yml b/src/_data/events/sp19.yml
new file mode 100644
index 0000000..8be23e4
--- /dev/null
+++ b/src/_data/events/sp19.yml
@@ -0,0 +1,63 @@
+- title: LaTeX Workshop
+ start: Sep 11 2018 5:30 PM
+ end: 6:30 PM
+ location: Soda 373
+ link:
+ category: Workshops
+
+- title: Vim Workshop
+ start: Sep 13 2018 4PM
+ end: 5PM
+ location: HP Auditorium
+ link:
+ category: Workshops
+
+- title: Git Workshop
+ start: Oct 2 2018 3:30 PM
+ end: 5 PM
+ location: HP Auditorium
+ link: https://www.facebook.com/events/1866716510109610/
+ category: Workshops
+
+- title: CSUA x UPE Ice Cream and Cookies Social
+ start: Nov 14 2018 6PM
+ end: 8PM
+ location: 531 Cory Hall
+ link: https://www.facebook.com/events/543968086065594/
+ category: Social
+
+- title: Expensify Talk
+ start: November 8 2018 6 PM
+ end: 8 PM
+ location: HP Auditorium
+ link: https://www.facebook.com/events/317774632384278/
+ category: Industry
+
+- title: Dolby Recruiting Event
+ start: Thurs Nov 15 2018 6PM
+ end: 8PM
+ location: 126 Wheeler Hall
+ link: https://www.facebook.com/events/248006782544261/
+ category: Industry
+
+- title: "GM #1"
+ start: Aug 31 2018 8PM
+ end: 10PM
+ location: Wozniak Lounge
+ link: https://www.facebook.com/events/1837243629730552/
+ category: General Meetings
+
+- title: "GM #2"
+ start: Sep 28 2018 8PM
+ end: 11PM
+ location: Wozniak Lounge
+ link: https://www.facebook.com/events/1837243629730552/
+ category: General Meetings
+
+- title: "GM #3"
+ start: Nov 9 2018 8PM
+ end: 10PM
+ location: Wozniak Lounge
+ link: https://www.facebook.com/events/270969986957569/
+ category: General Meetings
+
diff --git a/_data/nav.yml b/src/_data/nav.yml
similarity index 100%
rename from _data/nav.yml
rename to src/_data/nav.yml
diff --git a/_data/officers.yml b/src/_data/officers.yml
similarity index 100%
rename from _data/officers.yml
rename to src/_data/officers.yml
diff --git a/src/_data/pb.csv b/src/_data/pb.csv
new file mode 100644
index 0000000..7877464
--- /dev/null
+++ b/src/_data/pb.csv
@@ -0,0 +1,12 @@
+semester,president,vp,indrel,treasurer,externalevents,internalevents,outreach
+fa14,Collin,Alex,Sherry,Claire,Jeff,Neil,Kara
+sp15,Claire Lieu,Robert Chang,Jessie Salas,Ana,Ryan,Megan,Michelle (Not Hsueh)
+fa15,Claire Lieu,Austin Kim,Jason Tu,Ana Shuler,Megan Zhu,Susanna Souv,Eranda Bregasi
+sp16,Ana Shuler,Caleb Wyllie,Jason Tu,Ana/Yitz Deng,Kara Gieseking,Michelle Hsueh,Sid Masih
+fa16,Megan Zhu,Caleb Wyllie,Sid Masih,Yitz Deng,Barak Zhou,Neil Lingarkar,Julie Chen
+sp17,Megan Zhu,Caleb Wyllie,Sid Masih,Yitz Deng,Barak Zhou,Neil Lingarkar,Michelle Hsueh
+fa17,Megan Zhu,Jonathan Tan,Eric Hou,Yitz Deng,Ray Pan,Neil Lingarkar,Emily Gosti
+fa17 (v2),Jonathan Tan,Robert Quitt,Eric Hou,Yitz Deng,Ray Pan,Jason Ji,Jessica Kuo
+sp18,Megan Zhu,Robert Quitt,Anna Brewer,Ray Pan,Daniel Wu,Arthur Kazantsev,Jessica Kuo
+fa18,Daniel Wu,Mark Hill,Benjamin Wu,Ray Pan,Sophie Wen,Aniruddha Nrusimha,Jessica Kuo
+sp19,Daniel Wu,Mark Hill,Benjamin Wu,Aniruddha Nrusimha,Ben Chen,Charles Sun,Robert Quitt
diff --git a/src/_data/sponsors.yaml b/src/_data/sponsors.yaml
new file mode 100644
index 0000000..a74cd8f
--- /dev/null
+++ b/src/_data/sponsors.yaml
@@ -0,0 +1,195 @@
+- current: false
+ description: TechTalk
+ name: Microsoft
+ photo: images/sponsors/Microsoft.png
+ url: http://www.microsoft.com/
+- current: false
+ description: TechTalk
+ name: Riot Games
+ photo: images/sponsors/Riot_Games.jpg
+ url: http://www.riotgames.com/
+- current: false
+ description: TechTalk
+ name: Blizzard
+ photo: images/sponsors/Blizzard.png
+ url: http://www.blizzard.com/
+ description:
+ items:
+ - name: TechTalk
+ link: https://www.facebook.com/events/1827932007444013/
+- current: false
+ description: 'Fall 2016 GM #2'
+ name: Niantic, Inc.
+ photo: images/sponsors/Niantic_Inc..png
+ url: https://www.nianticlabs.com/
+- current: false
+ description: TechTalk
+ name: Dropbox
+ photo: images/sponsors/Dropbox.jpg
+ url: https://www.dropbox.com/
+- current: false
+ description: TechTalk
+ name: Pinterest
+ photo: images/sponsors/Pinterest.png
+ url: https://www.pinterest.com/
+- current: false
+ description: TechTalk and Donating Tesla GPU's for CSUA's New Server
+ name: Nvidia
+ photo: images/sponsors/Nvidia.jpg
+ url: http://www.nvidia.com/
+- current: false
+ description: TechTalk
+ name: CoreOS
+ photo: images/sponsors/CoreOS.png
+ url: http://www.coreos.com/
+- current: false
+ description: TechTalk
+ name: Workday
+ photo: images/sponsors/Workday.png
+ url: http://www.workday.com/
+- current: false
+ description: Spring Code Sprint
+ name: HackerRank
+ photo: images/sponsors/HackerRank.jpg
+ url: https://www.hackerrank.com/
+- current: false
+ description: Code Challenge
+ name: Goldman Sachs
+ photo: images/sponsors/Goldman_Sachs.png
+ url: http://www.goldmansachs.com/
+- current: false
+ description: TechTalk
+ name: HealthTap
+ photo: images/sponsors/HealthTap.png
+ url: http://www.healthtap.com/
+- current: false
+ description: TechTalk
+ name: Voleon
+ photo: images/sponsors/Voleon.png
+ url: http://voleon.com/
+- current: false
+ description: Fall 2016 Tech Talk
+ name: State Farm
+ photo: images/sponsors/State_Farm.jpg
+ url: https://www.statefarm.com/
+- current: false
+ description: TechTalk
+ name: 6sense
+ photo: images/sponsors/6sense.png
+ url: https://6sense.com/
+- current: false
+ description: TechTalk
+ name: NerdWallet
+ photo: images/sponsors/NerdWallet.png
+ url: https://www.nerdwallet.com/
+- current: false
+ description: TechTalk
+ name: EMC
+ photo: images/sponsors/EMC.jpg
+ url: http://www.emc.com/
+- current: false
+ description: Fall 2016 Donor, Spring 2014 Intel Hackathon
+ name: Intel
+ photo: images/sponsors/Intel.png
+ url: http://intel.com/
+- current: false
+ description: TechTalk
+ name: Qualcomm
+ photo: images/sponsors/Qualcomm.png
+ url: https://www.qualcomm.com/
+- current: false
+ description: Fall 2017 and Fall 2016 TechTalk
+ name: OpenTable
+ photo: images/sponsors/OpenTable.png
+ url: http://www.opentable.com/
+- current: false
+ description: Fall 2016 Tech Talk
+ name: Capital One
+ photo: images/sponsors/Capital_One.jpg
+ url: https://www.capitalone.com/
+- current: false
+ description: Fall 2017 TechTalk, Fall 2016 Hackathon, Fall 2012, Spring 2013, Fall
+ 2013, Spring 2014 Hackathons, Multiple Coding for Grubs
+ name: Cisco Meraki
+ photo: images/sponsors/Cisco_Meraki.jpg
+ url: http://www.meraki.com/
+- current: true
+ description: TechTalk
+ name: Yelp
+ photo: images/sponsors/Yelp.png
+ url: http://www.yelp.com/
+- current: false
+ description: TechTalk
+ name: Yelp
+ photo: images/sponsors/Yelp.png
+ url: http://www.yelp.com/
+- current: false
+ description: TechTalk
+ name: Oracle
+ photo: images/sponsors/Oracle.png
+ url: https://www.oracle.com/index.html
+- current: false
+ description: TechTalk
+ name: Ellation | Crunchyroll
+ photo: images/sponsors/Ellation__Crunchroll.png
+ url: http://www.ellation.com/home
+- current: false
+ description: Workshop
+ name: GoDaddy
+ photo: images/sponsors/GoDaddy.jpg
+ url: https://www.godaddy.com/
+- current: false
+ description: TechTalk
+ name: IBM
+ photo: images/sponsors/IBM.jpg
+ url: http://www.ibm.com/us-en/
+- current: false
+ description: TechTalk
+ name: Lightspeed Venture Partners
+ photo: images/sponsors/Lightspeed_Venture_Partners.jpg
+ url: http://lsvp.com/
+- current: false
+ description: TechTalk
+ name: Fin
+ photo: images/sponsors/Fin.jpg
+ url: https://www.fin.com/letters/introducing-fin
+- current: false
+ description: Tabling
+ name: General Motors
+ photo: images/sponsors/General_Motors.jpg
+ url: http://www.gm.com/index.html
+- current: false
+ description: TechTalk
+ name: Groupon
+ photo: images/sponsors/Groupon.gif
+ url: https://www.groupon.com/
+- current: false
+ description: TechTalk
+ name: Luminate Wireless
+ photo: images/sponsors/Luminate_Wireless.jpg
+ url: http://www.luminatewireless.com/
+- current: false
+ description: TechTalk
+ name: Cisco
+ photo: images/sponsors/Cisco.jpg
+ url: http://www.cisco.com/c/en/us/index.html
+- current: true
+ description: Puzzle Hunt
+ name: Facebook
+ photo: images/sponsors/Facebook.png
+ url: https://www.facebook.com/
+- current: false
+ description: Puzzle Hunt
+ name: Facebook
+ photo: images/sponsors/Facebook.png
+ url: https://www.facebook.com/
+- current: false
+ description: Equipment Sponsor
+ name: Anker
+ photo: images/sponsors/Anker.jpg
+ url: https://www.anker.com/
+- current: false
+ description: TechTalk
+ name: Salesforce
+ photo: images/sponsors/Salesforce_4YSmSMk.jpg
+ url: https://www.salesforce.com/
diff --git a/_includes/events.html b/src/_includes/events.html
similarity index 100%
rename from _includes/events.html
rename to src/_includes/events.html
diff --git a/_includes/footer.md b/src/_includes/footer.md
similarity index 100%
rename from _includes/footer.md
rename to src/_includes/footer.md
diff --git a/_includes/head.html b/src/_includes/head.html
similarity index 73%
rename from _includes/head.html
rename to src/_includes/head.html
index 2f46724..4989156 100644
--- a/_includes/head.html
+++ b/src/_includes/head.html
@@ -6,6 +6,6 @@
{% if page.title %}{{ page.title }}{% else %}{{ site.title }}{% endif %}
-
-
+
+
diff --git a/_includes/header.html b/src/_includes/header.html
similarity index 85%
rename from _includes/header.html
rename to src/_includes/header.html
index 903106d..60b4a98 100644
--- a/_includes/header.html
+++ b/src/_includes/header.html
@@ -6,7 +6,7 @@
diff --git a/_layouts/default.html b/src/_layouts/default.html
similarity index 100%
rename from _layouts/default.html
rename to src/_layouts/default.html
diff --git a/_layouts/page.html b/src/_layouts/page.html
similarity index 100%
rename from _layouts/page.html
rename to src/_layouts/page.html
diff --git a/_layouts/post.html b/src/_layouts/post.html
similarity index 100%
rename from _layouts/post.html
rename to src/_layouts/post.html
diff --git a/_sass/_base.scss b/src/_sass/_base.scss
similarity index 100%
rename from _sass/_base.scss
rename to src/_sass/_base.scss
diff --git a/_sass/_layout.scss b/src/_sass/_layout.scss
similarity index 100%
rename from _sass/_layout.scss
rename to src/_sass/_layout.scss
diff --git a/_sass/_syntax-highlighting.scss b/src/_sass/_syntax-highlighting.scss
similarity index 100%
rename from _sass/_syntax-highlighting.scss
rename to src/_sass/_syntax-highlighting.scss
diff --git a/_sass/events.scss b/src/_sass/events.scss
similarity index 100%
rename from _sass/events.scss
rename to src/_sass/events.scss
diff --git a/_sass/navbar.scss b/src/_sass/navbar.scss
similarity index 100%
rename from _sass/navbar.scss
rename to src/_sass/navbar.scss
diff --git a/_sass/officers.scss b/src/_sass/officers.scss
similarity index 100%
rename from _sass/officers.scss
rename to src/_sass/officers.scss
diff --git a/_sass/page.scss b/src/_sass/page.scss
similarity index 100%
rename from _sass/page.scss
rename to src/_sass/page.scss
diff --git a/_sass/pb.scss b/src/_sass/pb.scss
similarity index 100%
rename from _sass/pb.scss
rename to src/_sass/pb.scss
diff --git a/_sass/sponsors.scss b/src/_sass/sponsors.scss
similarity index 100%
rename from _sass/sponsors.scss
rename to src/_sass/sponsors.scss
diff --git a/_sass/tutoring.scss b/src/_sass/tutoring.scss
similarity index 100%
rename from _sass/tutoring.scss
rename to src/_sass/tutoring.scss
diff --git a/about/constitution.md b/src/about/constitution.md
similarity index 100%
rename from about/constitution.md
rename to src/about/constitution.md
diff --git a/about/events.md b/src/about/events.md
similarity index 100%
rename from about/events.md
rename to src/about/events.md
diff --git a/about/historical/pb.md b/src/about/historical/pb.md
similarity index 100%
rename from about/historical/pb.md
rename to src/about/historical/pb.md
diff --git a/src/about/join.md b/src/about/join.md
new file mode 100644
index 0000000..4f36672
--- /dev/null
+++ b/src/about/join.md
@@ -0,0 +1,91 @@
+---
+title: Join the CSUA!
+permalink: /join/
+---
+
+Become part of the largest undergraduate CS community at Cal!
+
+# Member Perks
+
+
+
+
+
+## Industry
+
+The CSUA hosts many networking and recruiting events throughout the year with large companies such as Facebook, Amazon, Microsoft, Salesforce, and more.
+Get priority access to their job postings and speak directly with recruiters and engineers at our events.
+
+
+
+
+
+## Professional and Academic Development
+
+We host workshops to teach you important skills.
+[Link][workshops]
+
+We also tutor many lower-division EE/CS classes to support you in your studies.
+[Click for more details][tutoring]
+
+[workshops]: {{ site.baseurl }}{% link about/workshops.md %}
+[tutoring]: {{ site.baseurl }}{% link about/tutoring.md %}
+
+
+
+
+
+
+
+
+
+## Networking
+
+Meet fellow researchers, professionals, hackers, and CS enthusiasts.
+Meet new people in our office, at our events
+
+
+
+
+
+
+
+# Sign Up
+
+To join the CSUA, come by any one of our events or drop by our office at 311 Soda Hall and ask for an officer.
+Once you have an account, you can opt-in to our exclusive job postings, receive email notifications for events, use our computers and server, and reserve time on our high-performance computing cluster.
+
+If you have questions about what CSUA membership can offer you, please contact our Outreach chair at outreach@csua.berkeley.edu. If you are having issues with your CSUA account, please contact our VP of Technology at vp@csua.berkeley.edu.
+
+
+
+
+
+# Become an Officer
+
+Interested in becoming more involved?
+Officers are active members of the CSUA who want to contribute more to the CS undergraduate community.
+Officers help out with critical services, such as maintaining our servers, tutoring, running events, leading workshops, and more.
+They are also entrusted with privileges such as CSUA office access, officer-only events, and priority access to internal services.
+
+To become an officer, [fill out this form][officer_app], and come to one of our weekly PB meetings. [See this calendar][calendar] for the meeting schedule.
+
+[officer_app]: :https://docs.google.com/forms/d/e/1FAIpQLSckUEN3sF0F3uRmiGMvvGYY18dhzi-SBrv3EfnCWB0xl9rUAw/viewform?usp=sf_link
+[calendar]: {{ site.baseurl }}events/#google-calendar
+
+
+
+
+
+# Get Connected
+
+By creating a CSUA account, you have an option to join the jobs@csua mailing list.
+If you would like to join, visit
+
+We use Slack for most of our day-to-day communications. [Join our Slack][slack] (requires an @berkeley.edu email).
+
+Much of our executive decisions are made at our weekly PB meetings. [Check our calendar][calendar] for the next PB meeting.
+
+[slack]: https://csua.slack.com
+
+
diff --git a/about/officers.md b/src/about/officers.md
similarity index 99%
rename from about/officers.md
rename to src/about/officers.md
index d914c8d..6923277 100644
--- a/about/officers.md
+++ b/src/about/officers.md
@@ -86,7 +86,7 @@ about tutoring][tutoring]
{% elsif officer.video2 %}
-
+
{% else %}
diff --git a/about/pb.md b/src/about/pb.md
similarity index 99%
rename from about/pb.md
rename to src/about/pb.md
index 6bc583f..c3087ab 100644
--- a/about/pb.md
+++ b/src/about/pb.md
@@ -18,7 +18,7 @@ politburo@csua.berkeley.edu.
{% assign unames = "president, vp, indrel, treasurer, externalevents, internalevents, outreach" | split:", " %}
{% for pb_roster in site.data.pb %}
-{% if pb_roster.semester == "Spring 2019" %}
+{% if pb_roster.semester == site.semester %}
{% for title in titles %}
diff --git a/src/about/projects.md b/src/about/projects.md
new file mode 100644
index 0000000..bdca890
--- /dev/null
+++ b/src/about/projects.md
@@ -0,0 +1,25 @@
+---
+title: Projects
+permalink: /projects/
+---
+
+The CSUA would not be where it is today without the work of many
+
+# Ongoing Projects
+
+- Workshops
+
+## Technical
+
+- Computing cluster
+- Server upkeep and improvement
+
+## Outreach
+
+- Mailing list
+- Facebook Page
+- Website
+
+## People
+
+- Officers
diff --git a/about/sponsors.md b/src/about/sponsors.md
similarity index 56%
rename from about/sponsors.md
rename to src/about/sponsors.md
index 8a96d8a..276e551 100644
--- a/about/sponsors.md
+++ b/src/about/sponsors.md
@@ -12,20 +12,35 @@ our events? Please send an email to indrel@csua.berkeley.edu.
-{% for sponsor in site.data.sponsors %}
-
+
+# Current Sponsors
+
+
-# Current Sponsors
-
diff --git a/about/tutoring.md b/src/about/tutoring.md
similarity index 100%
rename from about/tutoring.md
rename to src/about/tutoring.md
diff --git a/about/workshops.md b/src/about/workshops.md
similarity index 100%
rename from about/workshops.md
rename to src/about/workshops.md
diff --git a/assets/css/main.scss b/src/assets/css/main.scss
similarity index 100%
rename from assets/css/main.scss
rename to src/assets/css/main.scss
diff --git a/assets/images/CSUA.jpg b/src/assets/images/CSUA.jpg
similarity index 100%
rename from assets/images/CSUA.jpg
rename to src/assets/images/CSUA.jpg
diff --git a/assets/images/pic.png b/src/assets/images/pic.png
similarity index 100%
rename from assets/images/pic.png
rename to src/assets/images/pic.png
diff --git a/assets/images/tushar_photoshoots/Officers_FA16.jpg b/src/assets/images/tushar_photoshoots/Officers_FA16.jpg
similarity index 100%
rename from assets/images/tushar_photoshoots/Officers_FA16.jpg
rename to src/assets/images/tushar_photoshoots/Officers_FA16.jpg
diff --git a/src/computers/computers.jsx b/src/computers/computers.jsx
new file mode 100644
index 0000000..1e005f2
--- /dev/null
+++ b/src/computers/computers.jsx
@@ -0,0 +1,88 @@
+'use strict';
+
+var moment = require('moment');
+var React = require('react');
+var ReactDOM = require('react-dom');
+
+// https://reactjs.org/docs/faq-ajax.html
+
+class ComputersList extends React.Component {
+ constructor(props) {
+ super(props);
+ this.state = {
+ computers: [],
+ users: [],
+ isLoaded: false,
+ error: null
+ };
+ }
+
+ componentDidMount() {
+ fetch("/api/computers/json")
+ .then(res => res.json())
+ .then(
+ (result) => {
+ this.setState({
+ isLoaded: true,
+ computers: result.computers,
+ users: result.users
+ });
+ },
+ (error) => {
+ this.setState({
+ isLoaded: true,
+ error
+ });
+ }
+ )
+ }
+
+ render() {
+ const { computers, users, isLoaded, error } = this.state;
+ if (error) {
+ console.log(error);
+ return
Error fetching data.
+ } else if (!isLoaded) {
+ return
Loading...
+ } else {
+ return
+
+
+
+ }
+ }
+}
+
+class Computers extends React.Component {
+ render() {
+ const computers = this.props.computers;
+ return
+ {computers.map(computer =>
+
+ {computer.hostname}
+ {computer.user_id}
+ {moment(computer.local_timestamp).fromNow()}
+
+ )}
+
+ }
+}
+
+class Users extends React.Component {
+ render() {
+ const users = this.props.users;
+ return
+ {users.map(user =>
+
+ {user.username}
+ {moment(user.last_ping).fromNow()}
+ {moment().startOf('day').add(user.time_spent, 'seconds').format('HH:mm:ss')}
+
+ )}
+
+ }
+}
+
+ReactDOM.render(
, document.getElementById('computers-list'));
+
+// vim:et:sw=2:
diff --git a/src/computers/computers.md b/src/computers/computers.md
new file mode 100644
index 0000000..7f93a07
--- /dev/null
+++ b/src/computers/computers.md
@@ -0,0 +1,8 @@
+---
+title: NSA Backdoor
+permalink: /computers/
+---
+
+
Enable Javascript :)
+
+
diff --git a/index.md b/src/index.md
similarity index 95%
rename from index.md
rename to src/index.md
index 67c4503..cd16573 100644
--- a/index.md
+++ b/src/index.md
@@ -29,7 +29,7 @@ lounge (341\* Soda).
# Upcoming Events
-{% assign events = site.data.events.fa18 %}
+{% assign events = site.data.events[site.semester] %}
{% assign upcoming = "" | split:"" %}
{% assign nowepoch = "now" | date:"%s" %}
{% for event in events %}
@@ -49,7 +49,7 @@ lounge (341\* Soda).
-![CSUA Officers at Hearst Mining Circle]({{site.baseurl}}{% link assets/images/tushar_photoshoots/Officers_FA16.jpg %})
+![CSUA Officers at Hearst Mining Circle]({{ site.baseurl }}{% link assets/images/tushar_photoshoots/Officers_FA16.jpg %})
diff --git a/webpack.config.js b/webpack.config.js
new file mode 100644
index 0000000..463123d
--- /dev/null
+++ b/webpack.config.js
@@ -0,0 +1,27 @@
+var path = require('path');
+
+module.exports = {
+ entry: {
+ computers: './src/computers/computers.jsx',
+ },
+ output: {
+ path: path.resolve(__dirname, "src/assets/js"),
+ filename: "[name].bundle.js"
+ },
+ module: {
+ rules: [
+ {
+ test: /\.jsx?$/,
+ exclude: /node_modules/,
+ use: {
+ loader: "babel-loader",
+ }
+ }
+ ]
+ },
+ resolve: {
+ extensions: ['*', '.js', '.jsx']
+ },
+ devtool: "source-map"
+};
+// vim:et:sw=2:ts=2