A web application built using the MERN stack to analyze GitHub profiles for specific elements and provide feedback. This project also includes a Python-based machine learning model to check if the profile picture contains a human face.
- Analyze GitHub profiles for the presence of:
- Profile Picture
- Bio
- Pinned Repositories
- Social Links and Location
- Project Titles of Pinned Repositories
- Skills and Technologies
- README files
- Project Descriptions
- Provide feedback based on the analysis
- Check if the profile picture contains a human face using a Python ML model
- Frontend: React
- Backend: Node.js, Express
- Authentication: Firebase
- Machine Learning: Python, OpenCV
- Node.js
- npm or yarn
- Python
- pip
- GitHub Access Token
-
Clone the repository:
git clone https://github.com/your-username/github-profile-analyzer.git cd github-profile-analyzer
-
Backend Setup:
cd server npm install
-
Frontend Setup:
cd ../client npm install
-
Python Setup:
cd ../python-model pip install -r requirements.txt
-
GitHub Access Token:
To access the GitHub API, you need a GitHub Access Token. Follow these steps to generate one:
- Go to GitHub Settings.
- Click on "Generate new token".
- Give your token a descriptive name.
- Select the scopes
repo
anduser
. - Click "Generate token".
- Copy the generated token.
Add your github token in analyzeprofile.js file line number 6
-
Start the backend server:
cd server npm start
-
Start the frontend development server:
cd ../client npm start
-
Start the Python server:
cd ../python-model python checkHumanFace.py
- Open your browser and go to
http://localhost:3000
. - Enter the GitHub profile URL you want to analyze.
- Click the "Analyze" button.
- View the analysis results and feedback.
github-profile-analyzer/
│
├── client/ # React frontend
│ ├── public/
│ └── src/
│ ├── components/
│ ├── App.css
│ ├── App.js
│ ├── index.css
│ └── index.js
│
├── server/ # Node.js backend
│ ├── services/
│ │ ├── analyzeProfile.js
│ │ └── checkHumanFace.js
│ ├── .env
│ ├── package.json
│ └── server.js
│
├── python-model/ # Python ML model
│ ├── checkHumanFace.py
│ ├── requirements.txt
│ └── model/ # Model files
│
├── .gitignore
├── README.md
└── package.json