{"id":26380248,"url":"https://github.com/devcavin/cavin","last_synced_at":"2026-04-12T19:44:03.810Z","repository":{"id":280843049,"uuid":"743526446","full_name":"devcavin/cavin","owner":"devcavin","description":"My personal portfolio web application","archived":false,"fork":false,"pushed_at":"2026-01-22T22:31:25.000Z","size":12469,"stargazers_count":0,"open_issues_count":1,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-01-23T15:50:36.527Z","etag":null,"topics":["javascript","nextjs","react","tailwindcss","typescript"],"latest_commit_sha":null,"homepage":"https://devcavin.vercel.app","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/devcavin.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2024-01-15T12:30:31.000Z","updated_at":"2026-01-22T22:30:11.000Z","dependencies_parsed_at":"2025-03-05T16:36:50.918Z","dependency_job_id":"e907567d-ff93-40d1-94fe-9d3010109528","html_url":"https://github.com/devcavin/cavin","commit_stats":null,"previous_names":["killercavin/cavin","devcavin/cavin"],"tags_count":10,"template":false,"template_full_name":null,"purl":"pkg:github/devcavin/cavin","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/devcavin%2Fcavin","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/devcavin%2Fcavin/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/devcavin%2Fcavin/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/devcavin%2Fcavin/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/devcavin","download_url":"https://codeload.github.com/devcavin/cavin/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/devcavin%2Fcavin/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28751061,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-25T09:58:17.166Z","status":"ssl_error","status_checked_at":"2026-01-25T09:55:56.104Z","response_time":113,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["javascript","nextjs","react","tailwindcss","typescript"],"created_at":"2025-03-17T05:19:32.265Z","updated_at":"2026-01-25T10:01:56.830Z","avatar_url":"https://github.com/devcavin.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Personal Portfolio - Cavin\n\nA modern, responsive portfolio website built with Next.js 16, TypeScript, and Tailwind CSS v4. Showcasing my work as a Software Developer, Network Technician and IT Professional.\n\n![Portfolio Preview](./public/og-image.png)\n\n## Features\n\n- **Lightning Fast** - Built with Next.js 16 for optimal performance\n- **Fully Responsive** - Seamless experience across all devices\n- **Modern UI/UX** - Clean design with smooth animations and transitions\n- **Accessible** - WCAG compliant with semantic HTML and ARIA labels\n- **SEO Optimized** - Meta tags, OpenGraph, and structured data\n- **Dark Theme** - Professional dark color scheme with teal accents\n- **Dynamic Content** - Easy content management through single config file\n- **Type Safe** - Built with TypeScript for reliability\n\n## Tech Stack\n\n- **Framework:** [Next.js 16](https://nextjs.org/) (App Router)\n- **Language:** [TypeScript](https://www.typescriptlang.org/)\n- **Styling:** [Tailwind CSS v4](https://tailwindcss.com/)\n- **Icons:** [Lucide React](https://lucide.dev/) + [React Icons](https://react-icons.github.io/react-icons/)\n- **Font:** [Inter](https://rsms.me/inter/)\n- **Deployment:** [Vercel](https://vercel.com/)\n\n## Project Structure\n\n```\nportfolio/\n├── app/\n│   ├── layout.tsx          # Root layout with metadata\n│   ├── page.tsx            # Home page\n│   ├── globals.css         # Global styles (Tailwind v4)\n│   ├── loading.tsx         # Loading state\n│   ├── not-found.tsx       # 404 page\n│   ├── sitemap.ts          # Dynamic sitemap\n│   └── archive/\n│       └── page.tsx        # Projects archive\n├── components/\n│   ├── Header.tsx          # Navigation header\n│   ├── About.tsx           # About section\n│   ├── Experience.tsx      # Work experience\n│   ├── Education.tsx       # Education \u0026 certifications\n│   ├── Projects.tsx        # Featured projects\n│   └── Footer.tsx          # Footer with credits\n├── data/\n│   └── content.ts          # All portfolio content (single source of truth)\n├── public/\n│   ├── images/\n│   │   └── projects/       # Project screenshots\n│   ├── resume.pdf          # Downloadable resume\n│   ├── og-image.png        # Social share image\n│   ├── favicon.ico         # Favicon\n│   └── robots.txt          # SEO robots file\n└── README.md               # You are here!\n```\n\n## Getting Started\n\n### Prerequisites\n\n- Node.js 18.x or higher\n- npm or yarn package manager\n\n### Installation\n\n1. **Clone the repository**\n   ```bash\n   git clone https://github.com/devcavin/cavin.git\n   cd cavin\n   ```\n\n2. **Install dependencies**\n   ```bash\n   npm install\n   ```\n\n3. **Run development server**\n   ```bash\n   npm run dev\n   ```\n\n4. **Open in browser**\n   ```\n   http://localhost:3000\n   ```\n\n## Customization\n\n### Update Your Content\n\nAll content is managed in a single file: `data/content.ts`\n\n```typescript\n// data/content.ts\nexport const personalInfo = {\n  name: \"Your Name\",\n  role: \"Your Role\",\n  tagline: \"Your tagline\",\n  email: \"your.email@example.com\",\n  // ... etc\n};\n```\n\n### Add Project Screenshots\n\nPlace your project images in `public/images/projects/`:\n```\npublic/images/projects/\n├── project1.png\n├── project2.png\n└── project3.png\n```\n\n### Update Resume\n\nReplace `public/resume.pdf` with your latest resume.\n\n### Customize Colors\n\nEdit the color scheme in `app/globals.css`:\n```css\n:root {\n  --slate-900: #0f172a;  /* Background */\n  --teal-300: #5eead4;   /* Accent color */\n  /* ... more colors */\n}\n```\n\n## Build for Production\n\n```bash\n# Create optimized production build\nnpm run build\n\n# Start production server\nnpm run start\n```\n\n## Deployment\n\n### Deploy to Vercel (Recommended)\n\n1. Push code to GitHub\n2. Import project on [Vercel](https://vercel.com)\n3. Vercel auto-detects Next.js and deploys\n4. Done!\n\n### Deploy to Netlify\n\n1. Build the project: `npm run build`\n2. Deploy the `.next` folder\n3. Configure: Build command: `npm run build`, Publish directory: `.next`\n\n### Deploy to Other Platforms\n\n- **Cloudflare Pages:** Supports Next.js\n- **Railway:** One-click Next.js deployment\n- **Self-hosted:** Use `npm run start` with PM2 or Docker\n\n## Design Inspiration\n\nThis portfolio is inspired by [Brittany Chiang's portfolio](https://brittanychiang.com/), featuring:\n- Clean, minimal design\n- Smooth scroll animations\n- Professional typography\n- Accessible navigation\n- Mobile-first approach\n\n## License\n\nThis project is licensed under the MIT License - see below for details:\n\n```\nMIT License\n\nCopyright (c) 2024 Cavin\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n```\n\n## Contributing\n\nWhile this is a personal portfolio, suggestions and feedback are welcome!\n\n1. Fork the repository\n2. Create your feature branch (`git checkout -b feature/AmazingFeature`)\n3. Commit your changes (`git commit -m 'Add some AmazingFeature'`)\n4. Push to the branch (`git push origin feature/AmazingFeature`)\n5. Open a Pull Request\n\n## Contact\n\n**Cavin**\n- Website: [devcavin.vercel.app](https://devcavin.vercel.app)\n- LinkedIn: [linkedin.com/in/cavin-larry](https://linkedin.com/in/devcavin)\n- Twitter(X): [x.com/devcavin](https://x.com/devcavin)\n- Email: cavinlarry001@gmail.com\n\n## Acknowledgments\n\n- Design inspiration: [Brittany Chiang](https://brittanychiang.com/)\n- Icons: [Lucide](https://lucide.dev/) \u0026 [React Icons](https://react-icons.github.io/)\n- Font: [Inter by Rasmus Andersson](https://rsms.me/inter/)\n- Framework: [Next.js by Vercel](https://nextjs.org/)\n- Styling: [Tailwind CSS](https://tailwindcss.com/)\n\n---\n\n⭐ **Star this repo if you found it helpful!**\n\nBuilt with ❤️ by [Cavin](https://github.com/devcavin)","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdevcavin%2Fcavin","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdevcavin%2Fcavin","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdevcavin%2Fcavin/lists"}