I tried the heroku node sample at: https://devcenter.heroku.com/articles/getting-started-with-nodejs#introduction
And used Postgres as the db.
All worked.
Now I wanted to run it local, so I used the sample from: https://devcenter.heroku.com/articles/heroku-local
To get the DATABASE_URL to my .env file - but I couldn't get it to work even though when I ran Heroku local it displayed:
[OKAY] Loaded ENV .env File as KEY=VALUE Format
The database still did not connect and when I added:
console.log(process.env.DATABASE_URL);
It wrote undefined to the console.
It turned out the for some reason my .env file was not in the correct unicode encoding.
I suspect that the command:
heroku config:get DATABASE_URL -s >.env
Creates an invalid .env file on my windows machine. It creates a file using UTF-16 LE encoding.
Once I changed it to UTF-8 it all worked.
You can do that in VSCODE by clicking on the encoding in the status bar.