This is the code base for the GDG Cloud OC website. It provides more information about the group, details on past and future meetups, archives of videos and photos from past events, and a means for users to get in touch with other group members through Slack, or contact the group organizers through a contact form. It is built using Angular 7, and gets information on the events and photos from the Meetup API. Videos are retrieved from the GDG Cloud OC YouTube channel using YouTube's Data API; see the section below for setting up API keys.
Make sure you have node (>= v10.14.1), npm (>= v6.9.0), and the Angular CLI (>= v7.3.9) installed globally.
- Open up a terminal and cd to
website-source/ng-project
. - Run
npm install
.
Run npm start
. This will start a dev server and open a browser to localhost:4200
.
- Contact Matthew Emes to get the API key for YouTube Data and any other keys that get added.
- Create a file called
apiKeys.ts
in the directorywebsite-source/ng-project/src/app/services
and add the following code:
export const youtubeApiKey = 'KEY_GOES_HERE';
export const youtubeApiKeyDev = 'KEY_GOES_HERE';
export const contactFormLinkDev = 'LINK_GOES_HERE';
- Add the keys between the single quotes, and whatever you do, DO NOT CHECK IN THIS FILE TO SOURCE CONTROL. This file is already included in the
.gitignore
file, so make sure this does not get removed. The items that end in "dev" are used while you are developing. It is recommended that you generate your own YouTube Data API key using the Google API Console. If you do not provide your own API key, then the videos section will be broken, since the keys used in production only allow requests from the live site. It is also recommended that you create an account for Basin if you plan to test the contact form. If you do not do this, you will not be able to retrieve the form submissions, and Matthew will not be happy about getting spammed by test emails.
- Charlie Collier
- Matthew Emes
- Jarid Goodwin
- Mikkel Sandberg