It is a full-stack working web application using Clarifai Web API for face detection in an image,using a website with frontend designed completely using React.js, server using Node.js and Express.js and PostgreSQL for database. Frontend of the application has been deployed to Vercel, backend to Heroku and for database I've used elephantSQL which is a hosted service for PostgreSQL.
Do check out the application here
-
Clone this repo
-
Go to face-recognition-web-app/face-recognition-frontend This is the main project folder for the front end.
-
Run
npm install
This will install all the dependencies. -
Go to face-recognition-web-app/face-recognition-api This is the server i.e. the back-end for the application
-
Run
npm install
This will install all the dependencies. -
You must add your own API key and Databse URI in the
face-recognition-web-app/face-recognition-api/.env
file to connect to Clarifai and your database. The name of the variables are available in .example.env file.
You can grab your free Clarifai API key from here here
-
Run
npm start
This will run the server, on port 8000 -
Go to face-recognition-web-app/face-recognition-webapp and run
npm start
This will run the frontend, on port 3000
I've used ElephantSQL which is a hosted service for postgreSQL but you can create you local database as well.
- Create a database face-recog (Or any other name you prefer)
- Create a table named users, with following structure:
CREATE TABLE users (id SERIAL PRIMARY KEY, email TEXT UNIQUE NOT NULL, password TEXT NOT NULL, entries BIGNINT DEFAULT O);
- Enter your server details in
face-recognition-web-app/face-recognition-api/.env
file.