Node Three
Massive & Heroku
The Full Stack
req
req
res
res
Client
Server
Database
React
HTML
CSS
JS
Node.js
Express
PostgreSQL
Axios
Massive
Front-end
Back-end
Heroku Set-up
Heroku is a platform for hosting databases, and we will use it to host our PostgreSQL databases.
Follow the link below and create an account:
SQL Tabs
SQL Tabs is an application that allows us to interact with a hosted database.
Download it here:
Dotenv
When dealing with sensitive information, such as API Keys and Database URL's, you want to ensure that access to that information stays private.
Dotenv is a package that allows you to create environmental variables that are only accessible on your local machine.
To install it, run the following command:
npm install dotenv
Dotenv Setup
Once installed, create a .env file at the root of your project directory:
As soon as it is created, put the .env file in your .gitignore file to avoid pushing environmental variables to GitHub.
Dotenv Setup
In your .env file, you can store environmental variables like so:
SERVER_PORT=4040
CONNECTION_STRING=database_url_here
Note: Do NOT put semicolons at the end of these variables.
Dotenv Setup
Once environmental variables have been created, require dotenv at the top of your main server file like so:
require('dotenv').config()
Afterward, you can destructure values off of the process.env object that dotenv will create for you.
const {SERVER_PORT, CONNECTION_STRING} = process.env;
Massive
Massive is a data mapping package for Node.js that allows us to interact with a PostgreSQL database through our server.
To install it, run the following command:
npm install massive
Once installed, require it in your main server file:
const massive = require('massive');
Massive
Once massive is installed and required, it can be invoked to create a constant connection with your database:
massive({
connectionString: CONNECTION_STRING,
ssl: {
rejectUnauthorized: false
}
}).then((dbInstance) => {
app.set('db', dbInstance);
});
DB Folders
Once a connection to your database has been established, you can begin to create PostgresSQL queries in your project.
First, create a 'db' folder at the root of your project:
DB Folders
Inside of your 'db' folder, create a seed file.
The seed file should contain the create statements for your database schema, should you need to 'reseed' the database for any reason.
Other SQL queries can also be added and included in this folder.
Node 3
By Devmountain
Node 3
Massive & Heroku
- 911