Decap CMS Proxy Server (`decap-server`) is a lightweight Node.js Express server designed to facilitate local development with Decap CMS, particularly when using `git-gateway` or `proxy` backends. It acts as an unauthenticated intermediary between your local Decap CMS instance and a Git repository (e.g., GitHub, GitLab), allowing content changes to be saved directly to your local files during development without needing a live backend connection. The current stable version is 3.7.0, with releases typically following the frequent cadence of the broader Decap CMS project (major, minor, and patch releases occurring regularly). Its key differentiator is simplifying the local development workflow for Decap CMS by abstracting Git operations, making it an essential tool for local content authoring and testing.
npm install decap-serverVerified import paths — ran on the pinned version, not inferred.
Demonstrates setting up `config.yml` for Decap CMS to use the local proxy server, then starting `decap-server`.
Ensure `decap-server` is only run in a secure local development environment. For more secure scenarios or production, use dedicated OAuth proxies or authenticated backends. As of `decap-cms@3.9.0`, a feature `Allow the server to be run securely` was added, but general local-only use advice remains prudent for typical setups.
Upgrade your Node.js installation to a version greater than or equal to `v10.22.1`. It is recommended to use an actively supported LTS (Long Term Support) version of Node.js.
Verify the `proxy_url` or `local_backend.url` in your `config.yml` matches the port and path `decap-server` is running on. The default port is 8081, and the API path is `/api/v1`.
Specify a different port by creating a `.env` file in your project root with `PORT=XXXX` (e.g., `PORT=8082`) and then running `npx decap-server`.
1. Ensure all configured `media_folder` and collection `folder` paths actually exist in your Git repository. Create empty `.gitkeep` files in these folders if necessary. 2. Verify that the Personal Access Token (PAT) used by your Git backend (often configured via the `base_url` or `auth_endpoint` settings that the proxy handles) has the necessary scopes (e.g., 'repo' for GitHub). 3. Double-check your `config.yml` for correct repository names and paths.
No dependency data recorded yet.