From 13b40e37f5d91124909c2fce57b5c9257a03e433 Mon Sep 17 00:00:00 2001 From: Anurag Verma <78868769+anurag629@users.noreply.github.com> Date: Fri, 27 Feb 2026 21:31:22 +0530 Subject: [PATCH 1/5] chore: rename main branch references to production (#10) Update CI workflows, README, CONTRIBUTING, and SECURITY to reflect the branch rename from main to production. --- .github/workflows/ci.yml | 4 ++-- .github/workflows/pr-target-check.yml | 8 ++++---- CONTRIBUTING.md | 2 +- README.md | 12 +++++++++++- SECURITY.md | 2 +- 5 files changed, 19 insertions(+), 9 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 17c905d..0d13bc1 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -2,9 +2,9 @@ name: CI on: push: - branches: [main, dev] + branches: [production, dev] pull_request: - branches: [main, dev] + branches: [production, dev] jobs: build: diff --git a/.github/workflows/pr-target-check.yml b/.github/workflows/pr-target-check.yml index 3ef2504..7dde21a 100644 --- a/.github/workflows/pr-target-check.yml +++ b/.github/workflows/pr-target-check.yml @@ -2,16 +2,16 @@ name: PR Target Check on: pull_request: - branches: [main] + branches: [production] jobs: check-source-branch: runs-on: ubuntu-latest steps: - - name: Only allow PRs from dev to main + - name: Only allow PRs from dev to production if: github.head_ref != 'dev' run: | - echo "::error::PRs targeting 'main' are only allowed from the 'dev' branch." + echo "::error::PRs targeting 'production' are only allowed from the 'dev' branch." echo "Please target 'dev' instead, or merge your branch into 'dev' first." echo "" echo " Source: ${{ github.head_ref }}" @@ -19,4 +19,4 @@ jobs: exit 1 - name: PR source branch is valid if: github.head_ref == 'dev' - run: echo "PR from 'dev' to 'main' — allowed." + run: echo "PR from 'dev' to 'production' — allowed." diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 8b228e9..e912fb4 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -113,7 +113,7 @@ npm run build # Full production build 1. Fork the repo and create a branch: `git checkout -b feat/my-feature` 2. Make your changes 3. Ensure `npm run check` and `npm run test` pass -4. Push and open a PR against `main` +4. Push and open a PR against `dev` 5. Fill out the [PR template](.github/PULL_REQUEST_TEMPLATE.md) — screenshots are required for visual changes 6. Wait for review diff --git a/README.md b/README.md index 4ca02ab..19b6b1d 100644 --- a/README.md +++ b/README.md @@ -34,7 +34,7 @@ OGCOPS is different: ## Quick Start ```bash -git clone https://github.com/codercops/ogcops.git +git clone -b dev https://github.com/codercops/ogcops.git cd ogcops npm install npm run dev @@ -114,6 +114,16 @@ The build output in `dist/` can be deployed to any Node.js hosting platform. Contributions are welcome — templates, bug fixes, features, docs, and more. See [CONTRIBUTING.md](CONTRIBUTING.md) for setup and guidelines. +> **Important:** Always fork and branch from `dev` (the default branch). The `production` branch is for releases only. PRs targeting `production` directly will be closed. + +```bash +# Fork the repo on GitHub, then: +git clone https://github.com//ogcops.git +cd ogcops +git checkout dev +git checkout -b your-feature-branch +``` + - [Open an issue](https://github.com/codercops/ogcops/issues) — bug reports and feature requests - [Start a discussion](https://github.com/codercops/ogcops/discussions) — questions, ideas, show & tell diff --git a/SECURITY.md b/SECURITY.md index 64fdfe5..a12dbb6 100644 --- a/SECURITY.md +++ b/SECURITY.md @@ -35,7 +35,7 @@ The following are **out of scope:** | Version | Supported | |---------|-----------| -| Latest (main branch) | Yes | +| Latest (production branch) | Yes | | Older releases | No | ## Recognition From a39dd3bcee5d4470fda4ff53d81f87efe186bac7 Mon Sep 17 00:00:00 2001 From: Prathviraj Singh Date: Fri, 27 Feb 2026 21:58:06 +0530 Subject: [PATCH 2/5] Add Feedback link to footer (#11) --- src/components/Footer.astro | 1 + 1 file changed, 1 insertion(+) diff --git a/src/components/Footer.astro b/src/components/Footer.astro index b11e817..805026b 100644 --- a/src/components/Footer.astro +++ b/src/components/Footer.astro @@ -20,6 +20,7 @@ const year = new Date().getFullYear(); Templates API Docs GitHub + Feedback From fc5bd12f265526f1e465d049fef8fc2aed72e758 Mon Sep 17 00:00:00 2001 From: anurag629 Date: Sat, 28 Feb 2026 11:16:43 +0530 Subject: [PATCH 3/5] fix: improve mobile UI/UX across editor, navbar, API docs, and preview pages - Redesign API docs page with mobile-first layout: div-based params instead of tables, horizontal sticky tab nav, contained code blocks - Fix hamburger menu broken after View Transitions by removing transition:persist from Header and moving mobile menu inside
- Improve editor mobile layout: single scroll column, proper touch targets, auto-switch to customize tab on template select - Add safe-area and viewport-fit handling for notched devices - Improve preview page mobile: stacked URL input, larger buttons - Adjust responsive nav-height and global spacing for small screens Made-with: Cursor --- src/components/Header.astro | 263 ++++++++++++--- src/components/editor/EditorApp.tsx | 4 + src/layouts/Layout.astro | 4 +- src/layouts/ToolLayout.astro | 9 +- src/pages/api-docs.astro | 268 ++++++++-------- src/styles/api-docs.css | 480 +++++++++++++++++----------- src/styles/editor.css | 144 ++++++++- src/styles/global.css | 3 +- src/styles/preview.css | 92 +++++- 9 files changed, 873 insertions(+), 394 deletions(-) diff --git a/src/components/Header.astro b/src/components/Header.astro index 086b61a..7ae7f71 100644 --- a/src/components/Header.astro +++ b/src/components/Header.astro @@ -36,41 +36,82 @@ const navItems = [ - -
- -
- + diff --git a/src/components/editor/EditorApp.tsx b/src/components/editor/EditorApp.tsx index e8f9035..b86b944 100644 --- a/src/components/editor/EditorApp.tsx +++ b/src/components/editor/EditorApp.tsx @@ -59,6 +59,10 @@ export function EditorApp({ initialCategory }: EditorAppProps) { const handleTemplateSelect = useCallback( (template: TemplateDefinition) => { setTemplate(template); + // On mobile, switch to Customize tab so user sees the canvas and form + if (typeof window !== 'undefined' && window.innerWidth <= 768) { + setMobileTab('customize'); + } }, [setTemplate] ); diff --git a/src/layouts/Layout.astro b/src/layouts/Layout.astro index 0cb1229..1d0ce60 100644 --- a/src/layouts/Layout.astro +++ b/src/layouts/Layout.astro @@ -31,7 +31,7 @@ const fullTitle = title === 'OGCOPS' ? title : `${title} | ${siteName}`; - + {noindex && } @@ -106,7 +106,7 @@ const fullTitle = title === 'OGCOPS' ? title : `${title} | ${siteName}`; -
+
diff --git a/src/layouts/ToolLayout.astro b/src/layouts/ToolLayout.astro index 1c21182..37acc6d 100644 --- a/src/layouts/ToolLayout.astro +++ b/src/layouts/ToolLayout.astro @@ -19,7 +19,7 @@ const fullTitle = `${title} | ${siteName}`; - + @@ -61,7 +61,14 @@ const fullTitle = `${title} | ${siteName}`; body { display: flex; flex-direction: column; + min-height: 100vh; + min-height: 100dvh; height: 100vh; + height: 100dvh; overflow: hidden; + padding-top: env(safe-area-inset-top); + padding-left: env(safe-area-inset-left); + padding-right: env(safe-area-inset-right); + padding-bottom: env(safe-area-inset-bottom); } diff --git a/src/pages/api-docs.astro b/src/pages/api-docs.astro index 9c56591..591db5b 100644 --- a/src/pages/api-docs.astro +++ b/src/pages/api-docs.astro @@ -5,24 +5,29 @@ import '@/styles/api-docs.css';
- + +
+

API Documentation

+

+ Generate OG images, check URL meta tags, and list templates with our free REST API. + No API key required. CORS-enabled for browser use. +

+
+ +