Newsletter
Join the Community
Subscribe to our newsletter for the latest news and updates
Developer portfolio template with React and Tailwind CSS, featuring LinkedIn data import, GitHub contributions, and Netlify deployment.
Personal Portfolio is an open-source developer portfolio template for React and Tailwind CSS that converts a LinkedIn data export into a complete personal website with pre-built sections for projects, blogs, and open source contributions. Created by Parth Mittal and hosted on GitHub, the template is designed to be cloned, customized, and deployed to Netlify quickly.
Personal Portfolio is a single-page web template built with ReactJS and styled with Tailwind CSS. It takes your personal data — either hand-edited in a JavaScript constants file or imported automatically from a LinkedIn export — and renders eight site sections: Hero, Skills & Experience, Education, Projects, Blogs, Open Source Contributions, Extra Curricular, and Contact Me. The template uses Vite as its build tool and React Icons for the icon set, and it is distributed as a public GitHub repository with an active contribution guide.
snippets/bulk_import_from_linkedin.py that reads a downloaded LinkedIn export and generates src/constants/index-example.js, which you merge into the main configuration file.src/constants/index.js..env as VITE_GH_TOKEN fetches your open source contributions and displays them in the dedicated section.npm run cypress:open or npm run cypress:run; pull requests can trigger them by adding the run-tests label.src/constants/index.js, with icons imported per item from React Icons.snippets folder as linkedin-export, and run the Python script to auto-generate most of your portfolio's content.index.html, swap React Icons for each skill, and add project images in the assets folder.After you either manually edit src/constants/index.js or run the LinkedIn import script to generate it, each React component reads this file and renders its section. The GitHub contributions section calls the GitHub REST API using the token from the .env file. Vite bundles the app, and npx netlify dev gives you a local development server while npm run build produces a deployable static site.
Yes, the repository is public on GitHub and welcomes contributions. No pricing or paid tier is mentioned; you can clone, modify, and deploy it for your own portfolio.
Download your LinkedIn account data from LinkedIn's settings, extract the ZIP, and move the folder into the snippets directory renamed to linkedin-export. Then run python3 snippets/bulk_import_from_linkedin.py. Review the generated index-example.js, copy it over src/constants/index.js, and adjust icons and images manually.
Only the Open Source Contributions section requires it. Create a classic personal access token with repo:status, public_repo, read:project, and read:org scopes, then store it in .env as VITE_GH_TOKEN. The rest of the portfolio works without this token.
Yes. The README includes a deployment guide, notes that environment variables must be added in the Netlify UI, and recommends using npx netlify dev for local testing. The template is configured for Netlify out of the box.
The project uses Cypress for end-to-end testing. You can open the test runner with npm run cypress:open or run headless with npm run cypress:run. Adding the run-tests label to a pull request triggers the tests, and all tests must pass before merging.
