Welcome to the Universal Web Application for the School Of Computer Science (cs.cmu.edu).
-
cd scs-app
. -
npm install
-
npm run build
-
Request the
.env
file from a member of the Web2020 Team -
Optionally add
PORT=
with preferred port number, it defaults to 4000 -
npm run start:prod
-
Visit
http://localhost:4000
(or whatever port number you provided). -
Use Chrome Dev Tools and Vue.js Dev Tools Extension (https://github.com/vuejs/vue-devtools)
-
Node (https://nodejs.org/)
-
Express (https://expressjs.com/)
-
Vue and Vuex (https://vuejs.org/)
-
GraphQL (https://graphql.org/)
-
Apollo (https://www.apollographql.com/)
-
Karma (https://karma-runner.github.io/)
-
Pug (https://pugjs.org)
-
Webpack (https://webpack.js.org/)
Google Cloud Platform - App Flex - modify https://github.com/SchoolofComputerScience/scs-app/blob/master/app.yaml to configure service when deploying to GCP.
Travis (https://travis-ci.org/) is used to deploy straight to Google Cloud Platform after a Pull Request is accepted and merged.
-
https://github.com/SchoolofComputerScience/scs-app/tree/master/src/views - All main pages of the application. Responsible for getting all data into the Vuex store for the components used on its respectable page.
-
https://github.com/SchoolofComputerScience/scs-app/tree/master/src/components - All the reusable components that are used on the Views. Because this is a Universal Web Application, the components are not responsible for hydrating the store, the Views are.
-
https://github.com/SchoolofComputerScience/scs-app/tree/master/src/store/modules - Modules used to make GraphQL queries (via Apollo) to hydrate the Vuex store
-
https://github.com/SchoolofComputerScience/scs-app/blob/master/src/filter/index.js - Filters functions that are used to manipulate strings in components and views (https://vuejs.org/v2/guide/filters.html)