CloudFolio is a production-grade engineering portfolio for Narendra Pratap Singh, focused on cloud infrastructure, Site Reliability Engineering, platform engineering, DevOps, automation, and AWS work.
Production: https://cloudfolio-xi.vercel.app
Repository: https://github.com/narendra09-devops/cloudfolio
CloudFolio is built as a real product rather than a static resume page. It combines recruiter-focused content, technical case studies, architecture notes, GitHub activity, resume downloads, analytics, SEO metadata, and production hardening in one maintainable Next.js application.
Primary audiences:
- Recruiters evaluating cloud infrastructure, SRE, platform, AWS, and DevOps roles.
- Hiring managers reviewing project evidence and technical communication.
- Engineers reviewing architecture, operational practices, and implementation quality.
- Recruiter Hub with role fit, skills, relocation preferences, featured projects, FAQ, resume downloads, and direct contact paths.
- Project portfolio with case studies for cloud security, cost optimization, VM audit automation, SSL automation, dashboards, backlog reduction, and SRE automation.
- Discovery search and filters across projects, blog posts, and architecture topics with query-param support for recruiters who want to narrow quickly.
- VM Audit flagship case study with business context, implementation narrative, metrics, gallery, and architecture flow.
- Resume page with view/download CTAs and analytics events.
- Blog and architecture gallery content systems.
- GitHub-powered dashboard and activity feed with graceful fallback states.
- Vercel Analytics and Speed Insights integration.
- Custom-domain-ready SEO, sitemap, robots, metadata, and redirects.
- Security headers configured through Next.js for Vercel compatibility.
- Framework: Next.js 15 App Router
- UI: React 19, TypeScript
- Styling: Tailwind CSS
- Motion: Framer Motion
- Icons: Lucide React
- Charts: Recharts
- Theme: next-themes
- Content: TypeScript content modules and MDX support
- Analytics: Vercel Analytics, Vercel Speed Insights
- Testing: Vitest, Testing Library, Playwright configuration
- Quality: ESLint, Prettier, TypeScript, Husky, lint-staged
- Deployment: Vercel
flowchart TD
A[Next.js App Router] --> B[Route Pages]
B --> C[Reusable UI Components]
B --> D[Content Modules]
B --> E[GitHub Integration]
A --> F[Metadata, Sitemap, Robots]
A --> G[Vercel Analytics and Speed Insights]
F --> H[Custom Domain and SEO]
E --> I[Dashboard and Activity Feed]
D --> J[Projects, Blog, Architecture, Notes]
Key directories:
src/
├── app/ Route handlers, pages, metadata, sitemap, robots
├── components/ UI, layout, sections, project, blog, GitHub components
├── config/ Site and navigation configuration
├── content/ Projects, blog posts, architecture topics, notes
├── lib/ GitHub integration, analytics, utilities
├── styles/ Global styles
└── constants/ Design constants
Prerequisites:
- Node.js 22.x
- npm 10.x
Install dependencies:
npm installCreate local environment values:
cp .env.example .env.localRun the development server:
npm run devOpen:
http://localhost:3000
Run the full quality gate before release:
npm run format:check
npm run lint
npm run typecheck
npm run test -- --run
npm run buildCloudFolio is deployed on Vercel.
Production environment variables:
NEXT_PUBLIC_SITE_URL=https://cloudfolio-xi.vercel.app
NEXT_PUBLIC_DOMAIN=cloudfolio-xi.vercel.app
NEXT_PUBLIC_GITHUB_USERNAME=narendra09-devops
NEXT_PUBLIC_VERCEL_ANALYTICS=trueOptional GitHub API token:
GITHUB_TOKEN=<token>GITHUB_TOKEN improves GitHub API reliability and rate limits for dashboard and activity data. The application falls back gracefully when GitHub data is unavailable.
CloudFolio uses Vercel Analytics and Vercel Speed Insights.
Tracked events include:
- Resume viewed
- Resume downloaded
- Recruiter Hub viewed
- Contact email clicked
- LinkedIn clicked
- GitHub clicked
- Project CTA clicked
- VM Audit case study viewed
Disable analytics locally with:
NEXT_PUBLIC_VERCEL_ANALYTICS=falseThe app supports custom-domain migration through environment variables:
NEXT_PUBLIC_SITE_URL=https://<canonical-domain>
NEXT_PUBLIC_DOMAIN=<canonical-domain>No final domain is hardcoded. See docs/CUSTOM_DOMAIN_SETUP.md for DNS, Vercel, SSL, redirect, sitemap, Search Console, and analytics verification steps.
Recommended production screenshots for release assets:
| Page | URL | Purpose |
|---|---|---|
| Home | / |
Portfolio overview and primary CTAs |
| Recruiter Hub | /recruiter |
Recruiter-ready profile and downloads |
| VM Audit Case Study | /projects/vm-audit-automation-platform |
Flagship case study evidence |
| Dashboard | /dashboard |
GitHub integration and activity widgets |
| Contact | /contact |
Recruiter contact paths |
v2 planning is maintained in docs/ROADMAP_v2.md.
High-priority next improvements:
- Add automated route and link checks.
- Add Playwright smoke tests for recruiter, resume, contact, and project flows.
- Add committed production screenshots for README and release pages.
- Add richer per-page structured data.
- Add Lighthouse CI for production score tracking.
- Expand the discovery layer with saved searches, sort controls, and analytics on filter usage.
- Release Notes v1
- Release Notes v1.2
- Launch Checklist
- Production Scorecard
- Known Limitations
- Custom Domain Setup
- Launch Announcement
CloudFolio is licensed under the MIT License. See LICENSE for details.