DevLens is a responsive GitHub profile and portfolio analyzer. It analyzes public repositories, matches resume and job-description skills, calculates repository-quality scores, recommends suitable projects, and provides improvement suggestions.
Developers often list many skills on their resumes, but recruiters may not find enough evidence of those skills in their GitHub repositories.
Manually checking repositories, README files, technologies, activity, and missing skills takes time. DevLens solves this problem by converting public GitHub data into understandable scores, skill matches, project recommendations, and improvement plans.
- Analyzes public GitHub profiles and repositories.
- Generates an explainable portfolio score out of 100.
- Matches resume skills with GitHub repository evidence.
- Supports PDF, DOCX, TXT and Markdown resume files.
- Matches job-description requirements with GitHub skills.
- Detects matched, missing and unproven technical skills.
- Recommends a suitable project according to the job description.
- Provides project stack, screens, APIs, database model and build steps.
- Generates individual repository-quality scores.
- Analyzes public repository README files.
- Creates a skill evidence map from repository signals.
- Compares two GitHub profiles.
- Shows profile and repository improvement suggestions.
- Estimates how improvements can increase the portfolio score.
- Supports repository search, filtering and sorting.
- Provides dark and light themes.
- Works on desktop, tablet and mobile devices.
- Uses public GitHub data without requiring login.
| Category | Technologies |
|---|---|
| Frontend | React.js, JavaScript and JSX |
| Structure | Semantic HTML through JSX |
| Styling | CSS3 and responsive layouts |
| API | GitHub REST API |
| Components | Reusable UI components |
| Icons | Lucide React |
| Resume Processing | PDF.js and Mammoth |
| Build Tools | Vite and Vinext |
| Deployment | Cloudflare Workers |
| Version Control | Git and GitHub |
- The user enters a public GitHub username.
- DevLens fetches profile and repository data from the GitHub REST API.
- It calculates profile and repository-quality signals.
- Repository languages, topics, names and descriptions are analyzed.
- The application creates a GitHub skill inventory.
- Resume or job-description skills are compared with repository evidence.
- Missing skills and portfolio gaps are identified.
- A suitable project and improvement roadmap are generated.
Users can upload or paste their resume content. DevLens compares detected resume skills with visible evidence available in public GitHub repositories.
Supported resume formats:
- DOCX
- TXT
- Markdown
Maximum supported file size: 8 MB
Resume files are processed locally inside the browser and are not permanently uploaded or stored.
Users can paste a job description to receive:
- Overall job match percentage
- Matched skills
- Missing skills
- Skills without visible GitHub evidence
- Suitable portfolio project recommendation
- Recommended technology stack
- Core application screens
- REST API plan
- Suggested database model
- Step-by-step project-building plan
- Resume-ready project outcome
Repository-quality scores use public metadata such as:
- Repository description
- Primary programming language
- Repository topics
- Recent activity
- Homepage or live demo
- Stars and forks
- Issue support
- Archived status
These scores are project-based heuristics and are not official GitHub or hiring scores.
DevLens uses public GitHub REST API endpoints:
GET https://api.github.com/users/{username}
GET https://api.github.com/users/{username}/repos
GET https://api.github.com/repos/{owner}/{repository}/readme
No API key is required for normal public-profile analysis. GitHub can apply a request limit to unauthenticated API usage.
- Node.js 22 or later
- npm
- Git
git clone YOUR_GITHUB_REPOSITORY_URL
cd DevLens
npm installnpm run devOpen the local URL displayed in the terminal:
http://localhost:5173
You can use octocat as a sample GitHub username.
Login to Cloudflare:
npx wrangler loginCheck login:
npx wrangler whoamiDeploy the project:
npx @vinext/cloudflare deployCloudflare will display the final workers.dev demo URL after successful deployment.
DevLens/
├── app/
│ ├── devlens-client.jsx
│ ├── globals.css
│ ├── layout.tsx
│ └── page.tsx
├── components/
│ └── ui/
├── lib/
│ └── utils.ts
├── public/
├── devlens-dashboard.jpg
├── package.json
├── vite.config.ts
├── wrangler.jsonc
└── README.md
| Phase | Development Work | Status |
|---|---|---|
| Phase 1 | GitHub profile fetching and repository analysis | ✅ Completed |
| Phase 2 | Portfolio score and language insights | ✅ Completed |
| Phase 3 | Resume evidence matching and file processing | ✅ Completed |
| Phase 4 | Job-description matching and project recommendation | ✅ Completed |
| Phase 5 | Repository scoring and advanced README analyzer | ✅ Completed |
| Phase 6 | Profile comparison and improvement roadmap | ✅ Completed |
| Phase 7 | GitHub OAuth, backend proxy and saved reports | 🔜 Planned |
| Phase 8 | AI README assistant and downloadable PDF reports | 💡 Future |
- Add a secure backend proxy for GitHub API requests.
- Add GitHub OAuth for improved API request limits.
- Save previous profile and job-match reports.
- Export analysis results as a professional PDF.
- Add contribution and commit-quality insights.
- Compare multiple job descriptions.
- Add automated testing and GitHub Actions deployment.
- Only public GitHub profile and repository data is analyzed.
- GitHub login is not required.
- Resume files are processed locally in the browser.
- Resume content is not permanently stored or uploaded.
Himanshu Pal
B.Tech CSE (AI) Student
If you find DevLens useful, consider giving the repository a star.
