mirror of
https://github.com/terribleplan/next.js.git
synced 2024-01-19 02:48:18 +00:00
b1d8b839dd
* remove global npm install of create-next-app * add npx to create-next-app command in examples * add bash to shell snippets * add yarn create to next-app command in examples * fix READMEs named with lowercase * change READMEs to use UPPERCASE |
||
---|---|---|
.. | ||
credentials | ||
pages | ||
package.json | ||
README.md | ||
server.js |
With Firebase Authentication example
How to use
Using create-next-app
Download create-next-app
to bootstrap the example:
npx create-next-app --example with-firebase-authentication with-firebase-authentication-app
# or
yarn create next-app --example with-firebase-authentication with-firebase-authentication-app
Download manually
Download the example or clone the repo:
curl https://codeload.github.com/zeit/next.js/tar.gz/canary | tar -xz --strip=2 next.js-canary/examples/with-firebase-authentication
cd with-firebase-authentication
Set up firebase:
- Create a project at the Firebase console.
- Get your account credentials from the Firebase console at settings>service accounts, where you can click on generate new private key and download the credentials as a json file. It will contain keys such as
project_id
,client_email
andclient id
. Now copy them into your project in thecredentials/server.js
file. - Get your authentication credentials from the Firebase console under authentication>users>web setup. It will include keys like
apiKey
,authDomain
anddatabaseUrl
and it goes into your project incredentials/client.js
. - Copy the
databaseUrl
key you got in the last step intoserver.js
in the corresponding line. - Back at the Firebase web console, go to authentication>signup method and select Google.
Install it and run:
npm install
npm run dev
Deploy it to the cloud with now (download)
now
The idea behind the example
The goal is to authenticate users with firebase and store their auth token in sessions. A logged in user will see their messages on page load and then be able to post new messages.