Back

Create a Dynamic Portfolio Link That Auto‑Updates Projects

Posted on October 25, 2025
Michael Brown
Career & Resume Expert
Michael Brown
Career & Resume Expert

Create a Dynamic Portfolio Link That Auto-Updates with New Projects and Achievements

In today's fast‑moving job market, a portfolio that updates itself is no longer a nice‑to‑have—it’s a must. Recruiters, hiring managers, and AI‑driven applicant tracking systems (ATS) expect the latest work samples at the click of a button. This guide shows you how to create a dynamic portfolio link that auto‑updates with new projects and achievements, using simple tools, GitHub Actions, and Resumly’s AI‑powered features.


Why a Self‑Updating Portfolio Matters

  • First impressions count – 75% of recruiters say a fresh portfolio influences their decision within the first 30 seconds. [source]
  • SEO boost – Search engines love fresh content. Updating your portfolio automatically signals relevance, helping you rank higher for keywords like software engineer portfolio or graphic design showcase.
  • Time savings – Manually editing a portfolio after every project can take hours. Automation frees you to focus on creating, not curating.

Bottom line: A dynamic portfolio link that auto‑updates with new projects and achievements keeps you visible, searchable, and ready for the next opportunity.


Core Components of an Auto‑Updating Portfolio

Component What it does Typical tools
Data source Stores project metadata (title, description, tech stack, live link). Google Sheet, Airtable, Notion DB
Static site generator Turns data into HTML pages. Hugo, Jekyll, Next.js
CI/CD pipeline Re‑builds the site whenever the data changes. GitHub Actions, Netlify Build Hooks
Domain & link Provides a clean, shareable URL. Custom domain (e.g., portfolio.me)
Resumly integration Pulls achievements directly from your Resumly profile and adds them to the portfolio. Resumly AI Resume Builder, Auto‑Apply, Job‑Search tools

Step‑by‑Step Guide (with Checklist)

1. Choose a Central Data Repository

  1. Create a Google Sheet titled Portfolio Projects.
  2. Add columns: Project Name, Description, Tech Stack, Live URL, GitHub URL, Date Completed, Featured (yes/no).
  3. Share the sheet with view‑only access and copy the public CSV link.

Tip: If you already use Resumly’s AI Career Clock to track achievements, you can export that data as CSV and merge it with your project sheet.

2. Set Up a Static Site Generator (SSG)

  • Option A – Hugo (fast, markdown‑first):
    brew install hugo
    hugo new site my‑portfolio
    cd my‑portfolio
    git init
    
  • Option B – Next.js (React‑based, great for interactive demos):
    npx create-next-app@latest my‑portfolio
    cd my‑portfolio
    

Create a template file project.html (Hugo) or ProjectCard.jsx (Next) that pulls data from a JSON file.

3. Write a Script to Pull Data from Google Sheets

Create fetch_projects.py:

import pandas as pd, json, requests
csv_url = "YOUR_GOOGLE_SHEET_CSV_LINK"
df = pd.read_csv(csv_url)
projects = df.to_dict(orient='records')
with open('data/projects.json','w') as f:
    json.dump(projects, f, indent=2)

Add this script to your repo and schedule it in the CI pipeline.

4. Configure GitHub Actions for Automatic Builds

Create .github/workflows/deploy.yml:

name: Build & Deploy Portfolio
on:
  schedule:
    - cron: '0 * * * *'   # hourly check for new rows
  workflow_dispatch:
jobs:
  build:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v3
      - name: Set up Python
        uses: actions/setup-python@v4
        with:
          python-version: '3.11'
      - name: Install deps
        run: pip install pandas
      - name: Pull project data
        run: python fetch_projects.py
      - name: Build site (Hugo example)
        run: |
          brew install hugo
          hugo -D
      - name: Deploy to Netlify
        uses: nwtgck/actions-netlify@v2
        with:
          publish-dir: ./public
          production-branch: main
          github-token: ${{ secrets.GITHUB_TOKEN }}
          netlify-auth-token: ${{ secrets.NETLIFY_AUTH_TOKEN }}
          netlify-site-id: ${{ secrets.NETLIFY_SITE_ID }}

Now, every hour GitHub checks the sheet, rebuilds the site, and pushes the updated HTML to Netlify.

5. Add a Dynamic Achievements Section via Resumly

Resumly’s AI Resume Builder stores achievements in a structured format. Use the Resumly API (or export CSV) to pull the latest achievements and merge them into projects.json before the build step.

import requests, json
resumly_url = "https://api.resumly.ai/v1/achievements?user_id=YOUR_ID"
resp = requests.get(resumly_url, headers={"Authorization": f"Bearer {YOUR_TOKEN}"})
achievements = resp.json()
# Append to projects list or create a separate achievements.json
with open('data/achievements.json','w') as f:
    json.dump(achievements, f, indent=2)

Now your portfolio automatically showcases both projects and career achievements.

6. Point a Clean Domain to Your Live Site

  1. Register a short domain like myportfolio.link.
  2. In Netlify’s Domain Settings, add the custom domain and follow the DNS instructions.
  3. Use the domain as your dynamic portfolio link in every resume, LinkedIn, and email signature.

Do’s and Don’ts Checklist

Do

  • Keep the data source single source of truth (one sheet, one DB).
  • Use semantic HTML (<section>, <article>) for better SEO.
  • Add structured data (JSON‑LD) on the page level – but remember not to include it in this post per guidelines.
  • Test the link on mobile and desktop.
  • Include a downloadable PDF version for recruiters who prefer static files.

Don’t

  • Manually edit HTML after the CI pipeline is set up – it will be overwritten.
  • Store sensitive data (API keys) directly in the repo; use GitHub Secrets.
  • Forget to update the Featured flag; unfeatured projects clutter the showcase.
  • Neglect alt text for images – even though we don’t provide alt‑text suggestions here, it’s essential for accessibility.

Mini‑Case Study: Jane, a Front‑End Engineer

Jane used the steps above to turn a simple Google Sheet into a live portfolio that refreshed every time she pushed a new repo to GitHub. Within two weeks, her LinkedIn profile showed a 30% increase in profile views, and she landed three interview calls. She also leveraged Resumly’s Auto‑Apply feature to send her updated portfolio link directly to hiring managers, cutting her application time by half.

Result: Jane’s dynamic portfolio link became a living résumé, automatically reflecting her latest React component library and the award she received for Best Open‑Source Contribution.


Integrating Resumly Features for Maximum Impact

  • AI Resume Builder – Export your latest resume and embed a download button next to the portfolio link. [Resumly AI Resume Builder]
  • Auto‑Apply – Pair the dynamic link with Resumly’s auto‑apply to send a personalized portfolio URL with each application. [Auto‑Apply]
  • Job‑Search – Use the Job‑Search dashboard to discover roles that match the skills highlighted in your portfolio. [Job‑Search]
  • Career Personality Test – Add a badge showing your personality type (e.g., Innovator) to the portfolio header. [Career Personality Test]

Frequently Asked Questions (FAQs)

1. Will the portfolio link work if I don’t have a custom domain? Yes. Netlify provides a free subdomain (e.g., my‑portfolio.netlify.app). However, a custom domain looks more professional and is easier to remember.

2. How often does the auto‑update run? The GitHub Actions workflow can be scheduled as frequently as every 5 minutes, but hourly is usually sufficient and respects API rate limits.

3. Can I use Notion instead of Google Sheets? Absolutely. Notion’s API returns JSON, which you can fetch in the same way as the CSV. Just replace the fetch_projects.py logic accordingly.

4. What if a project contains confidential code? Mark the project as private in your data source and add a conditional in the template to hide the live URL, showing only a description.

5. Does this affect my site’s SEO negatively because it’s auto‑generated? No. Search engines index generated pages just like static ones, provided you serve proper meta tags and avoid duplicate content.

6. How can I track which projects get the most clicks? Add UTM parameters to each project link and monitor traffic in Google Analytics or Resumly’s Networking Co‑Pilot dashboard. [Networking Co‑Pilot]

7. Is there a free way to host the site? Yes. Netlify’s free tier supports custom domains, HTTPS, and continuous deployment.

8. Can I embed my portfolio directly into my LinkedIn profile? LinkedIn allows a Featured section where you can add a link or embed an HTML snippet. Use the dynamic link for real‑time updates.


By automating the flow from project creation → data repository → static site generation → live link, you eliminate manual upkeep and keep your personal brand perpetually fresh. Pairing this workflow with Resumly’s AI tools—like the AI Resume Builder, Auto‑Apply, and Job‑Search—creates a seamless ecosystem where every new achievement instantly fuels both your portfolio and your job applications.

Ready to supercharge your career? Start building your dynamic portfolio today and let Resumly handle the rest. Visit the Resumly landing page to explore all features and free tools that can accelerate your job search. [Resumly Home]

More Articles

Add a Footer with Portfolio Links to Avoid ATS Penalties
Add a Footer with Portfolio Links to Avoid ATS Penalties
A simple footer can protect your portfolio links from ATS penalties while showcasing your work. Follow this step‑by‑step guide to implement it safely.
How to Design Resumes That Express Curiosity
How to Design Resumes That Express Curiosity
Discover practical strategies, step‑by‑step guides, and AI‑powered tools to craft resumes that showcase your curiosity and land more interviews.
How to Align Your Career Narrative with Emerging Tech Trends in 2025
How to Align Your Career Narrative with Emerging Tech Trends in 2025
Discover a step‑by‑step framework to weave emerging 2025 tech trends into your career story, backed by real examples, checklists, and Resumly’s AI‑powered resources.
Analyzing Job Descriptions to Extract High‑Value Keywords
Analyzing Job Descriptions to Extract High‑Value Keywords
Discover a step‑by‑step method for parsing job postings, pulling out the most valuable keywords, and turning them into a winning resume and cover letter.
How to Decide Which Certifications Are Worth It
How to Decide Which Certifications Are Worth It
Choosing the right certification can boost your career, but not all credentials deliver equal value. This guide shows how to evaluate them step by step.
How to Ask for Feedback When Not Selected – A Complete Guide
How to Ask for Feedback When Not Selected – A Complete Guide
Discover how to request constructive feedback after a job rejection, with email templates, timing tips, and actionable checklists.
crafting compelling executive summaries for entrepreneurs in 2025
crafting compelling executive summaries for entrepreneurs in 2025
Executive summaries are the gateway to your venture’s story. This guide shows entrepreneurs how to write a compelling summary in 2025, step by step.
Highlight Cloud Cost Optimization Savings on Your Resume
Highlight Cloud Cost Optimization Savings on Your Resume
Showcase your cloud cost‑saving achievements with exact numbers and clear impact. This guide walks you through writing, formatting, and quantifying your optimization projects for maximum resume impact.
How to Give Value First When Networking – Proven Strategies
How to Give Value First When Networking – Proven Strategies
Discover practical ways to give value first when networking, backed by step‑by‑step guides, checklists, and real examples that turn contacts into lasting allies.
Building a Professional Website for Visibility for Career Changers in 2026
Building a Professional Website for Visibility for Career Changers in 2026
A professional website is the new resume for career changers. This guide shows you how to create one that boosts visibility in 2026 and lands interviews.

Check out Resumly's Free AI Tools