{
  "version": "2",
  "id": "https://freelancenews.online/news/open-source-resume-starter-pack-pairs-a-local-visual-editor-with-825dc138",
  "title": "Open-source Resume Starter Pack pairs a local visual editor with release-triggered PDF builds",
  "summary": "A community project documented on dev.to and GitHub lets users edit resume content in a browser-based local editor, save changes to disk, and have a GitHub Actions workflow attach a one-page PDF to each published release tag.",
  "body": "A community project called Resume Starter Pack combines a local browser-based resume editor with an automated PDF build tied to GitHub releases. The dev.to post announcing it describes the goal as maintaining a resume in a visual editor, tracking changes with Git, and generating PDFs automatically without writing LaTeX. The accompanying GitHub repository documents setup, commands and workflow behavior in more detail. Both sources are the project's own material, so the behavior described below is attributed to the author rather than independently verified.\n\nEditing happens locally rather than on a hosted service. The repository describes a flow in which a person clicks \"Use this template\" to create a new repository; a private repository is offered as an option for those who plan to keep personal contact details there, and each template copy begins with its own Git history. The repository is then cloned, Node.js 22 or newer is installed together with npm, and the development server is started, reachable at localhost:3000. The repository states the server binds to the computer's loopback address, that saving requires same-origin requests, and that writes are validated with stale ones rejected.\n\nThe editor is form-based. The dev.to post says users update contact details, summary, experience, projects, skills and education through simple form fields, see changes immediately, and click Save changes to persist them locally. Entries and sections can be reordered with drag handles, and the repository notes that keyboard users can move items with the Up and Down keys. The repository also states that drag icons stay static during hover and dragging.\n\nLayout controls are exposed rather than hard-coded. Paper size (Letter or A4), font family, text size, page margins, line spacing, and the gaps between sections and entries are all listed in the post. When content runs past one page, an overflow indicator warns; the repository emphasizes that the preview flags overflow but never quietly shrinks or deletes content, so users are expected to adjust content or spacing until everything fits.\n\nTwo viewing modes are documented. Before saving, a live preview updates; a \"Resume only\" view presents the saved data with no sidebar or toolbar, drawing on the same template the editor preview uses. Sidebar resizing and collapsing are also noted by the repository, along with a \"Reload saved data\" action that discards a draft once confirmed. The last pre-save backup is written to output/backups/before-save.json and replaced on every save, which is why the repository recommends committing regularly to keep durable history.\n\nThere are two forms of PDF generation. For a quick manual export, the repository tells users to choose Print / Save PDF, match the selected paper size (Letter by default), keep scale at 100%, and turn off browser headers and footers. The automated exporter instead has users install Chromium through Playwright and run a build command with a version argument, producing output/resume-1.0.pdf; according to the repository, the export fails unless the PDF is exactly one page. On Linux, browser dependencies may need to be installed as well.\n\nMore distinctive is the release automation. Per the dev.to post, automatic PDF generation is triggered when a GitHub release is published: a release tagged v1.0 builds resume-1.0.pdf, a check confirms the file holds exactly one page, and the PDF is attached to that release. Because every release keeps its own PDF, older versions stay downloadable from their respective release assets. Regular pushes and pull requests, the repository adds, validate the source without producing a release PDF, and pushing a tag by itself does not create one.\n\nSeveral documented constraints in the workflow deserve attention. No custom secret or personal access token is required, the repository says, since the workflow relies on the repository's GitHub token carrying contents-write permission. Upload happens after publication, so mutable releases are required; where repositories enforce immutable releases, the repository recommends adapting the workflow so it builds and uploads to a draft before publishing. Two further warnings appear: releases created by another workflow using GITHUB_TOKEN will not trigger this release workflow, and re-running a successful build will not overwrite an existing release asset, meaning changed content requires a new version.\n\nThe repository lists a small set of commands: npm run dev for the editor at localhost:3000, npm run preview for the same local editor, npm run validate to check saved content and layout, and npm run build:pdf with a version argument to generate a versioned one-page PDF. A PORT environment variable can move the server to another port, with syntax differing between macOS/Linux and PowerShell. The repository says Windows, macOS and Linux use the same commands, and suggests running nvm use first if nvm is in use.\n\nLicensing and data handling are addressed explicitly. The project code is MIT licensed, and the repository advises keeping personal resume data private if the user does not want it published. Dashboard icons use Animate UI React components with Motion, bundled locally rather than loaded from a CDN, with upstream licensing retained in editor/icons/LICENSE. The repository also states that all included resume content is placeholder text and should be replaced.\n\nFor freelancers and developers who maintain a resume as a living document, the practical appeal is the combination of version history and a build step that refuses to ship a multi-page PDF. Editorial interpretation: people who already keep code on GitHub could treat resume revisions like code changes, with each published version archived as a downloadable asset. That is a workflow argument, not a claim the author makes about outcomes.\n\nThe tradeoffs are equally concrete. The setup assumes comfort with a terminal, Node.js 22 or newer, npm and Playwright's Chromium install, plus optional Linux browser dependencies. The automated path depends on GitHub Actions being enabled and on mutable releases, and the repository explicitly notes that re-running a build will not replace an existing asset. Anyone enforcing immutable releases must modify the workflow themselves.\n\nWhat remains unknown is significant. The evidence contains no information on pricing beyond the MIT license, no independent testing of the editor or exporter, no reported user numbers, and no statement about browser compatibility beyond the platform notes. The dev.to post is a community announcement by the project's author, so its descriptions of behavior are author claims rather than independently verified facts; the GitHub repository is the project's own documentation. Neither source reports benchmarks or third-party review.\n\nThe conclusion for this audience is conditional. Resume Starter Pack is a documented, MIT-licensed template with a specific mechanism: local editing, Git-tracked content, and a release-triggered build that enforces a single page. Whether it suits a given freelancer depends on willingness to run a local Node toolchain and to keep the repository private if it holds contact details. Those considering it should read the workflow notes on immutable releases and asset overwriting before relying on the automation.",
  "category": "dev",
  "language": "en",
  "datePublished": "2026-10-23T11:18:26.172Z",
  "dateModified": "2026-10-23T11:18:26.172Z",
  "eventDate": null,
  "sourcePublicationDate": "2026-10-23T11:03:59.000Z",
  "source": {
    "name": "dev.to",
    "url": "https://dev.to/hem_upadhyay_ad9428dc9ddc/resume-starter-pack-visual-editing-automated-pdf-releases-395a",
    "kind": "community"
  },
  "practicalImpact": "Editorial interpretation: freelancers and developers who already version work on GitHub could adopt a release-per-resume-version habit, with each PDF archived as a downloadable asset and a build that rejects multi-page output. The cost is a local Node and Playwright setup plus attention to the documented release-workflow limits.",
  "limitations": "The dev.to post is the author's own announcement and the GitHub repository is the project's own documentation; no independent testing, user figures, browser-compatibility data or pricing beyond the MIT license is provided. Behavior described for the editor and exporter is therefore attributed to the author rather than verified.",
  "keyPoints": [
    "The project pairs a local browser editor with Git-tracked content and a Playwright-based PDF exporter that fails if output is not exactly one page.",
    "Publishing a GitHub release with a version tag triggers a workflow that builds and attaches a versioned PDF; pushes and pull requests only validate.",
    "The repository documents constraints: mutable releases are required, re-runs do not overwrite existing assets, and releases created by another GITHUB_TOKEN workflow do not trigger the build.",
    "Setup requires Node.js 22 or newer, npm, and a Chromium install via Playwright, with the server bound to loopback and saves restricted to same-origin requests.",
    "The code is MIT licensed and the author advises using a private repository if personal contact details will be stored."
  ],
  "review": {
    "status": "source-reviewed",
    "checkedAt": "2026-10-23T11:18:26.172Z",
    "method": "Automated comparison against retrieved source text; not independent fact-checking.",
    "correctionNote": null
  },
  "sources": [
    {
      "id": 1,
      "url": "https://dev.to/hem_upadhyay_ad9428dc9ddc/resume-starter-pack-visual-editing-automated-pdf-releases-395a",
      "publisher": "dev.to",
      "title": "Resume Starter Pack: Visual Editing + Automated PDF Releases",
      "publishedAt": 1792753439000,
      "fetchedAt": 1792754270579,
      "hash": "607c5be1d53511b1de144b13559b001e1398328ace99dca5b0e20626a048442c",
      "kind": "community"
    },
    {
      "id": 2,
      "url": "https://github.com/hemupadhyay26/resume-starter-pack",
      "publisher": "github.com",
      "title": "Resume Starter Pack",
      "publishedAt": null,
      "fetchedAt": 1792754271623,
      "hash": "e86dacbd22bc243238fa49988131a37bc0a41a24c8cb1533a611e32024101e1e",
      "kind": "repository"
    }
  ],
  "claims": [
    {
      "claim": "Publishing a GitHub release tagged with a version triggers automatic PDF generation that is attached to that release.",
      "source": 1,
      "id": "claim-1",
      "url": "https://freelancenews.online/news/open-source-resume-starter-pack-pairs-a-local-visual-editor-with-825dc138#claim-1"
    },
    {
      "claim": "The automated export fails if the generated PDF is not exactly one page.",
      "source": 2,
      "id": "claim-2",
      "url": "https://freelancenews.online/news/open-source-resume-starter-pack-pairs-a-local-visual-editor-with-825dc138#claim-2"
    },
    {
      "claim": "Pushes and pull requests validate the source but do not create release PDFs, and a tag push alone does not create a PDF.",
      "source": 2,
      "id": "claim-3",
      "url": "https://freelancenews.online/news/open-source-resume-starter-pack-pairs-a-local-visual-editor-with-825dc138#claim-3"
    },
    {
      "claim": "The workflow uses the repository's GitHub token with contents-write permission and needs no personal access token or custom secret.",
      "source": 2,
      "id": "claim-4",
      "url": "https://freelancenews.online/news/open-source-resume-starter-pack-pairs-a-local-visual-editor-with-825dc138#claim-4"
    },
    {
      "claim": "The editor warns about page overflow but does not silently shrink or remove content.",
      "source": 2,
      "id": "claim-5",
      "url": "https://freelancenews.online/news/open-source-resume-starter-pack-pairs-a-local-visual-editor-with-825dc138#claim-5"
    },
    {
      "claim": "The project code is MIT licensed and users are advised to keep resume data private if they do not want it published.",
      "source": 2,
      "id": "claim-6",
      "url": "https://freelancenews.online/news/open-source-resume-starter-pack-pairs-a-local-visual-editor-with-825dc138#claim-6"
    }
  ],
  "formats": {
    "html": "https://freelancenews.online/news/open-source-resume-starter-pack-pairs-a-local-visual-editor-with-825dc138",
    "markdown": "https://freelancenews.online/news/open-source-resume-starter-pack-pairs-a-local-visual-editor-with-825dc138.md",
    "json": "https://freelancenews.online/news/open-source-resume-starter-pack-pairs-a-local-visual-editor-with-825dc138.json"
  }
}