{"id":368553,"date":"2026-10-06T07:41:50","date_gmt":"2026-10-06T07:41:50","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/repopress\/"},"modified":"2026-10-06T07:41:26","modified_gmt":"2026-10-06T07:41:26","slug":"repobridgeforge","status":"publish","type":"plugin","link":"https:\/\/hsb.wordpress.org\/plugins\/repobridgeforge\/","author":23298972,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"0.1.2","stable_tag":"0.1.2","tested":"7.1.3","requires":"5.8","requires_php":"7.4","requires_plugins":null,"header_name":"Repo Bridge Forge","header_author":"Gunjan Jaswal","header_description":"Publish WordPress content from a GitHub repository. Markdown files with YAML front matter become posts, kept in sync from the branch you choose.","assets_banners_color":"19233c","last_updated":"2026-10-06 07:41:26","external_support_url":"","external_repository_url":"","donate_link":"https:\/\/ko-fi.com\/gunjanjaswal","header_plugin_uri":"https:\/\/github.com\/gunjanjaswal\/RepoBridgeForge","header_author_uri":"https:\/\/www.gunjanjaswal.me","rating":0,"author_block_rating":0,"active_installs":0,"downloads":135,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"0.1.2":{"tag":"0.1.2","author":"gunjanjaswal","date":"2026-10-06 07:41:26","revision":3730235}},"upgrade_notice":{"0.1.0":"<p>First release.<\/p>"},"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3730226,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3730226,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3730226,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3730226,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["0.1.2"],"block_files":[],"assets_screenshots":[],"screenshots":{"1":"The Repo Bridge Forge settings screen.","2":"The activity log after a sync."}},"plugin_section":[],"plugin_tags":[529,16271,1673,4608,1558],"plugin_category":[],"plugin_contributors":[245263],"plugin_business_model":[],"class_list":["post-368553","plugin","type-plugin","status-publish","hentry","plugin_tags-content","plugin_tags-deployment","plugin_tags-github","plugin_tags-markdown","plugin_tags-sync","plugin_contributors-gunjanjaswal","plugin_committers-gunjanjaswal"],"banners":{"banner":"https:\/\/ps.w.org\/repobridgeforge\/assets\/banner-772x250.png?rev=3730226","banner_2x":"https:\/\/ps.w.org\/repobridgeforge\/assets\/banner-1544x500.png?rev=3730226","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/repobridgeforge\/assets\/icon-128x128.png?rev=3730226","icon_2x":"https:\/\/ps.w.org\/repobridgeforge\/assets\/icon-256x256.png?rev=3730226","generated":false},"screenshots":[],"raw_content":"<!--section=description-->\n<p>Repo Bridge Forge lets you keep your content in a GitHub repository and have it appear as WordPress posts. Point the plugin at a repo, a branch, and a folder, and every Markdown file there becomes a post. Edit the file in GitHub, and the post updates on your next sync.<\/p>\n\n<p>It is built for people who like writing in Markdown, want their content under version control, or manage docs and changelogs in a repo and need them mirrored onto a WordPress site.<\/p>\n\n<p><strong>How it works<\/strong><\/p>\n\n<ul>\n<li>You add a repository owner, name, branch, and an optional sub-folder.<\/li>\n<li>You provide a fine-grained personal access token with read-only access to that repo.<\/li>\n<li>Each Markdown file is read, its YAML front matter maps to the post title, slug, status, type, date, categories, and tags, and the body is converted to HTML.<\/li>\n<li>The plugin tracks each file by its Git blob checksum, so unchanged files are skipped and only real changes trigger an update.<\/li>\n<\/ul>\n\n<p><strong>One-directional by design<\/strong><\/p>\n\n<p>Your repository is the source of truth. WordPress is the place it gets published. The plugin only reads from GitHub, it never writes back, so there is nothing to reconcile and no risk of the plugin changing your repo.<\/p>\n\n<p><strong>Example file<\/strong><\/p>\n\n<pre><code>---\ntitle: \"Getting Started\"\nslug: getting-started\nstatus: publish\ntype: post\ncategories: [Guides]\ntags: [setup, intro]\ndate: 2026-08-14\n---\n\n# Getting Started\n\nYour **Markdown** body goes here.\n<\/code><\/pre>\n\n<h3>External services<\/h3>\n\n<p>This plugin connects to the GitHub REST API (https:\/\/api.github.com) to read files from the repository you configure. It sends requests only after you enter a repository and an access token and only to fetch the repository details, its file tree, and the contents of Markdown files in it. No request is made until you save a configuration, and nothing is sent anywhere else.<\/p>\n\n<ul>\n<li>GitHub Terms of Service: https:\/\/docs.github.com\/site-policy\/github-terms\/github-terms-of-service<\/li>\n<li>GitHub Privacy Statement: https:\/\/docs.github.com\/site-policy\/privacy-policies\/github-privacy-statement<\/li>\n<\/ul>\n\n<p>The plugin does not collect analytics, does not phone home, and stores your token encrypted in your own database.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Upload the <code>repobridgeforge<\/code> folder to <code>\/wp-content\/plugins\/<\/code>, or install the plugin through the WordPress plugins screen.<\/li>\n<li>Activate the plugin.<\/li>\n<li>Open the Repo Bridge Forge menu in your WordPress admin sidebar.<\/li>\n<li>Enter the repository owner, name, branch, and optional folder path.<\/li>\n<li>Paste a fine-grained personal access token with read-only Contents permission for that repository.<\/li>\n<li>Use Test connection to confirm access, then Sync now, or set an automatic schedule.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"does%20it%20write%20my%20wordpress%20posts%20back%20to%20github%3F\"><h3>Does it write my WordPress posts back to GitHub?<\/h3><\/dt>\n<dd><p>No. Version 0.1 is read-only from GitHub to WordPress. Your repository is never modified.<\/p><\/dd>\n<dt id=\"what%20token%20does%20it%20need%3F\"><h3>What token does it need?<\/h3><\/dt>\n<dd><p>A fine-grained personal access token scoped to the single repository, with read-only access to Contents. That is the least access the plugin can work with.<\/p><\/dd>\n<dt id=\"what%20happens%20when%20i%20delete%20a%20file%20from%20the%20repo%3F\"><h3>What happens when I delete a file from the repo?<\/h3><\/dt>\n<dd><p>By default the matching post is left untouched and the event is logged. You can switch to moving that post to Trash in the settings.<\/p><\/dd>\n<dt id=\"does%20it%20work%20with%20page%20builders%3F\"><h3>Does it work with page builders?<\/h3><\/dt>\n<dd><p>Content is stored as HTML in the post body, which any theme and the block editor read. Builders that store their own layout data, such as Elementor or WPBakery, own the editing surface for a page, so synced HTML shows as standard content rather than editable builder modules.<\/p><\/dd>\n<dt id=\"where%20is%20development%20happening%3F\"><h3>Where is development happening?<\/h3><\/dt>\n<dd><p>Source code and issues live on GitHub at https:\/\/github.com\/gunjanjaswal\/RepoBridgeForge.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>0.1.2<\/h4>\n\n<ul>\n<li>Documentation: corrected the settings location to the top-level Repo Bridge Forge menu, and refreshed the contributor guide. No code changes.<\/li>\n<\/ul>\n\n<h4>0.1.1<\/h4>\n\n<ul>\n<li>Markdown is now converted by a small built-in converter, so the plugin no longer bundles a third-party library.<\/li>\n<\/ul>\n\n<h4>0.1.0<\/h4>\n\n<ul>\n<li>First release: one-directional pull from GitHub, Markdown with YAML front matter, manual and scheduled sync, per-file change detection, connection test, and an activity log.<\/li>\n<\/ul>","raw_excerpt":"Publish WordPress content straight from a GitHub repository. Write Markdown with front matter, and your posts stay in sync from the branch you pick.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/hsb.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/368553","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/hsb.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/hsb.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/hsb.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=368553"}],"author":[{"embeddable":true,"href":"https:\/\/hsb.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/gunjanjaswal"}],"wp:attachment":[{"href":"https:\/\/hsb.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=368553"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/hsb.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=368553"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/hsb.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=368553"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/hsb.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=368553"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/hsb.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=368553"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/hsb.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=368553"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}