To view JSON as parsed, download the JSON Formatter Chrome extension.
- From the Heroku Dashboard, navigate to
Resources
>Find more add-ons
. - Setup a remote connection in MySQL Workbench.
- Run db_scripts in the new database.
- Add a
FilterRegistrationBean
toWebConfig.java
for Angular to circumvent CORS. - Add a prod spring profile in
application.yml
with Username and Password from JawsDB. (The Connection String will be automatically set in theJAWSDB_URL
Environment Variable in Heroku.) - Create Procfile (for maven):
web: java $JAVA_OPTS -Dserver.port=$PORT -jar target/*.jar
in the project root.
- Add
baseUrl: 'http://localhost:8080/'
toenvironment.ts'
. - Add
baseUrl: 'https://unboundpreaching.herokuapp.com/'
toenvironment.prod.ts
. - Change all services to use
environment.baseUrl
. - Change
outputPath
inangular.json
to"outputPath": "../src/main/resources/static",
- Run
ng build --prod
.
- Navigate to
Settings
>Reveal Config Vars
and changeSPRING_PROFILES_ACTIVE
toprod
. - Enable dyno formation under
Resources
after deployment.
ng add @netlify-builder/deploy
ng deploy
Site Settings > Build & deploy > Continuous Deployment > Build settings > Base directory
: webapp
Run npm install
to download project dependencies.
Run ng serve
for a dev server. Navigate to http://localhost:4200/
. The app will automatically reload if you change any of the source files.
Run ng generate component component-name
to generate a new component. You can also use ng generate directive|pipe|service|class|guard|interface|enum|module
.
Run ng build
to build the project. The build artifacts will be stored in the dist/
directory. Use the --prod
flag for a production build.
# Run > Edit Configurations > Add New Configuration > JavaScript Debugger > Ensure breakpoints are detected when loading scripts
$ npm start
# Debug
$ ng new webapp
# Do you want to enforce stricter type checking and stricter bundle budgets in the workspace?
$ n
# Would you like to add Angular routing?
$ n
# Which stylesheet format would you like to use?
$ CSS
- Edit
index.html
- Edit
app.component.html
- Change favicon
- Switch strict mode off
ng generate class model/sermon
ng generate component components/sermon-list
ng generate service services/sermon
ng generate component xyz
ng generate module accounts/accounts --routingrm -r import formsModule @angular/forms
Include in declarations in app.module</...>ng generate component account-listng generate component accounts/components/account-list --lint-fix --skip-import * Barrel file under components folder. ng new angular-madlib
ng new angular-unbound-preaching
ng add @angular/material
ng add _____
- https://stackoverflow.com/questions/51543278/video-js-with-angular-6
- https://docs.videojs.com/player
npm install --save vjs-video
npm install --save @types/videojs
npm install --save video.js @videojs/themes
npm install --save videojs-seek-buttons
npm install --save video.js
npm install --save @videojs/http-streaming
Awwwards Inspiration
- leonard-agency - Preloader, Navbar / Hamburger Menu
- studio-arte - Project Selection
- sa-design - Cursor circle
- anywell-facial-bar - Fixed Navbar
- the-sleepiest-app - App advertisement, Parallax
- baunfire - Hamburger Menu
- fairer-tomorrow - Music button, full screen, background
- vobla - card animations
- clubhouse - side icon nav bar, curved header
- Wall Street Journal - audio player
- Listening Together - preaching/soul-winning globe
- Production Portugal - landing page animation, play video, transparent CamptonBold font with border
- Dixie Podcast - audio player
- Google Podcast - Episode List
- Disney Plus - Pick Church
- thetvdb - community art contributions
- Code Climate
- Video.js
- FWBCLA
Ensure you have Python installed, then:
# Activate command prompt if using powershell
$ cmd
# Create a virtual environment
$ python -m venv venv
# Activate your virtual environment
$ cd venv/Scripts && activate && cd ../..
# Install dependencies to venv
$ pip install -r requirements.txt
# Run the program
$ python src/main/resources/ytsearch.py
File > Project Structure > SDKs > Add New SDK > ...\venv\Scripts\python.exe
Install MySQL and MySQL Workbench
choco install -y mysql
choco install -y mysql.workbench
Name it "sermondb". Alternatively simply run the following query and then refresh the schemas.
create schema `sermondb` ;
git update-index --skip-worktree src/main/resources/client_secret.txt
- Python YouTube API Tutorial
- Hiding Passwords and Secret Keys in Environment Variables
- Extract YouTube Video Details in Python
- Part 1 of 11
- Part 2 of 11
- Part 3 of 11
- Part 4 of 11
- Part 5 of 11
- Part 6 of 11
- Part 7 of 11
- Part 8 of 11
- Part 8.5 of 11
- Part 9 of 11
- Part 10 of 11
- Part 11 of 11
- newifb
Install the Current date generator plugin, then
settings > Other Settings
and insert'(A) 'yyyy-MM-dd' 'HH:mm' '
Settings > Keymap > Plug-ins > Current date generator
Hyper Text Transfer Protocol (http) secure (https) (interviewee missed this question)
- TCP Network (exchange bytes with one thing, peer to peer)
- UDP (now that I have a connection, how do I request something, and you give me something back?)
All about request and response.
Client (Browser, JSOUP, etc) sends request to server, and what comes back is a response.
- URI (Universal Resource Identifier)
- URL (Universal Resource Locator)
- Verb (GET, POST, UPDATE (PATCH), PUT (Replace), DELETE, OPTIONS)
- Headers
- Body (optional)
Idempotent (If I do the things, and then I do the thing again, I should get the same results)
-
Headers
-
Body
-
Status Code
-
200s - success
-
300s - not here/moved
-
400s - your fault
-
500s - my fault