Find My Face is a web application designed for facial recognition and photo management. It allows users to upload images and automatically detects and matches faces across various photos using advanced machine-learning techniques.
- Python: Backend logic and facial recognition
- Flask: RESTful API framework for the backend
- OpenCV: Image processing and facial recognition
- Redis: Caching and session management
- OpenSSL: Secured data transmission with HTTPS
- React: Dynamic and interactive user interface
- TypeScript: Type safety in frontend development
- Postman: API testing and debugging
- Git/GitHub: Version control and repository management
-
Clone the Repository
- Clone the repository to your local machine using:
git clone <repository-url>
- Clone the repository to your local machine using:
-
Set Up the Backend
- Navigate to the
backend
folder:cd backend
- Install the required Python packages:
pip install -r requirements.txt
- Note: For the app to function, especially regarding server-side user authentication with Redis caching and Flask-Session, you need to generate OpenSSL certificates. Store these certificates in the
backend/certificates
directory to enable HTTPS support.
- Navigate to the
-
Start the Backend Server
- Run the following command to start the Flask server:
python ./server/app.py
- Run the following command to start the Flask server:
-
Set Up the Frontend
- Navigate to the
frontend
folder:cd ../frontend
- Install the necessary packages:
pnpm install
- Navigate to the
-
Start the Frontend Client
- Run the client application:
pnpm run dev
- Run the client application:
-
Access the Application
- Open your web browser and visit:
https://localhost:5173
- You can now view and test the web application.
- Open your web browser and visit: