From 0af5be2fc752429fe50ce0fdaffa9b8f02f76c02 Mon Sep 17 00:00:00 2001 From: Jay Miller Date: Sat, 17 Jan 2026 13:56:19 -0500 Subject: [PATCH 1/5] Add requires-python to pyproject.toml --- .beads/.local_version | 1 + .beads/beads.base.jsonl | 115 +++++++++++++++++++++++++++++++++++ .beads/beads.base.meta.json | 1 + .beads/beads.db | Bin 0 -> 487424 bytes .beads/beads.db-shm | Bin 0 -> 32768 bytes .beads/beads.db-wal | Bin 0 -> 238992 bytes .beads/beads.left.jsonl | 115 +++++++++++++++++++++++++++++++++++ .beads/beads.left.meta.json | 1 + .beads/daemon.lock | 7 +++ .beads/daemon.pid | 1 + .beads/issues.jsonl | 116 ++++++++++++++++++++++++++++++++++++ .beads/last-touched | 1 + .beads/metadata.json | 4 ++ .beads/sync-state.json | 7 +++ .gitattributes | 3 + pyproject.toml | 1 + uv.lock | 8 +-- 17 files changed, 377 insertions(+), 4 deletions(-) create mode 100644 .beads/.local_version create mode 100644 .beads/beads.base.jsonl create mode 100644 .beads/beads.base.meta.json create mode 100644 .beads/beads.db create mode 100644 .beads/beads.db-shm create mode 100644 .beads/beads.db-wal create mode 100644 .beads/beads.left.jsonl create mode 100644 .beads/beads.left.meta.json create mode 100644 .beads/daemon.lock create mode 100644 .beads/daemon.pid create mode 100644 .beads/issues.jsonl create mode 100644 .beads/last-touched create mode 100644 .beads/metadata.json create mode 100644 .beads/sync-state.json diff --git a/.beads/.local_version b/.beads/.local_version new file mode 100644 index 00000000..30109231 --- /dev/null +++ b/.beads/.local_version @@ -0,0 +1 @@ +0.46.0 diff --git a/.beads/beads.base.jsonl b/.beads/beads.base.jsonl new file mode 100644 index 00000000..df796d94 --- /dev/null +++ b/.beads/beads.base.jsonl @@ -0,0 +1,115 @@ +{"id":"blackpythondevs.github.io-0cz","title":"Author in frontmatter should be list to simplify template and check in pre-commit (GH#707)","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:48.326927-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:48.326927-05:00"} +{"id":"blackpythondevs.github.io-0h0","title":"Ux design issue","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:29.910126-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:29.910126-05:00"} +{"id":"blackpythondevs.github.io-0hf","title":"Add GitHub link to footer","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:35.983315-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:35.983315-05:00"} +{"id":"blackpythondevs.github.io-0il","title":"update devcontainers to use standard python image (GH#687)","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:48.603979-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:48.603979-05:00"} +{"id":"blackpythondevs.github.io-13v","title":"Content Updates: Support Page and Community Info","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:30.918377-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:30.918377-05:00"} +{"id":"blackpythondevs.github.io-1og","title":"GH#810: Content Updates: Support Page and Community Info","description":"Create a page/section explaining how people can get support from the organization. Ensure Community links (Discord, LinkedIn) are properly placed in 'About Us' or the Front Page, as the specific navigation link is being removed","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:24.138082-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:24.138082-05:00"} +{"id":"blackpythondevs.github.io-1r1","title":"Update Contributions page with new steps for render engine","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:52.722325-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:52.722325-05:00"} +{"id":"blackpythondevs.github.io-1v1","title":"Fix loop names (GH#718)","description":"Should be a new issue....\r\n\r\n_Originally posted by @kjaymiller in https://github.com/BlackPythonDevs/blackpythondevs.github.io/pull/717#discussion_r2170013151_\r\n\r\n\r\nThe loop is working currently so no need to change until cleaning up and refactoring.","status":"open","priority":2,"issue_type":"bug","created_at":"2026-01-17T11:31:48.235089-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:48.235089-05:00"} +{"id":"blackpythondevs.github.io-1vj","title":"Use Playwright to Create a screenshot of the built page changes","status":"open","priority":3,"issue_type":"feature","created_at":"2026-01-17T11:21:48.900737-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:48.900737-05:00"} +{"id":"blackpythondevs.github.io-1vv","title":"Refine justfile commands to distinguish checking vs fixing","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:57.898128-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:57.898128-05:00"} +{"id":"blackpythondevs.github.io-1y1","title":"Replace 'Join LinkedIn Group' with 'Follow us on LinkedIn'","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:32.605373-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:32.605373-05:00"} +{"id":"blackpythondevs.github.io-23g","title":"Epic: Security \u0026 Maintenance","status":"open","priority":1,"issue_type":"feature","created_at":"2026-01-17T11:18:52.102444-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:18:52.102444-05:00"} +{"id":"blackpythondevs.github.io-2dl","title":"Frontend Audit Implementation","status":"open","priority":2,"issue_type":"feature","created_at":"2026-01-17T11:19:55.255487-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:19:55.255487-05:00"} +{"id":"blackpythondevs.github.io-2s9","title":"Technical Debt \u0026 Cleanup","status":"open","priority":2,"issue_type":"feature","created_at":"2026-01-17T11:20:00.260922-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:20:00.260922-05:00"} +{"id":"blackpythondevs.github.io-3go","title":"Redesign Hero Section Layout (GH#805)","description":"The hero section layout needs improvement to stop 'fighting for attention'.\n\n**Tasks:**\n- Stack image and text vertically (Image above text or vice versa).\n- Align with modern design principles to clear up visual hierarchy.","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:46.533248-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:46.533248-05:00"} +{"id":"blackpythondevs.github.io-3py","title":"update devcontainers to use standard python image","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:54.966909-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:54.966909-05:00"} +{"id":"blackpythondevs.github.io-3tf","title":"Content \u0026 Community","description":"Epic for Content \u0026 Community","status":"open","priority":2,"issue_type":"feature","created_at":"2026-01-17T11:31:45.926288-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:45.926288-05:00","dependencies":[{"issue_id":"blackpythondevs.github.io-3tf","depends_on_id":"blackpythondevs.github.io-e72","type":"blocks","created_at":"2026-01-17T11:31:46.118511-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-3tf","depends_on_id":"blackpythondevs.github.io-9xb","type":"blocks","created_at":"2026-01-17T11:31:46.209157-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-3tf","depends_on_id":"blackpythondevs.github.io-wha","type":"blocks","created_at":"2026-01-17T11:31:46.392118-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-3tf","depends_on_id":"blackpythondevs.github.io-ohs","type":"blocks","created_at":"2026-01-17T11:31:46.670949-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-3tf","depends_on_id":"blackpythondevs.github.io-aut","type":"blocks","created_at":"2026-01-17T11:31:46.854922-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-3tf","depends_on_id":"blackpythondevs.github.io-e7h","type":"blocks","created_at":"2026-01-17T11:31:46.945839-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-3tf","depends_on_id":"blackpythondevs.github.io-bwa","type":"blocks","created_at":"2026-01-17T11:31:47.432491-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-3tf","depends_on_id":"blackpythondevs.github.io-pjb","type":"blocks","created_at":"2026-01-17T11:31:47.526385-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-3tf","depends_on_id":"blackpythondevs.github.io-l0s","type":"blocks","created_at":"2026-01-17T11:31:47.621654-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-3tf","depends_on_id":"blackpythondevs.github.io-w8m","type":"blocks","created_at":"2026-01-17T11:31:48.552072-05:00","created_by":"jay.miller"}]} +{"id":"blackpythondevs.github.io-3wi","title":"Epic: Testing \u0026 Quality Assurance","status":"open","priority":1,"issue_type":"feature","created_at":"2026-01-17T11:18:50.93252-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:18:50.93252-05:00"} +{"id":"blackpythondevs.github.io-435","title":"External Integrations","status":"open","priority":2,"issue_type":"feature","created_at":"2026-01-17T11:19:59.514968-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:19:59.514968-05:00"} +{"id":"blackpythondevs.github.io-43q","title":"DX Audit Report","status":"open","priority":1,"issue_type":"feature","created_at":"2026-01-17T11:21:50.820935-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:50.820935-05:00"} +{"id":"blackpythondevs.github.io-464","title":"Update Events pages to show that events have clearly ended","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:22:02.314075-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:22:02.314075-05:00"} +{"id":"blackpythondevs.github.io-4ck","title":"Add geojson to site in static folder path","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:22:03.960133-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:22:03.960133-05:00"} +{"id":"blackpythondevs.github.io-52q","title":"GH#816: Update to new version of frontmatter-check","description":"Local script scripts/check_author_list.py and pre-commit hook were added as temporary measure to enforce author frontmatter field is a list. Wait for frontmatter-check to release version supporting author list validation, update .pre-commit-config.yaml, configure validation, remove local script and hook","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:29.551509-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:29.551509-05:00"} +{"id":"blackpythondevs.github.io-53w","title":"Epic: Navigation \u0026 UX Improvements","status":"open","priority":1,"issue_type":"feature","created_at":"2026-01-17T11:18:48.877298-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:18:48.877298-05:00"} +{"id":"blackpythondevs.github.io-546","title":"Add a section on the Conferences page to consider being sponsored","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:37.920593-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:37.920593-05:00"} +{"id":"blackpythondevs.github.io-59o","title":"DX Audit Report (GH#787)","description":"## Developer Experience (DX) Audit Report\n\nThis report summarizes the findings of a Developer Experience audit performed on the repository.\n\n### ✅ Strengths\n\n1. **Documentation**: \n * `README.md` provides a clear mission statement and easy entry points (Codespaces, Gitpod).\n * `CONTRIBUTING.md` is comprehensive, featuring diagrams of website and development structures, and clear steps for contribution.\n * `MAINTAINERS.md` effectively guides repository maintainers.\n2. **Tooling**:\n * **Modern Python Tooling**: Usage of `uv` for fast dependency management.\n * **Task Runner**: `justfile` simplifies common commands (`install`, `serve`, `check`).\n * **Linting \u0026 Formatting**: Comprehensive setup with `ruff`, `black`, `prettier`, and `eslint` via `pre-commit`.\n3. **CI/CD**:\n * Active workflows for checks, accessibility testing (`playwright`), and security (`scorecard`).\n\n### ⚠️ Areas for Improvement\n\n1. **Issue Templates**:\n * The `.github/ISSUE_TEMPLATE` directory contains `add_event.yml` but lacks standard **Bug Report** or **Feature Request** templates. This can lead to unstructured issue submissions.\n * *Recommendation*: Add `bug_report.md` and `feature_request.md` templates.\n\n2. **Static Type Checking**:\n * There is no evidence of strict static type checking (e.g., `mypy` or `pyright`) in `pyproject.toml` or `justfile`.\n * *Recommendation*: Integrate `mypy` into the dev dependencies and the `just check` command to catch type errors early.\n\n3. **Justfile `check` Command**:\n * The `check` command runs `format`, which usually *applies* formatting. In CI or check contexts, it is often better to verify formatting (e.g., `ruff format --check`) rather than modifying files.\n * *Recommendation*: Update `justfile` to have separate `fix` (apply format) and `lint` (check format) commands, or ensure `check` uses non-mutating verification.\n\n4. **Local Dev Setup**:\n * While `uv` is great, ensuring `uv` itself is installed is the first step. Adding a small \"One-line setup\" or check script could further lower the barrier.\n\n### 📋 Action Plan\n\n- [ ] Create `bug_report.md` and `feature_request.md` in `.github/ISSUE_TEMPLATE`.\n- [ ] Add `mypy` to optional dependencies and configure it.\n- [ ] Refine `justfile` commands to distinguish between checking and fixing code.\n","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:47.09959-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:47.09959-05:00","labels":["enhancement","report"]} +{"id":"blackpythondevs.github.io-5ks","title":"Add test that ensures that all pages are accessible to the website","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:50.014932-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:50.014932-05:00"} +{"id":"blackpythondevs.github.io-5sy","title":"Render Engine Migration","status":"open","priority":2,"issue_type":"feature","created_at":"2026-01-17T11:19:57.130896-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:19:57.130896-05:00"} +{"id":"blackpythondevs.github.io-5wl","title":"Standardize CSS Breakpoints","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:39.766607-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:39.766607-05:00"} +{"id":"blackpythondevs.github.io-5xq","title":"GH#805: Redesign Hero Section Layout","description":"Hero section layout needs improvement to stop 'fighting for attention'. Stack image and text vertically (Image above text or vice versa). Align with modern design principles to clear up visual hierarchy","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:19:15.271518-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:19:15.271518-05:00"} +{"id":"blackpythondevs.github.io-64z","title":"Refactor Navigation Menu (GH#806)","description":"Based on recent feedback, the navigation menu is too busy and needs simplification.\n\n**Tasks:**\n- [ ] Rename 'Blog' to 'News'\n- [ ] Remove 'Home' link (the site wordmark/logo already links home)\n- [ ] Combine 'BPD Events' and 'Sponsored Events' into a single 'Events' parent link (as a dropdown or consolidated page)\n- [ ] Combine 'Discounts' and 'Support Us' into a single section (e.g., 'Donate' or 'Support')\n- [ ] Evaluate removing the 'Community' link and merging its content into 'About Us'\n\n**Goal:** Reduce clutter and group related links logically.","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:46.442734-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:46.442734-05:00"} +{"id":"blackpythondevs.github.io-6by","title":"Redesign Hero Section (GH#808)","description":"The current hero section lacks a clear visual hierarchy and 'fights for attention'.\n\n**Suggestions:**\n- [ ] Adjust layout to stack image and text (image above text or vice-versa) to prioritize user attention.\n- [ ] Ensure the design reflects BPD's core values:\n 1. Build/Support Black Leadership in Python\n 2. Support the Communities that Build that Black Leadership\n 3. Raise Money to do 1 \u0026 2","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:46.259469-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:46.259469-05:00"} +{"id":"blackpythondevs.github.io-6gw","title":"Test suite failures after Render Engine migration","status":"open","priority":1,"issue_type":"bug","created_at":"2026-01-17T11:21:45.945536-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:45.945536-05:00"} +{"id":"blackpythondevs.github.io-6wn","title":"Create 'How to Get Support' Page","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:31.74236-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:31.74236-05:00"} +{"id":"blackpythondevs.github.io-77c","title":"Redesign Hero Section","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:26.96898-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:26.96898-05:00"} +{"id":"blackpythondevs.github.io-7qh","title":"Infrastructure \u0026 Tooling","description":"Epic for Infrastructure \u0026 Tooling","status":"open","priority":2,"issue_type":"feature","created_at":"2026-01-17T11:31:45.875526-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:45.875526-05:00","dependencies":[{"issue_id":"blackpythondevs.github.io-7qh","depends_on_id":"blackpythondevs.github.io-9oc","type":"blocks","created_at":"2026-01-17T11:31:46.025957-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-7qh","depends_on_id":"blackpythondevs.github.io-59o","type":"blocks","created_at":"2026-01-17T11:31:47.139862-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-7qh","depends_on_id":"blackpythondevs.github.io-p8s","type":"blocks","created_at":"2026-01-17T11:31:47.340519-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-7qh","depends_on_id":"blackpythondevs.github.io-f3a","type":"blocks","created_at":"2026-01-17T11:31:47.714021-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-7qh","depends_on_id":"blackpythondevs.github.io-xoj","type":"blocks","created_at":"2026-01-17T11:31:47.995587-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-7qh","depends_on_id":"blackpythondevs.github.io-wwo","type":"blocks","created_at":"2026-01-17T11:31:48.092206-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-7qh","depends_on_id":"blackpythondevs.github.io-eoe","type":"blocks","created_at":"2026-01-17T11:31:48.183908-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-7qh","depends_on_id":"blackpythondevs.github.io-1v1","type":"blocks","created_at":"2026-01-17T11:31:48.274636-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-7qh","depends_on_id":"blackpythondevs.github.io-0cz","type":"blocks","created_at":"2026-01-17T11:31:48.369609-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-7qh","depends_on_id":"blackpythondevs.github.io-82s","type":"blocks","created_at":"2026-01-17T11:31:48.46141-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-7qh","depends_on_id":"blackpythondevs.github.io-0il","type":"blocks","created_at":"2026-01-17T11:31:48.643719-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-7qh","depends_on_id":"blackpythondevs.github.io-y8h","type":"blocks","created_at":"2026-01-17T11:31:48.735293-05:00","created_by":"jay.miller"}]} +{"id":"blackpythondevs.github.io-7ya","title":"GH#567: Add blog posts to snapshot tests","description":"Add blog posts to snapshot tests to check for issues. We have way to iterate through blog, so generate snapshots of blog posts as well. This would help check for issues in blog posts. Labels: testing","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:51.314912-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:51.314912-05:00"} +{"id":"blackpythondevs.github.io-82s","title":"Fix security workflow (GH#689)","description":"Currently the security scan has not worked since Jan 2025","status":"open","priority":2,"issue_type":"bug","created_at":"2026-01-17T11:31:48.421345-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:48.421345-05:00"} +{"id":"blackpythondevs.github.io-836","title":"GH#784: Test suite failures from Render Engine migration","description":"Test failures from Jekyll to Render Engine migration: Blog post URL generation tests assume filename-based URLs while Render Engine generates title-based slugs (29 failing tests), Missing language attribute (lang='' instead of lang='en'), Need to verify accessibility issues beyond test assumptions","status":"open","priority":1,"issue_type":"bug","created_at":"2026-01-17T11:21:47.647342-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:47.647342-05:00"} +{"id":"blackpythondevs.github.io-86c","title":"Fix broken images (GH#726)","description":"some images are broken on our blog page. Investigate and help fix them","status":"open","priority":2,"issue_type":"bug","created_at":"2026-01-17T11:31:47.863695-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:47.863695-05:00","labels":["good first issue","hacktoberfest-accepted"]} +{"id":"blackpythondevs.github.io-917","title":"Add Code of Conduct link to footer","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:35.250375-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:35.250375-05:00"} +{"id":"blackpythondevs.github.io-92p","title":"Remove Typefully from sponsors section (GH#799)","description":"Remove the Typefully logo from '_layouts/_includes/join_us.html'.","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:46.72201-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:46.72201-05:00"} +{"id":"blackpythondevs.github.io-98y","title":"Add mypy to dev dependencies and configure","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:56.841239-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:56.841239-05:00"} +{"id":"blackpythondevs.github.io-9ba","title":"GH#686: Update Contributions page for Render Engine","description":"Update Contributions page with new steps for render engine migration","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:30.976817-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:30.976817-05:00"} +{"id":"blackpythondevs.github.io-9im","title":"Audit and Remove jQuery Dependencies","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:40.436072-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:40.436072-05:00"} +{"id":"blackpythondevs.github.io-9oc","title":"Update to new version of frontmatter-check for author list validation (GH#816)","description":"## Summary\nThe local script `scripts/check_author_list.py` and its corresponding pre-commit hook in `.pre-commit-config.yaml` were added as a temporary measure to enforce that the `author` frontmatter field is a list (see PR #815).\n\nThis functionality is expected to be added to the upstream `frontmatter-check` tool.\n\n## Acceptance Criteria\n- [ ] Wait for `frontmatter-check` to release a version supporting author list validation.\n- [ ] Update `.pre-commit-config.yaml` to use the new version of `frontmatter-check`.\n- [ ] Configure `frontmatter-check` to validate the `author` field.\n- [ ] Remove `scripts/check_author_list.py` and the local hook configuration.","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:45.979428-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:45.979428-05:00"} +{"id":"blackpythondevs.github.io-9ph","title":"GH#809: Create 'How to Get Support' Page","description":"Create a dedicated page where people can learn how to get support from the organization. Currently missing a clear pathway for users to understand how to access BPD resources/support","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:25.931163-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:25.931163-05:00"} +{"id":"blackpythondevs.github.io-9pl","title":"Content Updates","status":"open","priority":2,"issue_type":"feature","created_at":"2026-01-17T11:19:54.554803-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:19:54.554803-05:00"} +{"id":"blackpythondevs.github.io-9xb","title":"Create 'How to Get Support' Page (GH#809)","description":"Create a dedicated page where people can learn how to get support from the organization.\n\n**Context:**\nCurrently missing a clear pathway for users to understand how to access BPD resources/support.","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:46.169697-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:46.169697-05:00"} +{"id":"blackpythondevs.github.io-a95","title":"GH#766: Add country flag to leaders bio","description":"Add the country flag of the leadership team to the bio in the about page https://blackpythondevs.com/about.html. Labels: hold","status":"open","priority":4,"issue_type":"task","created_at":"2026-01-17T11:21:05.049051-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:05.049051-05:00"} +{"id":"blackpythondevs.github.io-aut","title":"Enhancement: Integrate ClickUp API for Dynamic Sponsored Event Stats (GH#798)","description":"## Summary\nTo provide up-to-date statistics on the homepage, we want to fetch the count of \"Sponsored Events\" directly from our ClickUp workspace instead of relying solely on the static `_data/sponsored_events.json` file.\n\n## Proposed Changes\n1. **New Module**: Create `clickup_client.py` to handle interactions with the ClickUp API.\n - Function: `fetch_clickup_stats(token, list_id)`\n - Logic: Fetch tasks from the specified list (including closed tasks) and return the count.\n\n2. **App Update**: Modify `app.py` to integrate the client.\n - Check for `CLICKUP_API_TOKEN` and `CLICKUP_LIST_ID` environment variables.\n - If present, use `clickup_client` to fetch the count.\n - If missing or if the API call fails, fall back to the existing local calculation method.\n\n3. **Refactor**: Improve the existing local counting logic using `itertools` for cleaner code (flattening the nested dictionary structure).\n\n## Environment Variables\n- `CLICKUP_API_TOKEN`: Personal Access Token or OAuth token.\n- `CLICKUP_LIST_ID`: The ID of the ClickUp List containing the events.\n","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:46.815072-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:46.815072-05:00"} +{"id":"blackpythondevs.github.io-bj3","title":"GH#750: Fix playwright tests","description":"In migration to render-engine, Playwright broke. Many minor actual issues can be fixed but also issues with live server starting and running to test against","status":"open","priority":1,"issue_type":"bug","created_at":"2026-01-17T11:21:44.55177-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:44.55177-05:00"} +{"id":"blackpythondevs.github.io-bq8","title":"Add link for sponsorship inquiries","status":"open","priority":3,"issue_type":"task","created_at":"2026-01-17T11:21:33.500243-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:33.500243-05:00"} +{"id":"blackpythondevs.github.io-bvq","title":"GH#729: UX Design - Events Navigation","description":"Make events the parent link with sponsored and bpd as dropdown, or rename bpd events to 'in house events'. Labels: good-first-issue, hacktoberfest-accepted, design","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:19:09.807433-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:19:09.807433-05:00"} +{"id":"blackpythondevs.github.io-bvx","title":"GH#808: Redesign Hero Section","description":"The current hero section lacks clear visual hierarchy and 'fights for attention'. Adjust layout to stack image and text (image above/below text) to prioritize user attention. Ensure design reflects BPD core values: 1) Build/Support Black Leadership in Python, 2) Support Communities that Build Black Leadership, 3) Raise Money to do 1 \u0026 2","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:19:13.492723-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:19:13.492723-05:00"} +{"id":"blackpythondevs.github.io-bwa","title":"Add Code of Conduct link to footer (GH#778)","description":"Add a link to the Code of Conduct page in the Quick Links section of the footer. This improves discoverability of the community guidelines and makes it easier for visitors to find our Code of Conduct.","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:47.391432-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:47.391432-05:00"} +{"id":"blackpythondevs.github.io-coi","title":"Make local development significantly easier","status":"open","priority":1,"issue_type":"task","created_at":"2026-01-17T11:21:51.662857-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:51.662857-05:00"} +{"id":"blackpythondevs.github.io-czw","title":"GH#753: Add test that ensures all pages are accessible","description":"Pages in /pages have no link to them currently. Some pages need to be visible while others should be removed. Add test to ensure all pages are accessible to the website","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:53.608987-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:53.608987-05:00"} +{"id":"blackpythondevs.github.io-dc3","title":"GH#786: Add GitHub link to footer","description":"Add a link to the GitHub repository in the footer using Font Awesome brand icon (fa-fa brand). Location: _layouts/_includes/footer.html. Labels: enhancement, design","status":"open","priority":3,"issue_type":"task","created_at":"2026-01-17T11:21:03.588753-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:03.588753-05:00"} +{"id":"blackpythondevs.github.io-dcb","title":"GH#720: Remove lang reference","description":"Multiple languages were removed, this should be removed. The condition comparing 'lang' to itself is always true; consider comparing loop variable to current page language","status":"open","priority":3,"issue_type":"task","created_at":"2026-01-17T11:21:08.821127-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:08.821127-05:00"} +{"id":"blackpythondevs.github.io-e4z","title":"Fix playwright tests","status":"open","priority":1,"issue_type":"bug","created_at":"2026-01-17T11:21:42.783492-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:42.783492-05:00"} +{"id":"blackpythondevs.github.io-e72","title":"Content Updates: Support Page and Community Info (GH#810)","description":"**Tasks:**\n- Create a page/section explaining how people can get support from the organization.\n- Ensure Community links (Discord, LinkedIn) are properly placed in 'About Us' or the Front Page, as the specific navigation link is being removed.","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:46.078002-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:46.078002-05:00"} +{"id":"blackpythondevs.github.io-e7h","title":"Replace 'Join LinkedIn Group' with 'Follow us on LinkedIn' (GH#797)","description":"## Summary\nUpdate all references from 'Join LinkedIn Group' to 'Follow us on LinkedIn' and point to the company page instead of the group.\n\n## Current State\nCurrently, the site links to the LinkedIn group: https://www.linkedin.com/groups/14336241/\n\n## Desired State\nUpdate to point to the company page: https://www.linkedin.com/company/black-python-devs\n\n## Files to Update\nThe following files contain references that need to be updated:\n\n1. `_layouts/_includes/join_us.html:9-10` - Button link and text\n2. `pages/community.md:33` - LinkedIn group reference\n3. `_posts/2024-01-12-black-python-devs-is-sponsoring-pytexas.md:28` - Post reference\n\n## Acceptance Criteria\n- [ ] All LinkedIn group URLs updated to company page URL\n- [ ] All \"Join our LinkedIn Group\" text updated to \"Follow us on LinkedIn\"\n- [ ] Links tested and working","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:46.90728-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:46.90728-05:00"} +{"id":"blackpythondevs.github.io-e8m","title":"GH#721: Add integrity check or download assets locally","description":"Either add integrity check or download and call from local source for external assets","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:06.600283-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:06.600283-05:00"} +{"id":"blackpythondevs.github.io-eae","title":"create blog collection for posts","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:22:00.604592-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:22:00.604592-05:00"} +{"id":"blackpythondevs.github.io-eoe","title":"Update unless tag (GH#719)","description":"Currently not breaking anything (maybe a11y)\r\n\r\nThe condition in the 'unless' tag is malformed; it likely should be written as {% unless entry.platform == \"rss\" %}.\r\n```suggestion\r\n \u003ca {% unless entry.platform == \"rss\" %}rel=\"me\" {% endunless %}href=\"{{ entry.user_url }}\" target=\"_blank\" title=\"{{ entry.title | default: entry.platform }}\"\u003e\r\n```\r\n\r\n_Originally posted by @Copilot in https://github.com/BlackPythonDevs/blackpythondevs.github.io/pull/717#discussion_r2169998093_\r\n ","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:48.143782-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:48.143782-05:00"} +{"id":"blackpythondevs.github.io-f3a","title":"Fix playwright tests (GH#750)","description":"In our migration to render-engine - Playwright broke. \n\nThere were a lot of minor actual issues that can be fixed but also we've had issues with the live server starting and running so that we can actually test against the issues.","status":"open","priority":2,"issue_type":"bug","created_at":"2026-01-17T11:31:47.673209-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:47.673209-05:00"} +{"id":"blackpythondevs.github.io-ftk","title":"GH#685: Update docs from Jekyll to Render Engine","description":"Update docs from saying built with Jekyll to built with Render Engine. Labels: good-first-issue","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:32.420814-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:32.420814-05:00"} +{"id":"blackpythondevs.github.io-gdr","title":"Navigation \u0026 UX Redesign","status":"open","priority":2,"issue_type":"feature","created_at":"2026-01-17T11:19:53.903982-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:19:53.903982-05:00"} +{"id":"blackpythondevs.github.io-gjb","title":"Refactor Navigation Menu","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:29.273788-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:29.273788-05:00"} +{"id":"blackpythondevs.github.io-hd8","title":"create events collection for workshops leadership summit","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:22:01.237137-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:22:01.237137-05:00"} +{"id":"blackpythondevs.github.io-hgz","title":"GH#788: Website Frontend Audit Report","description":"Frontend audit findings: Standardize breakpoints (600px, 768px, 800px, 1080px inconsistent), Audit jQuery usage and refactor to Vanilla JS, Refactor CSS to remove !important tags, Investigate merging/minifying custom CSS assets. Labels: report, design, a11y, performance","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:01.303501-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:01.303501-05:00"} +{"id":"blackpythondevs.github.io-hpo","title":"GH#719: Update unless tag","description":"Currently not breaking anything (maybe a11y). The condition in the 'unless' tag is malformed; should be {% unless entry.platform == 'rss' %}","status":"open","priority":3,"issue_type":"task","created_at":"2026-01-17T11:21:10.950843-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:10.950843-05:00"} +{"id":"blackpythondevs.github.io-ibm","title":"Asset Management","status":"open","priority":2,"issue_type":"feature","created_at":"2026-01-17T11:19:58.324475-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:19:58.324475-05:00"} +{"id":"blackpythondevs.github.io-ihy","title":"Testing Infrastructure","status":"open","priority":2,"issue_type":"feature","created_at":"2026-01-17T11:19:55.831842-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:19:55.831842-05:00"} +{"id":"blackpythondevs.github.io-k4b","title":"Redesign Hero Section Layout","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:27.711499-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:27.711499-05:00"} +{"id":"blackpythondevs.github.io-k8e","title":"Website Frontend Audit Report (GH#788)","description":"## Website Frontend Audit Report\n\nThis report summarizes findings regarding the frontend architecture, design implementation, and user experience of the website.\n\n### ✅ Strengths\n\n1. **Accessibility (A11y)**:\n * Strong use of semantic HTML (`\u003cheader\u003e`, `\u003cmain\u003e`, `\u003cfooter\u003e`, `\u003cnav\u003e`).\n * Proper use of ARIA labels and roles (`role=\"banner\"`, `aria-label=\"Main navigation\"`).\n * Implementation of `.screen-reader-text` class for accessible hidden content.\n * `lang` attribute dynamically set on `\u003chtml\u003e` tag.\n2. **Framework Choice**:\n * Use of **Pico CSS** provides a lightweight, semantic-first foundation.\n3. **Responsive Design**:\n * Mobile navigation menu implementation exists.\n * Footer grid adapts from 3 columns to 1 column on smaller screens.\n\n### ⚠️ Areas for Improvement\n\n1. **CSS Architecture \u0026 Maintainability**:\n * **Specificity Wars**: usage of `!important` in `bpd.css` (e.g., `ul li`, `a[role=\"button\"]`) suggests difficulty overriding framework styles. This makes future maintenance harder.\n * **Inconsistent Breakpoints**: Media queries use a mix of values: `600px`, `768px`, `800px`, `1080px`. This can lead to unpredictable layout behavior on intermediate devices.\n * **Tight Coupling**: Specific selectors like `article.pico-background-pumpkin-650` couple the custom CSS tightly to specific content choices.\n\n2. **Performance**:\n * **jQuery Dependency**: `jquery.min.js` is loaded. If this is only used for the mobile menu toggle or simple interactions, it should be replaced with vanilla JavaScript to reduce page load weight.\n * **CSS Requests**: Multiple CSS files are loaded (`pico.min.css`, `pico.colors.min.css`, `bpd.css`).\n * **Unminified Assets**: `bpd.css` is served unminified.\n\n3. **Design System**:\n * The \"Language Switcher\" implementation in the header is functional but could be styled to match the native OS or Pico theme better.\n\n### 📋 Action Plan\n\n- [ ] **Standardize Breakpoints**: Define a clear set of breakpoints (e.g., Mobile, Tablet, Desktop) and refactor CSS to use them consistently.\n- [ ] **Audit jQuery Usage**: Identify where jQuery is used and refactor to Vanilla JS if possible.\n- [ ] **Refactor CSS**: Remove `!important` tags by increasing specificity or adjusting load order/Pico configuration.\n- [ ] **Performance**: Investigate merging or minifying custom CSS assets during the build process.\n","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:46.999528-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:46.999528-05:00","labels":["a11y","design","performance","report"]} +{"id":"blackpythondevs.github.io-l0s","title":"Add test that ensures that all pages are accessible to the website\n (GH#753)","description":"I found pages in the /pages have no link to them currently. Some of those pages need to be visible while others should be removed.\n","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:47.578839-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:47.578839-05:00"} +{"id":"blackpythondevs.github.io-l2q","title":"Website Frontend Audit Report","status":"open","priority":1,"issue_type":"feature","created_at":"2026-01-17T11:21:38.738582-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:38.738582-05:00"} +{"id":"blackpythondevs.github.io-lb5","title":"Refactor CSS to Remove !important Tags","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:41.333146-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:41.333146-05:00"} +{"id":"blackpythondevs.github.io-lg6","title":"Implement CSS Minification in Build Process","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:41.980019-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:41.980019-05:00"} +{"id":"blackpythondevs.github.io-lv5","title":"Epic: Feature Enhancements","status":"open","priority":2,"issue_type":"feature","created_at":"2026-01-17T11:18:52.742719-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:18:52.742719-05:00"} +{"id":"blackpythondevs.github.io-mat","title":"Create bug_report.md and feature_request.md templates","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:56.011521-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:56.011521-05:00"} +{"id":"blackpythondevs.github.io-mdi","title":"Create Location Snippet","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:22:03.034977-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:22:03.034977-05:00"} +{"id":"blackpythondevs.github.io-nna","title":"Epic: Infrastructure \u0026 Tooling","status":"open","priority":2,"issue_type":"feature","created_at":"2026-01-17T11:18:51.501922-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:18:51.501922-05:00"} +{"id":"blackpythondevs.github.io-npp","title":"GH#344: Add sponsorship section to Conferences page","description":"Add section on Conferences page below conference list: Link to prospectus (in development), Quick outline of sponsorship types (Community Sponsor - Tickets for Local Black Python Developers, Commitment Sponsor - Multi-year commitment). Labels: content","status":"open","priority":3,"issue_type":"task","created_at":"2026-01-17T11:21:35.235007-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:35.235007-05:00"} +{"id":"blackpythondevs.github.io-oag","title":"Fix failing accessibility test","status":"open","priority":2,"issue_type":"bug","created_at":"2026-01-17T11:21:46.76599-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:46.76599-05:00"} +{"id":"blackpythondevs.github.io-ohs","title":"Add link for sponsorship inquiries (GH#800)","description":"Add a small link in the 'Corporate Sponsors' section of '_layouts/_includes/join_us.html' for visitors to ask about sponsorship opportunities.","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:46.630606-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:46.630606-05:00"} +{"id":"blackpythondevs.github.io-p2y","title":"Migrate Site to Render Engine","status":"open","priority":0,"issue_type":"feature","created_at":"2026-01-17T11:21:58.711698-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:58.711698-05:00"} +{"id":"blackpythondevs.github.io-p8s","title":"I reran the test suite with verbose logging to investigate the failures. Most of the failures are test-related issues introduced during the migration from Jekyll to Render Engine . (GH#784)","description":"I reran the test suite with verbose logging to investigate the failures. Most of the failures are test-related issues introduced during the migration from Jekyll to Render Engine .\r\n\r\nTest fixed:\r\n\r\n- Updated the email link selector from email to contact@blackpythondevs.com\r\n- Fixed the blog description test to match the actual HTML structure (article elements instead of p.post-description\r\n- Corrected title format expectations to match actual output ('Page | Black Python Devs' instead of 'Black Python Devs | Page')\r\n\r\nRemaining issues:\r\n\r\n- Blog post URL generation tests still assume filename-based URLs (e.g. /blog/2024-05-25-filename.html), while the Render Engine generates title-based slugs (e.g. /blog/title-based-slug.html) -\u003e 29 failing tests\r\n- Missing language attribute: pages currently render lang=\"\" instead of lang=\"en\"\r\n- I still need to verify whether there are any accessibility issues beyond test assumptions\r\n\r\nLet me know how you'd like to proceed on the remaining items.\r\n\r\n_Originally posted by @danielcristho in https://github.com/BlackPythonDevs/blackpythondevs.github.io/issues/782#issuecomment-3707405095_\r\n ","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:47.298586-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:47.298586-05:00"} +{"id":"blackpythondevs.github.io-pjb","title":"Add country flag to leaders bio (GH#766)","description":"Add the country flag of the leadership team to the bio in the about page https://blackpythondevs.com/about.html","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:47.484004-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:47.484004-05:00","labels":["hold"]} +{"id":"blackpythondevs.github.io-pv1","title":"Add blog posts to snapshot tests","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:47.699692-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:47.699692-05:00"} +{"id":"blackpythondevs.github.io-q1b","title":"Simplify and Refactor Navigation Menu","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:28.441246-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:28.441246-05:00"} +{"id":"blackpythondevs.github.io-qfo","title":"Remove Typefully from sponsors section","status":"open","priority":3,"issue_type":"task","created_at":"2026-01-17T11:21:34.520723-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:34.520723-05:00"} +{"id":"blackpythondevs.github.io-qqw","title":"Add GitHub link to footer (GH#786)","description":"Add a link to the GitHub repository in the footer. \n\nThe implementation should use a Font Awesome brand icon (fa-fa brand) as requested.\n\nCurrent footer location: `_layouts/_includes/footer.html`\n","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:47.196218-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:47.196218-05:00","labels":["design","enhancement"]} +{"id":"blackpythondevs.github.io-r2r","title":"Epic: Frontend Architecture \u0026 Design System","status":"open","priority":1,"issue_type":"feature","created_at":"2026-01-17T11:18:49.632363-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:18:49.632363-05:00"} +{"id":"blackpythondevs.github.io-r6k","title":"GH#654: Fix failing accessibility test","description":"Fix the failing accessibility test on PR #651","status":"open","priority":2,"issue_type":"bug","created_at":"2026-01-17T11:21:48.899382-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:48.899382-05:00"} +{"id":"blackpythondevs.github.io-snp","title":"GH#806: Refactor Navigation Menu","description":"Based on recent feedback, the navigation menu is too busy and needs simplification. Tasks: Rename 'Blog' to 'News', Remove 'Home' link (wordmark links home), Combine 'BPD Events' and 'Sponsored Events' into single 'Events' parent, Combine 'Discounts' and 'Support Us', Evaluate removing 'Community' link and merging into 'About Us'","status":"open","priority":1,"issue_type":"task","created_at":"2026-01-17T11:19:04.869855-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:19:04.869855-05:00"} +{"id":"blackpythondevs.github.io-ted","title":"Events \u0026 Collections","status":"open","priority":2,"issue_type":"feature","created_at":"2026-01-17T11:19:58.899992-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:19:58.899992-05:00"} +{"id":"blackpythondevs.github.io-tzb","title":"Developer Experience Improvements","status":"open","priority":2,"issue_type":"feature","created_at":"2026-01-17T11:19:56.480945-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:19:56.480945-05:00"} +{"id":"blackpythondevs.github.io-u7a","title":"GH#718: Fix loop names","description":"Loop is working currently so no need to change until cleaning up and refactoring","status":"open","priority":3,"issue_type":"task","created_at":"2026-01-17T11:21:12.238767-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:12.238767-05:00"} +{"id":"blackpythondevs.github.io-u9t","title":"Site Redesign \u0026 UX Improvements","description":"Epic for Site Redesign \u0026 UX Improvements","status":"open","priority":2,"issue_type":"feature","created_at":"2026-01-17T11:31:45.82361-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:45.82361-05:00","dependencies":[{"issue_id":"blackpythondevs.github.io-u9t","depends_on_id":"blackpythondevs.github.io-6by","type":"blocks","created_at":"2026-01-17T11:31:46.30068-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-u9t","depends_on_id":"blackpythondevs.github.io-64z","type":"blocks","created_at":"2026-01-17T11:31:46.482656-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-u9t","depends_on_id":"blackpythondevs.github.io-3go","type":"blocks","created_at":"2026-01-17T11:31:46.577497-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-u9t","depends_on_id":"blackpythondevs.github.io-92p","type":"blocks","created_at":"2026-01-17T11:31:46.763393-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-u9t","depends_on_id":"blackpythondevs.github.io-k8e","type":"blocks","created_at":"2026-01-17T11:31:47.04354-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-u9t","depends_on_id":"blackpythondevs.github.io-qqw","type":"blocks","created_at":"2026-01-17T11:31:47.244528-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-u9t","depends_on_id":"blackpythondevs.github.io-w85","type":"blocks","created_at":"2026-01-17T11:31:47.809944-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-u9t","depends_on_id":"blackpythondevs.github.io-86c","type":"blocks","created_at":"2026-01-17T11:31:47.903789-05:00","created_by":"jay.miller"}]} +{"id":"blackpythondevs.github.io-uc6","title":"create settings file","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:59.471319-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:59.471319-05:00"} +{"id":"blackpythondevs.github.io-w85","title":"Ux design issue (GH#729)","description":"Hey @kjaymiller why don't we have events as the parent link while sponsored and bpd become a drop down and/or rename bpd events to \"in house events\"\n\u003cimg width=\"350\" height=\"140\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/084bff89-a774-4d00-8206-990e61343fe7\" /\u003e","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:47.766532-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:47.766532-05:00","labels":["design","good first issue","hacktoberfest-accepted"]} +{"id":"blackpythondevs.github.io-w8m","title":"Add all contributors (GH#688)","description":"## Description\nWe should implement the [all-contributors](https://allcontributors.org/) specification to recognize all people who contribute to our project, not just code contributors. This will help us acknowledge various types of contributions including documentation, design, testing, and more.\n\n## Motivation\n- Properly recognize all contributors regardless of contribution type\n- Create a more inclusive environment that values all forms of contribution\n- Provide clear documentation of who has helped with the project and how\n- Encourage more diverse contributions by showing we value all types of help\n\n## Implementation Plan\n- [ ] Initialize the specification: `npx all-contributors init`\n- [ ] Add existing contributors using the CLI: `npx all-contributors add \u003cusername\u003e \u003ccontribution-type\u003e`\n- [ ] Set up a .all-contributorsrc configuration file\n- [ ] Add the contributors table to our README.md\n- [ ] Document the process for adding new contributors in CONTRIBUTING.md\n\n## Additional Details\n- Contribution types to recognize: code, doc, design, bug, test, ideas, review, talk, tutorial, etc.\n- CLI will maintain both .all-contributorsrc and README.md files automatically\n- We can configure the bot to automatically suggest adding new contributors\n\n## Questions\n- Should we use the all-contributors bot for automated PRs?\n- What emoji/acknowledgment style should we use for the contributors table?\n- Should we include the contributors table at the top or bottom of the README?\n\n## Resources\n- [all-contributors documentation](https://allcontributors.org/docs/en/overview)\n- [Example repositories using all-contributors](https://github.com/all-contributors/all-contributors/blob/master/README.md#who-uses-it)","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:48.512673-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:48.512673-05:00","labels":["good first issue"]} +{"id":"blackpythondevs.github.io-w9s","title":"Security \u0026 CI/CD","status":"open","priority":2,"issue_type":"feature","created_at":"2026-01-17T11:19:57.787254-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:19:57.787254-05:00"} +{"id":"blackpythondevs.github.io-wha","title":"Simplify and Refactor Navigation Menu (GH#807)","description":"Reduce clutter in the top navigation bar.\n\n**Tasks:**\n- Remove 'Home' link (Wordmark serves this purpose).\n- Rename 'Blog' to 'News'.\n- Combine 'BPD Events' and 'Sponsored Events' into a single 'Events' parent or page.\n- Remove 'Community' link (move content to Home/About Us).\n- Combine 'Discounts' and 'Support Us' sections.","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:46.352616-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:46.352616-05:00"} +{"id":"blackpythondevs.github.io-wwo","title":"[Remove] lang reference (GH#720)","description":"Multiple languages were removed... this should be removed.\r\n\r\nThe condition comparing 'lang' to itself is always true; consider comparing the loop variable to the current page language (e.g. {% if page.lang == lang %}).\r\n\r\n_Originally posted by @Copilot in https://github.com/BlackPythonDevs/blackpythondevs.github.io/pull/717#discussion_r2169998101_\r\n ","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:48.048681-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:48.048681-05:00"} +{"id":"blackpythondevs.github.io-xiq","title":"Update docs from saying built with Jekyll to built with Render Engine","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:53.899863-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:53.899863-05:00"} +{"id":"blackpythondevs.github.io-xoj","title":"either add integrity check or download and call from local source (GH#721)","description":"either add integrity check or download and call from local source\r\n\r\n_Originally posted by @kjaymiller in https://github.com/BlackPythonDevs/blackpythondevs.github.io/pull/717#discussion_r2170032246_\r\n ","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:47.955026-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:47.955026-05:00"} +{"id":"blackpythondevs.github.io-y8h","title":"Update Contributions page with new steps for render engine (GH#686)","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:48.694758-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:48.694758-05:00"} +{"id":"blackpythondevs.github.io-yqh","title":"Add country flag to leaders bio","status":"open","priority":3,"issue_type":"task","created_at":"2026-01-17T11:21:36.750817-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:36.750817-05:00"} +{"id":"blackpythondevs.github.io-ytl","title":"GH#726: Fix broken images","description":"Some images are broken on blog page. Investigate and help fix them. Labels: good-first-issue, hacktoberfest-accepted","status":"open","priority":2,"issue_type":"bug","created_at":"2026-01-17T11:21:13.704202-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:13.704202-05:00"} +{"id":"blackpythondevs.github.io-ywa","title":"Epic: Content \u0026 Documentation","status":"open","priority":2,"issue_type":"feature","created_at":"2026-01-17T11:18:50.228742-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:18:50.228742-05:00"} +{"id":"blackpythondevs.github.io-zz0","title":"GH#807: Simplify and Refactor Navigation Menu","description":"Reduce clutter in the top navigation bar. Remove 'Home' link (Wordmark serves this purpose), Rename 'Blog' to 'News', Combine 'BPD Events' and 'Sponsored Events' into single 'Events' parent, Remove 'Community' link (move to Home/About Us), Combine 'Discounts' and 'Support Us' sections","status":"open","priority":1,"issue_type":"task","created_at":"2026-01-17T11:19:07.18361-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:19:07.18361-05:00"} diff --git a/.beads/beads.base.meta.json b/.beads/beads.base.meta.json new file mode 100644 index 00000000..bf500de7 --- /dev/null +++ b/.beads/beads.base.meta.json @@ -0,0 +1 @@ +{ "version": "0.46.0", "timestamp": "2026-01-17T11:32:01.86091-05:00", "commit": "0154f70" } diff --git a/.beads/beads.db b/.beads/beads.db new file mode 100644 index 0000000000000000000000000000000000000000..41c19ca22bd719d834a68582bd5c7643cc7d8098 GIT binary patch literal 487424 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

Z|f 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 literal 0 HcmV?d00001 diff --git a/.beads/beads.db-wal b/.beads/beads.db-wal new file mode 100644 index 0000000000000000000000000000000000000000..41b52181d470f7afb521564506ed05c60368b873 GIT binary patch literal 238992 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 L)|>a}dj$UjZ1z^O literal 0 HcmV?d00001 diff --git a/.beads/beads.left.jsonl b/.beads/beads.left.jsonl new file mode 100644 index 00000000..df796d94 --- /dev/null +++ b/.beads/beads.left.jsonl @@ -0,0 +1,115 @@ +{"id":"blackpythondevs.github.io-0cz","title":"Author in frontmatter should be list to simplify template and check in pre-commit (GH#707)","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:48.326927-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:48.326927-05:00"} +{"id":"blackpythondevs.github.io-0h0","title":"Ux design issue","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:29.910126-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:29.910126-05:00"} +{"id":"blackpythondevs.github.io-0hf","title":"Add GitHub link to footer","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:35.983315-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:35.983315-05:00"} +{"id":"blackpythondevs.github.io-0il","title":"update devcontainers to use standard python image (GH#687)","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:48.603979-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:48.603979-05:00"} +{"id":"blackpythondevs.github.io-13v","title":"Content Updates: Support Page and Community Info","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:30.918377-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:30.918377-05:00"} +{"id":"blackpythondevs.github.io-1og","title":"GH#810: Content Updates: Support Page and Community Info","description":"Create a page/section explaining how people can get support from the organization. Ensure Community links (Discord, LinkedIn) are properly placed in 'About Us' or the Front Page, as the specific navigation link is being removed","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:24.138082-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:24.138082-05:00"} +{"id":"blackpythondevs.github.io-1r1","title":"Update Contributions page with new steps for render engine","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:52.722325-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:52.722325-05:00"} +{"id":"blackpythondevs.github.io-1v1","title":"Fix loop names (GH#718)","description":"Should be a new issue....\r\n\r\n_Originally posted by @kjaymiller in https://github.com/BlackPythonDevs/blackpythondevs.github.io/pull/717#discussion_r2170013151_\r\n\r\n\r\nThe loop is working currently so no need to change until cleaning up and refactoring.","status":"open","priority":2,"issue_type":"bug","created_at":"2026-01-17T11:31:48.235089-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:48.235089-05:00"} +{"id":"blackpythondevs.github.io-1vj","title":"Use Playwright to Create a screenshot of the built page changes","status":"open","priority":3,"issue_type":"feature","created_at":"2026-01-17T11:21:48.900737-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:48.900737-05:00"} +{"id":"blackpythondevs.github.io-1vv","title":"Refine justfile commands to distinguish checking vs fixing","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:57.898128-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:57.898128-05:00"} +{"id":"blackpythondevs.github.io-1y1","title":"Replace 'Join LinkedIn Group' with 'Follow us on LinkedIn'","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:32.605373-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:32.605373-05:00"} +{"id":"blackpythondevs.github.io-23g","title":"Epic: Security \u0026 Maintenance","status":"open","priority":1,"issue_type":"feature","created_at":"2026-01-17T11:18:52.102444-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:18:52.102444-05:00"} +{"id":"blackpythondevs.github.io-2dl","title":"Frontend Audit Implementation","status":"open","priority":2,"issue_type":"feature","created_at":"2026-01-17T11:19:55.255487-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:19:55.255487-05:00"} +{"id":"blackpythondevs.github.io-2s9","title":"Technical Debt \u0026 Cleanup","status":"open","priority":2,"issue_type":"feature","created_at":"2026-01-17T11:20:00.260922-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:20:00.260922-05:00"} +{"id":"blackpythondevs.github.io-3go","title":"Redesign Hero Section Layout (GH#805)","description":"The hero section layout needs improvement to stop 'fighting for attention'.\n\n**Tasks:**\n- Stack image and text vertically (Image above text or vice versa).\n- Align with modern design principles to clear up visual hierarchy.","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:46.533248-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:46.533248-05:00"} +{"id":"blackpythondevs.github.io-3py","title":"update devcontainers to use standard python image","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:54.966909-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:54.966909-05:00"} +{"id":"blackpythondevs.github.io-3tf","title":"Content \u0026 Community","description":"Epic for Content \u0026 Community","status":"open","priority":2,"issue_type":"feature","created_at":"2026-01-17T11:31:45.926288-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:45.926288-05:00","dependencies":[{"issue_id":"blackpythondevs.github.io-3tf","depends_on_id":"blackpythondevs.github.io-e72","type":"blocks","created_at":"2026-01-17T11:31:46.118511-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-3tf","depends_on_id":"blackpythondevs.github.io-9xb","type":"blocks","created_at":"2026-01-17T11:31:46.209157-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-3tf","depends_on_id":"blackpythondevs.github.io-wha","type":"blocks","created_at":"2026-01-17T11:31:46.392118-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-3tf","depends_on_id":"blackpythondevs.github.io-ohs","type":"blocks","created_at":"2026-01-17T11:31:46.670949-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-3tf","depends_on_id":"blackpythondevs.github.io-aut","type":"blocks","created_at":"2026-01-17T11:31:46.854922-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-3tf","depends_on_id":"blackpythondevs.github.io-e7h","type":"blocks","created_at":"2026-01-17T11:31:46.945839-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-3tf","depends_on_id":"blackpythondevs.github.io-bwa","type":"blocks","created_at":"2026-01-17T11:31:47.432491-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-3tf","depends_on_id":"blackpythondevs.github.io-pjb","type":"blocks","created_at":"2026-01-17T11:31:47.526385-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-3tf","depends_on_id":"blackpythondevs.github.io-l0s","type":"blocks","created_at":"2026-01-17T11:31:47.621654-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-3tf","depends_on_id":"blackpythondevs.github.io-w8m","type":"blocks","created_at":"2026-01-17T11:31:48.552072-05:00","created_by":"jay.miller"}]} +{"id":"blackpythondevs.github.io-3wi","title":"Epic: Testing \u0026 Quality Assurance","status":"open","priority":1,"issue_type":"feature","created_at":"2026-01-17T11:18:50.93252-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:18:50.93252-05:00"} +{"id":"blackpythondevs.github.io-435","title":"External Integrations","status":"open","priority":2,"issue_type":"feature","created_at":"2026-01-17T11:19:59.514968-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:19:59.514968-05:00"} +{"id":"blackpythondevs.github.io-43q","title":"DX Audit Report","status":"open","priority":1,"issue_type":"feature","created_at":"2026-01-17T11:21:50.820935-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:50.820935-05:00"} +{"id":"blackpythondevs.github.io-464","title":"Update Events pages to show that events have clearly ended","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:22:02.314075-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:22:02.314075-05:00"} +{"id":"blackpythondevs.github.io-4ck","title":"Add geojson to site in static folder path","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:22:03.960133-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:22:03.960133-05:00"} +{"id":"blackpythondevs.github.io-52q","title":"GH#816: Update to new version of frontmatter-check","description":"Local script scripts/check_author_list.py and pre-commit hook were added as temporary measure to enforce author frontmatter field is a list. Wait for frontmatter-check to release version supporting author list validation, update .pre-commit-config.yaml, configure validation, remove local script and hook","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:29.551509-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:29.551509-05:00"} +{"id":"blackpythondevs.github.io-53w","title":"Epic: Navigation \u0026 UX Improvements","status":"open","priority":1,"issue_type":"feature","created_at":"2026-01-17T11:18:48.877298-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:18:48.877298-05:00"} +{"id":"blackpythondevs.github.io-546","title":"Add a section on the Conferences page to consider being sponsored","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:37.920593-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:37.920593-05:00"} +{"id":"blackpythondevs.github.io-59o","title":"DX Audit Report (GH#787)","description":"## Developer Experience (DX) Audit Report\n\nThis report summarizes the findings of a Developer Experience audit performed on the repository.\n\n### ✅ Strengths\n\n1. **Documentation**: \n * `README.md` provides a clear mission statement and easy entry points (Codespaces, Gitpod).\n * `CONTRIBUTING.md` is comprehensive, featuring diagrams of website and development structures, and clear steps for contribution.\n * `MAINTAINERS.md` effectively guides repository maintainers.\n2. **Tooling**:\n * **Modern Python Tooling**: Usage of `uv` for fast dependency management.\n * **Task Runner**: `justfile` simplifies common commands (`install`, `serve`, `check`).\n * **Linting \u0026 Formatting**: Comprehensive setup with `ruff`, `black`, `prettier`, and `eslint` via `pre-commit`.\n3. **CI/CD**:\n * Active workflows for checks, accessibility testing (`playwright`), and security (`scorecard`).\n\n### ⚠️ Areas for Improvement\n\n1. **Issue Templates**:\n * The `.github/ISSUE_TEMPLATE` directory contains `add_event.yml` but lacks standard **Bug Report** or **Feature Request** templates. This can lead to unstructured issue submissions.\n * *Recommendation*: Add `bug_report.md` and `feature_request.md` templates.\n\n2. **Static Type Checking**:\n * There is no evidence of strict static type checking (e.g., `mypy` or `pyright`) in `pyproject.toml` or `justfile`.\n * *Recommendation*: Integrate `mypy` into the dev dependencies and the `just check` command to catch type errors early.\n\n3. **Justfile `check` Command**:\n * The `check` command runs `format`, which usually *applies* formatting. In CI or check contexts, it is often better to verify formatting (e.g., `ruff format --check`) rather than modifying files.\n * *Recommendation*: Update `justfile` to have separate `fix` (apply format) and `lint` (check format) commands, or ensure `check` uses non-mutating verification.\n\n4. **Local Dev Setup**:\n * While `uv` is great, ensuring `uv` itself is installed is the first step. Adding a small \"One-line setup\" or check script could further lower the barrier.\n\n### 📋 Action Plan\n\n- [ ] Create `bug_report.md` and `feature_request.md` in `.github/ISSUE_TEMPLATE`.\n- [ ] Add `mypy` to optional dependencies and configure it.\n- [ ] Refine `justfile` commands to distinguish between checking and fixing code.\n","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:47.09959-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:47.09959-05:00","labels":["enhancement","report"]} +{"id":"blackpythondevs.github.io-5ks","title":"Add test that ensures that all pages are accessible to the website","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:50.014932-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:50.014932-05:00"} +{"id":"blackpythondevs.github.io-5sy","title":"Render Engine Migration","status":"open","priority":2,"issue_type":"feature","created_at":"2026-01-17T11:19:57.130896-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:19:57.130896-05:00"} +{"id":"blackpythondevs.github.io-5wl","title":"Standardize CSS Breakpoints","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:39.766607-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:39.766607-05:00"} +{"id":"blackpythondevs.github.io-5xq","title":"GH#805: Redesign Hero Section Layout","description":"Hero section layout needs improvement to stop 'fighting for attention'. Stack image and text vertically (Image above text or vice versa). Align with modern design principles to clear up visual hierarchy","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:19:15.271518-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:19:15.271518-05:00"} +{"id":"blackpythondevs.github.io-64z","title":"Refactor Navigation Menu (GH#806)","description":"Based on recent feedback, the navigation menu is too busy and needs simplification.\n\n**Tasks:**\n- [ ] Rename 'Blog' to 'News'\n- [ ] Remove 'Home' link (the site wordmark/logo already links home)\n- [ ] Combine 'BPD Events' and 'Sponsored Events' into a single 'Events' parent link (as a dropdown or consolidated page)\n- [ ] Combine 'Discounts' and 'Support Us' into a single section (e.g., 'Donate' or 'Support')\n- [ ] Evaluate removing the 'Community' link and merging its content into 'About Us'\n\n**Goal:** Reduce clutter and group related links logically.","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:46.442734-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:46.442734-05:00"} +{"id":"blackpythondevs.github.io-6by","title":"Redesign Hero Section (GH#808)","description":"The current hero section lacks a clear visual hierarchy and 'fights for attention'.\n\n**Suggestions:**\n- [ ] Adjust layout to stack image and text (image above text or vice-versa) to prioritize user attention.\n- [ ] Ensure the design reflects BPD's core values:\n 1. Build/Support Black Leadership in Python\n 2. Support the Communities that Build that Black Leadership\n 3. Raise Money to do 1 \u0026 2","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:46.259469-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:46.259469-05:00"} +{"id":"blackpythondevs.github.io-6gw","title":"Test suite failures after Render Engine migration","status":"open","priority":1,"issue_type":"bug","created_at":"2026-01-17T11:21:45.945536-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:45.945536-05:00"} +{"id":"blackpythondevs.github.io-6wn","title":"Create 'How to Get Support' Page","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:31.74236-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:31.74236-05:00"} +{"id":"blackpythondevs.github.io-77c","title":"Redesign Hero Section","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:26.96898-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:26.96898-05:00"} +{"id":"blackpythondevs.github.io-7qh","title":"Infrastructure \u0026 Tooling","description":"Epic for Infrastructure \u0026 Tooling","status":"open","priority":2,"issue_type":"feature","created_at":"2026-01-17T11:31:45.875526-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:45.875526-05:00","dependencies":[{"issue_id":"blackpythondevs.github.io-7qh","depends_on_id":"blackpythondevs.github.io-9oc","type":"blocks","created_at":"2026-01-17T11:31:46.025957-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-7qh","depends_on_id":"blackpythondevs.github.io-59o","type":"blocks","created_at":"2026-01-17T11:31:47.139862-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-7qh","depends_on_id":"blackpythondevs.github.io-p8s","type":"blocks","created_at":"2026-01-17T11:31:47.340519-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-7qh","depends_on_id":"blackpythondevs.github.io-f3a","type":"blocks","created_at":"2026-01-17T11:31:47.714021-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-7qh","depends_on_id":"blackpythondevs.github.io-xoj","type":"blocks","created_at":"2026-01-17T11:31:47.995587-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-7qh","depends_on_id":"blackpythondevs.github.io-wwo","type":"blocks","created_at":"2026-01-17T11:31:48.092206-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-7qh","depends_on_id":"blackpythondevs.github.io-eoe","type":"blocks","created_at":"2026-01-17T11:31:48.183908-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-7qh","depends_on_id":"blackpythondevs.github.io-1v1","type":"blocks","created_at":"2026-01-17T11:31:48.274636-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-7qh","depends_on_id":"blackpythondevs.github.io-0cz","type":"blocks","created_at":"2026-01-17T11:31:48.369609-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-7qh","depends_on_id":"blackpythondevs.github.io-82s","type":"blocks","created_at":"2026-01-17T11:31:48.46141-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-7qh","depends_on_id":"blackpythondevs.github.io-0il","type":"blocks","created_at":"2026-01-17T11:31:48.643719-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-7qh","depends_on_id":"blackpythondevs.github.io-y8h","type":"blocks","created_at":"2026-01-17T11:31:48.735293-05:00","created_by":"jay.miller"}]} +{"id":"blackpythondevs.github.io-7ya","title":"GH#567: Add blog posts to snapshot tests","description":"Add blog posts to snapshot tests to check for issues. We have way to iterate through blog, so generate snapshots of blog posts as well. This would help check for issues in blog posts. Labels: testing","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:51.314912-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:51.314912-05:00"} +{"id":"blackpythondevs.github.io-82s","title":"Fix security workflow (GH#689)","description":"Currently the security scan has not worked since Jan 2025","status":"open","priority":2,"issue_type":"bug","created_at":"2026-01-17T11:31:48.421345-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:48.421345-05:00"} +{"id":"blackpythondevs.github.io-836","title":"GH#784: Test suite failures from Render Engine migration","description":"Test failures from Jekyll to Render Engine migration: Blog post URL generation tests assume filename-based URLs while Render Engine generates title-based slugs (29 failing tests), Missing language attribute (lang='' instead of lang='en'), Need to verify accessibility issues beyond test assumptions","status":"open","priority":1,"issue_type":"bug","created_at":"2026-01-17T11:21:47.647342-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:47.647342-05:00"} +{"id":"blackpythondevs.github.io-86c","title":"Fix broken images (GH#726)","description":"some images are broken on our blog page. Investigate and help fix them","status":"open","priority":2,"issue_type":"bug","created_at":"2026-01-17T11:31:47.863695-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:47.863695-05:00","labels":["good first issue","hacktoberfest-accepted"]} +{"id":"blackpythondevs.github.io-917","title":"Add Code of Conduct link to footer","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:35.250375-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:35.250375-05:00"} +{"id":"blackpythondevs.github.io-92p","title":"Remove Typefully from sponsors section (GH#799)","description":"Remove the Typefully logo from '_layouts/_includes/join_us.html'.","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:46.72201-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:46.72201-05:00"} +{"id":"blackpythondevs.github.io-98y","title":"Add mypy to dev dependencies and configure","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:56.841239-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:56.841239-05:00"} +{"id":"blackpythondevs.github.io-9ba","title":"GH#686: Update Contributions page for Render Engine","description":"Update Contributions page with new steps for render engine migration","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:30.976817-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:30.976817-05:00"} +{"id":"blackpythondevs.github.io-9im","title":"Audit and Remove jQuery Dependencies","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:40.436072-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:40.436072-05:00"} +{"id":"blackpythondevs.github.io-9oc","title":"Update to new version of frontmatter-check for author list validation (GH#816)","description":"## Summary\nThe local script `scripts/check_author_list.py` and its corresponding pre-commit hook in `.pre-commit-config.yaml` were added as a temporary measure to enforce that the `author` frontmatter field is a list (see PR #815).\n\nThis functionality is expected to be added to the upstream `frontmatter-check` tool.\n\n## Acceptance Criteria\n- [ ] Wait for `frontmatter-check` to release a version supporting author list validation.\n- [ ] Update `.pre-commit-config.yaml` to use the new version of `frontmatter-check`.\n- [ ] Configure `frontmatter-check` to validate the `author` field.\n- [ ] Remove `scripts/check_author_list.py` and the local hook configuration.","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:45.979428-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:45.979428-05:00"} +{"id":"blackpythondevs.github.io-9ph","title":"GH#809: Create 'How to Get Support' Page","description":"Create a dedicated page where people can learn how to get support from the organization. Currently missing a clear pathway for users to understand how to access BPD resources/support","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:25.931163-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:25.931163-05:00"} +{"id":"blackpythondevs.github.io-9pl","title":"Content Updates","status":"open","priority":2,"issue_type":"feature","created_at":"2026-01-17T11:19:54.554803-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:19:54.554803-05:00"} +{"id":"blackpythondevs.github.io-9xb","title":"Create 'How to Get Support' Page (GH#809)","description":"Create a dedicated page where people can learn how to get support from the organization.\n\n**Context:**\nCurrently missing a clear pathway for users to understand how to access BPD resources/support.","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:46.169697-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:46.169697-05:00"} +{"id":"blackpythondevs.github.io-a95","title":"GH#766: Add country flag to leaders bio","description":"Add the country flag of the leadership team to the bio in the about page https://blackpythondevs.com/about.html. Labels: hold","status":"open","priority":4,"issue_type":"task","created_at":"2026-01-17T11:21:05.049051-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:05.049051-05:00"} +{"id":"blackpythondevs.github.io-aut","title":"Enhancement: Integrate ClickUp API for Dynamic Sponsored Event Stats (GH#798)","description":"## Summary\nTo provide up-to-date statistics on the homepage, we want to fetch the count of \"Sponsored Events\" directly from our ClickUp workspace instead of relying solely on the static `_data/sponsored_events.json` file.\n\n## Proposed Changes\n1. **New Module**: Create `clickup_client.py` to handle interactions with the ClickUp API.\n - Function: `fetch_clickup_stats(token, list_id)`\n - Logic: Fetch tasks from the specified list (including closed tasks) and return the count.\n\n2. **App Update**: Modify `app.py` to integrate the client.\n - Check for `CLICKUP_API_TOKEN` and `CLICKUP_LIST_ID` environment variables.\n - If present, use `clickup_client` to fetch the count.\n - If missing or if the API call fails, fall back to the existing local calculation method.\n\n3. **Refactor**: Improve the existing local counting logic using `itertools` for cleaner code (flattening the nested dictionary structure).\n\n## Environment Variables\n- `CLICKUP_API_TOKEN`: Personal Access Token or OAuth token.\n- `CLICKUP_LIST_ID`: The ID of the ClickUp List containing the events.\n","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:46.815072-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:46.815072-05:00"} +{"id":"blackpythondevs.github.io-bj3","title":"GH#750: Fix playwright tests","description":"In migration to render-engine, Playwright broke. Many minor actual issues can be fixed but also issues with live server starting and running to test against","status":"open","priority":1,"issue_type":"bug","created_at":"2026-01-17T11:21:44.55177-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:44.55177-05:00"} +{"id":"blackpythondevs.github.io-bq8","title":"Add link for sponsorship inquiries","status":"open","priority":3,"issue_type":"task","created_at":"2026-01-17T11:21:33.500243-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:33.500243-05:00"} +{"id":"blackpythondevs.github.io-bvq","title":"GH#729: UX Design - Events Navigation","description":"Make events the parent link with sponsored and bpd as dropdown, or rename bpd events to 'in house events'. Labels: good-first-issue, hacktoberfest-accepted, design","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:19:09.807433-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:19:09.807433-05:00"} +{"id":"blackpythondevs.github.io-bvx","title":"GH#808: Redesign Hero Section","description":"The current hero section lacks clear visual hierarchy and 'fights for attention'. Adjust layout to stack image and text (image above/below text) to prioritize user attention. Ensure design reflects BPD core values: 1) Build/Support Black Leadership in Python, 2) Support Communities that Build Black Leadership, 3) Raise Money to do 1 \u0026 2","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:19:13.492723-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:19:13.492723-05:00"} +{"id":"blackpythondevs.github.io-bwa","title":"Add Code of Conduct link to footer (GH#778)","description":"Add a link to the Code of Conduct page in the Quick Links section of the footer. This improves discoverability of the community guidelines and makes it easier for visitors to find our Code of Conduct.","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:47.391432-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:47.391432-05:00"} +{"id":"blackpythondevs.github.io-coi","title":"Make local development significantly easier","status":"open","priority":1,"issue_type":"task","created_at":"2026-01-17T11:21:51.662857-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:51.662857-05:00"} +{"id":"blackpythondevs.github.io-czw","title":"GH#753: Add test that ensures all pages are accessible","description":"Pages in /pages have no link to them currently. Some pages need to be visible while others should be removed. Add test to ensure all pages are accessible to the website","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:53.608987-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:53.608987-05:00"} +{"id":"blackpythondevs.github.io-dc3","title":"GH#786: Add GitHub link to footer","description":"Add a link to the GitHub repository in the footer using Font Awesome brand icon (fa-fa brand). Location: _layouts/_includes/footer.html. Labels: enhancement, design","status":"open","priority":3,"issue_type":"task","created_at":"2026-01-17T11:21:03.588753-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:03.588753-05:00"} +{"id":"blackpythondevs.github.io-dcb","title":"GH#720: Remove lang reference","description":"Multiple languages were removed, this should be removed. The condition comparing 'lang' to itself is always true; consider comparing loop variable to current page language","status":"open","priority":3,"issue_type":"task","created_at":"2026-01-17T11:21:08.821127-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:08.821127-05:00"} +{"id":"blackpythondevs.github.io-e4z","title":"Fix playwright tests","status":"open","priority":1,"issue_type":"bug","created_at":"2026-01-17T11:21:42.783492-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:42.783492-05:00"} +{"id":"blackpythondevs.github.io-e72","title":"Content Updates: Support Page and Community Info (GH#810)","description":"**Tasks:**\n- Create a page/section explaining how people can get support from the organization.\n- Ensure Community links (Discord, LinkedIn) are properly placed in 'About Us' or the Front Page, as the specific navigation link is being removed.","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:46.078002-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:46.078002-05:00"} +{"id":"blackpythondevs.github.io-e7h","title":"Replace 'Join LinkedIn Group' with 'Follow us on LinkedIn' (GH#797)","description":"## Summary\nUpdate all references from 'Join LinkedIn Group' to 'Follow us on LinkedIn' and point to the company page instead of the group.\n\n## Current State\nCurrently, the site links to the LinkedIn group: https://www.linkedin.com/groups/14336241/\n\n## Desired State\nUpdate to point to the company page: https://www.linkedin.com/company/black-python-devs\n\n## Files to Update\nThe following files contain references that need to be updated:\n\n1. `_layouts/_includes/join_us.html:9-10` - Button link and text\n2. `pages/community.md:33` - LinkedIn group reference\n3. `_posts/2024-01-12-black-python-devs-is-sponsoring-pytexas.md:28` - Post reference\n\n## Acceptance Criteria\n- [ ] All LinkedIn group URLs updated to company page URL\n- [ ] All \"Join our LinkedIn Group\" text updated to \"Follow us on LinkedIn\"\n- [ ] Links tested and working","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:46.90728-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:46.90728-05:00"} +{"id":"blackpythondevs.github.io-e8m","title":"GH#721: Add integrity check or download assets locally","description":"Either add integrity check or download and call from local source for external assets","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:06.600283-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:06.600283-05:00"} +{"id":"blackpythondevs.github.io-eae","title":"create blog collection for posts","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:22:00.604592-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:22:00.604592-05:00"} +{"id":"blackpythondevs.github.io-eoe","title":"Update unless tag (GH#719)","description":"Currently not breaking anything (maybe a11y)\r\n\r\nThe condition in the 'unless' tag is malformed; it likely should be written as {% unless entry.platform == \"rss\" %}.\r\n```suggestion\r\n \u003ca {% unless entry.platform == \"rss\" %}rel=\"me\" {% endunless %}href=\"{{ entry.user_url }}\" target=\"_blank\" title=\"{{ entry.title | default: entry.platform }}\"\u003e\r\n```\r\n\r\n_Originally posted by @Copilot in https://github.com/BlackPythonDevs/blackpythondevs.github.io/pull/717#discussion_r2169998093_\r\n ","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:48.143782-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:48.143782-05:00"} +{"id":"blackpythondevs.github.io-f3a","title":"Fix playwright tests (GH#750)","description":"In our migration to render-engine - Playwright broke. \n\nThere were a lot of minor actual issues that can be fixed but also we've had issues with the live server starting and running so that we can actually test against the issues.","status":"open","priority":2,"issue_type":"bug","created_at":"2026-01-17T11:31:47.673209-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:47.673209-05:00"} +{"id":"blackpythondevs.github.io-ftk","title":"GH#685: Update docs from Jekyll to Render Engine","description":"Update docs from saying built with Jekyll to built with Render Engine. Labels: good-first-issue","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:32.420814-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:32.420814-05:00"} +{"id":"blackpythondevs.github.io-gdr","title":"Navigation \u0026 UX Redesign","status":"open","priority":2,"issue_type":"feature","created_at":"2026-01-17T11:19:53.903982-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:19:53.903982-05:00"} +{"id":"blackpythondevs.github.io-gjb","title":"Refactor Navigation Menu","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:29.273788-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:29.273788-05:00"} +{"id":"blackpythondevs.github.io-hd8","title":"create events collection for workshops leadership summit","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:22:01.237137-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:22:01.237137-05:00"} +{"id":"blackpythondevs.github.io-hgz","title":"GH#788: Website Frontend Audit Report","description":"Frontend audit findings: Standardize breakpoints (600px, 768px, 800px, 1080px inconsistent), Audit jQuery usage and refactor to Vanilla JS, Refactor CSS to remove !important tags, Investigate merging/minifying custom CSS assets. Labels: report, design, a11y, performance","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:01.303501-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:01.303501-05:00"} +{"id":"blackpythondevs.github.io-hpo","title":"GH#719: Update unless tag","description":"Currently not breaking anything (maybe a11y). The condition in the 'unless' tag is malformed; should be {% unless entry.platform == 'rss' %}","status":"open","priority":3,"issue_type":"task","created_at":"2026-01-17T11:21:10.950843-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:10.950843-05:00"} +{"id":"blackpythondevs.github.io-ibm","title":"Asset Management","status":"open","priority":2,"issue_type":"feature","created_at":"2026-01-17T11:19:58.324475-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:19:58.324475-05:00"} +{"id":"blackpythondevs.github.io-ihy","title":"Testing Infrastructure","status":"open","priority":2,"issue_type":"feature","created_at":"2026-01-17T11:19:55.831842-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:19:55.831842-05:00"} +{"id":"blackpythondevs.github.io-k4b","title":"Redesign Hero Section Layout","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:27.711499-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:27.711499-05:00"} +{"id":"blackpythondevs.github.io-k8e","title":"Website Frontend Audit Report (GH#788)","description":"## Website Frontend Audit Report\n\nThis report summarizes findings regarding the frontend architecture, design implementation, and user experience of the website.\n\n### ✅ Strengths\n\n1. **Accessibility (A11y)**:\n * Strong use of semantic HTML (`\u003cheader\u003e`, `\u003cmain\u003e`, `\u003cfooter\u003e`, `\u003cnav\u003e`).\n * Proper use of ARIA labels and roles (`role=\"banner\"`, `aria-label=\"Main navigation\"`).\n * Implementation of `.screen-reader-text` class for accessible hidden content.\n * `lang` attribute dynamically set on `\u003chtml\u003e` tag.\n2. **Framework Choice**:\n * Use of **Pico CSS** provides a lightweight, semantic-first foundation.\n3. **Responsive Design**:\n * Mobile navigation menu implementation exists.\n * Footer grid adapts from 3 columns to 1 column on smaller screens.\n\n### ⚠️ Areas for Improvement\n\n1. **CSS Architecture \u0026 Maintainability**:\n * **Specificity Wars**: usage of `!important` in `bpd.css` (e.g., `ul li`, `a[role=\"button\"]`) suggests difficulty overriding framework styles. This makes future maintenance harder.\n * **Inconsistent Breakpoints**: Media queries use a mix of values: `600px`, `768px`, `800px`, `1080px`. This can lead to unpredictable layout behavior on intermediate devices.\n * **Tight Coupling**: Specific selectors like `article.pico-background-pumpkin-650` couple the custom CSS tightly to specific content choices.\n\n2. **Performance**:\n * **jQuery Dependency**: `jquery.min.js` is loaded. If this is only used for the mobile menu toggle or simple interactions, it should be replaced with vanilla JavaScript to reduce page load weight.\n * **CSS Requests**: Multiple CSS files are loaded (`pico.min.css`, `pico.colors.min.css`, `bpd.css`).\n * **Unminified Assets**: `bpd.css` is served unminified.\n\n3. **Design System**:\n * The \"Language Switcher\" implementation in the header is functional but could be styled to match the native OS or Pico theme better.\n\n### 📋 Action Plan\n\n- [ ] **Standardize Breakpoints**: Define a clear set of breakpoints (e.g., Mobile, Tablet, Desktop) and refactor CSS to use them consistently.\n- [ ] **Audit jQuery Usage**: Identify where jQuery is used and refactor to Vanilla JS if possible.\n- [ ] **Refactor CSS**: Remove `!important` tags by increasing specificity or adjusting load order/Pico configuration.\n- [ ] **Performance**: Investigate merging or minifying custom CSS assets during the build process.\n","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:46.999528-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:46.999528-05:00","labels":["a11y","design","performance","report"]} +{"id":"blackpythondevs.github.io-l0s","title":"Add test that ensures that all pages are accessible to the website\n (GH#753)","description":"I found pages in the /pages have no link to them currently. Some of those pages need to be visible while others should be removed.\n","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:47.578839-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:47.578839-05:00"} +{"id":"blackpythondevs.github.io-l2q","title":"Website Frontend Audit Report","status":"open","priority":1,"issue_type":"feature","created_at":"2026-01-17T11:21:38.738582-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:38.738582-05:00"} +{"id":"blackpythondevs.github.io-lb5","title":"Refactor CSS to Remove !important Tags","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:41.333146-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:41.333146-05:00"} +{"id":"blackpythondevs.github.io-lg6","title":"Implement CSS Minification in Build Process","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:41.980019-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:41.980019-05:00"} +{"id":"blackpythondevs.github.io-lv5","title":"Epic: Feature Enhancements","status":"open","priority":2,"issue_type":"feature","created_at":"2026-01-17T11:18:52.742719-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:18:52.742719-05:00"} +{"id":"blackpythondevs.github.io-mat","title":"Create bug_report.md and feature_request.md templates","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:56.011521-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:56.011521-05:00"} +{"id":"blackpythondevs.github.io-mdi","title":"Create Location Snippet","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:22:03.034977-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:22:03.034977-05:00"} +{"id":"blackpythondevs.github.io-nna","title":"Epic: Infrastructure \u0026 Tooling","status":"open","priority":2,"issue_type":"feature","created_at":"2026-01-17T11:18:51.501922-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:18:51.501922-05:00"} +{"id":"blackpythondevs.github.io-npp","title":"GH#344: Add sponsorship section to Conferences page","description":"Add section on Conferences page below conference list: Link to prospectus (in development), Quick outline of sponsorship types (Community Sponsor - Tickets for Local Black Python Developers, Commitment Sponsor - Multi-year commitment). Labels: content","status":"open","priority":3,"issue_type":"task","created_at":"2026-01-17T11:21:35.235007-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:35.235007-05:00"} +{"id":"blackpythondevs.github.io-oag","title":"Fix failing accessibility test","status":"open","priority":2,"issue_type":"bug","created_at":"2026-01-17T11:21:46.76599-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:46.76599-05:00"} +{"id":"blackpythondevs.github.io-ohs","title":"Add link for sponsorship inquiries (GH#800)","description":"Add a small link in the 'Corporate Sponsors' section of '_layouts/_includes/join_us.html' for visitors to ask about sponsorship opportunities.","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:46.630606-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:46.630606-05:00"} +{"id":"blackpythondevs.github.io-p2y","title":"Migrate Site to Render Engine","status":"open","priority":0,"issue_type":"feature","created_at":"2026-01-17T11:21:58.711698-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:58.711698-05:00"} +{"id":"blackpythondevs.github.io-p8s","title":"I reran the test suite with verbose logging to investigate the failures. Most of the failures are test-related issues introduced during the migration from Jekyll to Render Engine . (GH#784)","description":"I reran the test suite with verbose logging to investigate the failures. Most of the failures are test-related issues introduced during the migration from Jekyll to Render Engine .\r\n\r\nTest fixed:\r\n\r\n- Updated the email link selector from email to contact@blackpythondevs.com\r\n- Fixed the blog description test to match the actual HTML structure (article elements instead of p.post-description\r\n- Corrected title format expectations to match actual output ('Page | Black Python Devs' instead of 'Black Python Devs | Page')\r\n\r\nRemaining issues:\r\n\r\n- Blog post URL generation tests still assume filename-based URLs (e.g. /blog/2024-05-25-filename.html), while the Render Engine generates title-based slugs (e.g. /blog/title-based-slug.html) -\u003e 29 failing tests\r\n- Missing language attribute: pages currently render lang=\"\" instead of lang=\"en\"\r\n- I still need to verify whether there are any accessibility issues beyond test assumptions\r\n\r\nLet me know how you'd like to proceed on the remaining items.\r\n\r\n_Originally posted by @danielcristho in https://github.com/BlackPythonDevs/blackpythondevs.github.io/issues/782#issuecomment-3707405095_\r\n ","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:47.298586-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:47.298586-05:00"} +{"id":"blackpythondevs.github.io-pjb","title":"Add country flag to leaders bio (GH#766)","description":"Add the country flag of the leadership team to the bio in the about page https://blackpythondevs.com/about.html","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:47.484004-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:47.484004-05:00","labels":["hold"]} +{"id":"blackpythondevs.github.io-pv1","title":"Add blog posts to snapshot tests","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:47.699692-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:47.699692-05:00"} +{"id":"blackpythondevs.github.io-q1b","title":"Simplify and Refactor Navigation Menu","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:28.441246-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:28.441246-05:00"} +{"id":"blackpythondevs.github.io-qfo","title":"Remove Typefully from sponsors section","status":"open","priority":3,"issue_type":"task","created_at":"2026-01-17T11:21:34.520723-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:34.520723-05:00"} +{"id":"blackpythondevs.github.io-qqw","title":"Add GitHub link to footer (GH#786)","description":"Add a link to the GitHub repository in the footer. \n\nThe implementation should use a Font Awesome brand icon (fa-fa brand) as requested.\n\nCurrent footer location: `_layouts/_includes/footer.html`\n","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:47.196218-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:47.196218-05:00","labels":["design","enhancement"]} +{"id":"blackpythondevs.github.io-r2r","title":"Epic: Frontend Architecture \u0026 Design System","status":"open","priority":1,"issue_type":"feature","created_at":"2026-01-17T11:18:49.632363-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:18:49.632363-05:00"} +{"id":"blackpythondevs.github.io-r6k","title":"GH#654: Fix failing accessibility test","description":"Fix the failing accessibility test on PR #651","status":"open","priority":2,"issue_type":"bug","created_at":"2026-01-17T11:21:48.899382-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:48.899382-05:00"} +{"id":"blackpythondevs.github.io-snp","title":"GH#806: Refactor Navigation Menu","description":"Based on recent feedback, the navigation menu is too busy and needs simplification. Tasks: Rename 'Blog' to 'News', Remove 'Home' link (wordmark links home), Combine 'BPD Events' and 'Sponsored Events' into single 'Events' parent, Combine 'Discounts' and 'Support Us', Evaluate removing 'Community' link and merging into 'About Us'","status":"open","priority":1,"issue_type":"task","created_at":"2026-01-17T11:19:04.869855-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:19:04.869855-05:00"} +{"id":"blackpythondevs.github.io-ted","title":"Events \u0026 Collections","status":"open","priority":2,"issue_type":"feature","created_at":"2026-01-17T11:19:58.899992-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:19:58.899992-05:00"} +{"id":"blackpythondevs.github.io-tzb","title":"Developer Experience Improvements","status":"open","priority":2,"issue_type":"feature","created_at":"2026-01-17T11:19:56.480945-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:19:56.480945-05:00"} +{"id":"blackpythondevs.github.io-u7a","title":"GH#718: Fix loop names","description":"Loop is working currently so no need to change until cleaning up and refactoring","status":"open","priority":3,"issue_type":"task","created_at":"2026-01-17T11:21:12.238767-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:12.238767-05:00"} +{"id":"blackpythondevs.github.io-u9t","title":"Site Redesign \u0026 UX Improvements","description":"Epic for Site Redesign \u0026 UX Improvements","status":"open","priority":2,"issue_type":"feature","created_at":"2026-01-17T11:31:45.82361-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:45.82361-05:00","dependencies":[{"issue_id":"blackpythondevs.github.io-u9t","depends_on_id":"blackpythondevs.github.io-6by","type":"blocks","created_at":"2026-01-17T11:31:46.30068-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-u9t","depends_on_id":"blackpythondevs.github.io-64z","type":"blocks","created_at":"2026-01-17T11:31:46.482656-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-u9t","depends_on_id":"blackpythondevs.github.io-3go","type":"blocks","created_at":"2026-01-17T11:31:46.577497-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-u9t","depends_on_id":"blackpythondevs.github.io-92p","type":"blocks","created_at":"2026-01-17T11:31:46.763393-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-u9t","depends_on_id":"blackpythondevs.github.io-k8e","type":"blocks","created_at":"2026-01-17T11:31:47.04354-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-u9t","depends_on_id":"blackpythondevs.github.io-qqw","type":"blocks","created_at":"2026-01-17T11:31:47.244528-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-u9t","depends_on_id":"blackpythondevs.github.io-w85","type":"blocks","created_at":"2026-01-17T11:31:47.809944-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-u9t","depends_on_id":"blackpythondevs.github.io-86c","type":"blocks","created_at":"2026-01-17T11:31:47.903789-05:00","created_by":"jay.miller"}]} +{"id":"blackpythondevs.github.io-uc6","title":"create settings file","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:59.471319-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:59.471319-05:00"} +{"id":"blackpythondevs.github.io-w85","title":"Ux design issue (GH#729)","description":"Hey @kjaymiller why don't we have events as the parent link while sponsored and bpd become a drop down and/or rename bpd events to \"in house events\"\n\u003cimg width=\"350\" height=\"140\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/084bff89-a774-4d00-8206-990e61343fe7\" /\u003e","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:47.766532-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:47.766532-05:00","labels":["design","good first issue","hacktoberfest-accepted"]} +{"id":"blackpythondevs.github.io-w8m","title":"Add all contributors (GH#688)","description":"## Description\nWe should implement the [all-contributors](https://allcontributors.org/) specification to recognize all people who contribute to our project, not just code contributors. This will help us acknowledge various types of contributions including documentation, design, testing, and more.\n\n## Motivation\n- Properly recognize all contributors regardless of contribution type\n- Create a more inclusive environment that values all forms of contribution\n- Provide clear documentation of who has helped with the project and how\n- Encourage more diverse contributions by showing we value all types of help\n\n## Implementation Plan\n- [ ] Initialize the specification: `npx all-contributors init`\n- [ ] Add existing contributors using the CLI: `npx all-contributors add \u003cusername\u003e \u003ccontribution-type\u003e`\n- [ ] Set up a .all-contributorsrc configuration file\n- [ ] Add the contributors table to our README.md\n- [ ] Document the process for adding new contributors in CONTRIBUTING.md\n\n## Additional Details\n- Contribution types to recognize: code, doc, design, bug, test, ideas, review, talk, tutorial, etc.\n- CLI will maintain both .all-contributorsrc and README.md files automatically\n- We can configure the bot to automatically suggest adding new contributors\n\n## Questions\n- Should we use the all-contributors bot for automated PRs?\n- What emoji/acknowledgment style should we use for the contributors table?\n- Should we include the contributors table at the top or bottom of the README?\n\n## Resources\n- [all-contributors documentation](https://allcontributors.org/docs/en/overview)\n- [Example repositories using all-contributors](https://github.com/all-contributors/all-contributors/blob/master/README.md#who-uses-it)","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:48.512673-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:48.512673-05:00","labels":["good first issue"]} +{"id":"blackpythondevs.github.io-w9s","title":"Security \u0026 CI/CD","status":"open","priority":2,"issue_type":"feature","created_at":"2026-01-17T11:19:57.787254-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:19:57.787254-05:00"} +{"id":"blackpythondevs.github.io-wha","title":"Simplify and Refactor Navigation Menu (GH#807)","description":"Reduce clutter in the top navigation bar.\n\n**Tasks:**\n- Remove 'Home' link (Wordmark serves this purpose).\n- Rename 'Blog' to 'News'.\n- Combine 'BPD Events' and 'Sponsored Events' into a single 'Events' parent or page.\n- Remove 'Community' link (move content to Home/About Us).\n- Combine 'Discounts' and 'Support Us' sections.","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:46.352616-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:46.352616-05:00"} +{"id":"blackpythondevs.github.io-wwo","title":"[Remove] lang reference (GH#720)","description":"Multiple languages were removed... this should be removed.\r\n\r\nThe condition comparing 'lang' to itself is always true; consider comparing the loop variable to the current page language (e.g. {% if page.lang == lang %}).\r\n\r\n_Originally posted by @Copilot in https://github.com/BlackPythonDevs/blackpythondevs.github.io/pull/717#discussion_r2169998101_\r\n ","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:48.048681-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:48.048681-05:00"} +{"id":"blackpythondevs.github.io-xiq","title":"Update docs from saying built with Jekyll to built with Render Engine","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:53.899863-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:53.899863-05:00"} +{"id":"blackpythondevs.github.io-xoj","title":"either add integrity check or download and call from local source (GH#721)","description":"either add integrity check or download and call from local source\r\n\r\n_Originally posted by @kjaymiller in https://github.com/BlackPythonDevs/blackpythondevs.github.io/pull/717#discussion_r2170032246_\r\n ","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:47.955026-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:47.955026-05:00"} +{"id":"blackpythondevs.github.io-y8h","title":"Update Contributions page with new steps for render engine (GH#686)","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:48.694758-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:48.694758-05:00"} +{"id":"blackpythondevs.github.io-yqh","title":"Add country flag to leaders bio","status":"open","priority":3,"issue_type":"task","created_at":"2026-01-17T11:21:36.750817-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:36.750817-05:00"} +{"id":"blackpythondevs.github.io-ytl","title":"GH#726: Fix broken images","description":"Some images are broken on blog page. Investigate and help fix them. Labels: good-first-issue, hacktoberfest-accepted","status":"open","priority":2,"issue_type":"bug","created_at":"2026-01-17T11:21:13.704202-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:13.704202-05:00"} +{"id":"blackpythondevs.github.io-ywa","title":"Epic: Content \u0026 Documentation","status":"open","priority":2,"issue_type":"feature","created_at":"2026-01-17T11:18:50.228742-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:18:50.228742-05:00"} +{"id":"blackpythondevs.github.io-zz0","title":"GH#807: Simplify and Refactor Navigation Menu","description":"Reduce clutter in the top navigation bar. Remove 'Home' link (Wordmark serves this purpose), Rename 'Blog' to 'News', Combine 'BPD Events' and 'Sponsored Events' into single 'Events' parent, Remove 'Community' link (move to Home/About Us), Combine 'Discounts' and 'Support Us' sections","status":"open","priority":1,"issue_type":"task","created_at":"2026-01-17T11:19:07.18361-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:19:07.18361-05:00"} diff --git a/.beads/beads.left.meta.json b/.beads/beads.left.meta.json new file mode 100644 index 00000000..9b0f0713 --- /dev/null +++ b/.beads/beads.left.meta.json @@ -0,0 +1 @@ +{ "version": "0.46.0", "timestamp": "2026-01-17T11:32:00.400936-05:00", "commit": "0c2960b" } diff --git a/.beads/daemon.lock b/.beads/daemon.lock new file mode 100644 index 00000000..1d4078a7 --- /dev/null +++ b/.beads/daemon.lock @@ -0,0 +1,7 @@ +{ + "pid": 41031, + "parent_pid": 41022, + "database": "/Users/jay.miller/blackpythondevs.github.io/.beads/beads.db", + "version": "0.46.0", + "started_at": "2026-01-17T16:18:29.63231Z" +} diff --git a/.beads/daemon.pid b/.beads/daemon.pid new file mode 100644 index 00000000..683d3b8d --- /dev/null +++ b/.beads/daemon.pid @@ -0,0 +1 @@ +41031 diff --git a/.beads/issues.jsonl b/.beads/issues.jsonl new file mode 100644 index 00000000..17b31cfb --- /dev/null +++ b/.beads/issues.jsonl @@ -0,0 +1,116 @@ +{"id":"blackpythondevs.github.io-0cz","title":"Author in frontmatter should be list to simplify template and check in pre-commit (GH#707)","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:48.326927-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:48.326927-05:00"} +{"id":"blackpythondevs.github.io-0h0","title":"Ux design issue","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:29.910126-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:29.910126-05:00"} +{"id":"blackpythondevs.github.io-0hf","title":"Add GitHub link to footer","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:35.983315-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:35.983315-05:00"} +{"id":"blackpythondevs.github.io-0il","title":"update devcontainers to use standard python image (GH#687)","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:48.603979-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:48.603979-05:00"} +{"id":"blackpythondevs.github.io-13v","title":"Content Updates: Support Page and Community Info","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:30.918377-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:30.918377-05:00"} +{"id":"blackpythondevs.github.io-1og","title":"GH#810: Content Updates: Support Page and Community Info","description":"Create a page/section explaining how people can get support from the organization. Ensure Community links (Discord, LinkedIn) are properly placed in 'About Us' or the Front Page, as the specific navigation link is being removed","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:24.138082-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:24.138082-05:00"} +{"id":"blackpythondevs.github.io-1r1","title":"Update Contributions page with new steps for render engine","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:52.722325-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:52.722325-05:00"} +{"id":"blackpythondevs.github.io-1v1","title":"Fix loop names (GH#718)","description":"Should be a new issue....\r\n\r\n_Originally posted by @kjaymiller in https://github.com/BlackPythonDevs/blackpythondevs.github.io/pull/717#discussion_r2170013151_\r\n\r\n\r\nThe loop is working currently so no need to change until cleaning up and refactoring.","status":"open","priority":2,"issue_type":"bug","created_at":"2026-01-17T11:31:48.235089-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:48.235089-05:00"} +{"id":"blackpythondevs.github.io-1vj","title":"Use Playwright to Create a screenshot of the built page changes","status":"open","priority":3,"issue_type":"feature","created_at":"2026-01-17T11:21:48.900737-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:48.900737-05:00"} +{"id":"blackpythondevs.github.io-1vv","title":"Refine justfile commands to distinguish checking vs fixing","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:57.898128-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:57.898128-05:00"} +{"id":"blackpythondevs.github.io-1y1","title":"Replace 'Join LinkedIn Group' with 'Follow us on LinkedIn'","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:32.605373-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:32.605373-05:00"} +{"id":"blackpythondevs.github.io-23g","title":"Epic: Security \u0026 Maintenance","status":"open","priority":1,"issue_type":"feature","created_at":"2026-01-17T11:18:52.102444-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:18:52.102444-05:00"} +{"id":"blackpythondevs.github.io-2dl","title":"Frontend Audit Implementation","status":"open","priority":2,"issue_type":"feature","created_at":"2026-01-17T11:19:55.255487-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:19:55.255487-05:00"} +{"id":"blackpythondevs.github.io-2s9","title":"Technical Debt \u0026 Cleanup","status":"open","priority":2,"issue_type":"feature","created_at":"2026-01-17T11:20:00.260922-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:20:00.260922-05:00"} +{"id":"blackpythondevs.github.io-3go","title":"Redesign Hero Section Layout (GH#805)","description":"The hero section layout needs improvement to stop 'fighting for attention'.\n\n**Tasks:**\n- Stack image and text vertically (Image above text or vice versa).\n- Align with modern design principles to clear up visual hierarchy.","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:46.533248-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:46.533248-05:00"} +{"id":"blackpythondevs.github.io-3py","title":"update devcontainers to use standard python image","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:54.966909-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:54.966909-05:00"} +{"id":"blackpythondevs.github.io-3tf","title":"Content \u0026 Community","description":"Epic for Content \u0026 Community","status":"open","priority":2,"issue_type":"feature","created_at":"2026-01-17T11:31:45.926288-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:45.926288-05:00","dependencies":[{"issue_id":"blackpythondevs.github.io-3tf","depends_on_id":"blackpythondevs.github.io-e72","type":"blocks","created_at":"2026-01-17T11:31:46.118511-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-3tf","depends_on_id":"blackpythondevs.github.io-9xb","type":"blocks","created_at":"2026-01-17T11:31:46.209157-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-3tf","depends_on_id":"blackpythondevs.github.io-wha","type":"blocks","created_at":"2026-01-17T11:31:46.392118-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-3tf","depends_on_id":"blackpythondevs.github.io-ohs","type":"blocks","created_at":"2026-01-17T11:31:46.670949-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-3tf","depends_on_id":"blackpythondevs.github.io-aut","type":"blocks","created_at":"2026-01-17T11:31:46.854922-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-3tf","depends_on_id":"blackpythondevs.github.io-e7h","type":"blocks","created_at":"2026-01-17T11:31:46.945839-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-3tf","depends_on_id":"blackpythondevs.github.io-bwa","type":"blocks","created_at":"2026-01-17T11:31:47.432491-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-3tf","depends_on_id":"blackpythondevs.github.io-pjb","type":"blocks","created_at":"2026-01-17T11:31:47.526385-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-3tf","depends_on_id":"blackpythondevs.github.io-l0s","type":"blocks","created_at":"2026-01-17T11:31:47.621654-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-3tf","depends_on_id":"blackpythondevs.github.io-w8m","type":"blocks","created_at":"2026-01-17T11:31:48.552072-05:00","created_by":"jay.miller"}]} +{"id":"blackpythondevs.github.io-3wi","title":"Epic: Testing \u0026 Quality Assurance","status":"open","priority":1,"issue_type":"feature","created_at":"2026-01-17T11:18:50.93252-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:18:50.93252-05:00"} +{"id":"blackpythondevs.github.io-435","title":"External Integrations","status":"open","priority":2,"issue_type":"feature","created_at":"2026-01-17T11:19:59.514968-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:19:59.514968-05:00"} +{"id":"blackpythondevs.github.io-43q","title":"DX Audit Report","status":"open","priority":1,"issue_type":"feature","created_at":"2026-01-17T11:21:50.820935-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:50.820935-05:00"} +{"id":"blackpythondevs.github.io-464","title":"Update Events pages to show that events have clearly ended","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:22:02.314075-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:22:02.314075-05:00"} +{"id":"blackpythondevs.github.io-4ck","title":"Add geojson to site in static folder path","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:22:03.960133-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:22:03.960133-05:00"} +{"id":"blackpythondevs.github.io-52q","title":"GH#816: Update to new version of frontmatter-check","description":"Local script scripts/check_author_list.py and pre-commit hook were added as temporary measure to enforce author frontmatter field is a list. Wait for frontmatter-check to release version supporting author list validation, update .pre-commit-config.yaml, configure validation, remove local script and hook","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:29.551509-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:29.551509-05:00"} +{"id":"blackpythondevs.github.io-53w","title":"Epic: Navigation \u0026 UX Improvements","status":"open","priority":1,"issue_type":"feature","created_at":"2026-01-17T11:18:48.877298-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:18:48.877298-05:00"} +{"id":"blackpythondevs.github.io-546","title":"Add a section on the Conferences page to consider being sponsored","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:37.920593-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:37.920593-05:00"} +{"id":"blackpythondevs.github.io-59o","title":"DX Audit Report (GH#787)","description":"## Developer Experience (DX) Audit Report\n\nThis report summarizes the findings of a Developer Experience audit performed on the repository.\n\n### ✅ Strengths\n\n1. **Documentation**: \n * `README.md` provides a clear mission statement and easy entry points (Codespaces, Gitpod).\n * `CONTRIBUTING.md` is comprehensive, featuring diagrams of website and development structures, and clear steps for contribution.\n * `MAINTAINERS.md` effectively guides repository maintainers.\n2. **Tooling**:\n * **Modern Python Tooling**: Usage of `uv` for fast dependency management.\n * **Task Runner**: `justfile` simplifies common commands (`install`, `serve`, `check`).\n * **Linting \u0026 Formatting**: Comprehensive setup with `ruff`, `black`, `prettier`, and `eslint` via `pre-commit`.\n3. **CI/CD**:\n * Active workflows for checks, accessibility testing (`playwright`), and security (`scorecard`).\n\n### ⚠️ Areas for Improvement\n\n1. **Issue Templates**:\n * The `.github/ISSUE_TEMPLATE` directory contains `add_event.yml` but lacks standard **Bug Report** or **Feature Request** templates. This can lead to unstructured issue submissions.\n * *Recommendation*: Add `bug_report.md` and `feature_request.md` templates.\n\n2. **Static Type Checking**:\n * There is no evidence of strict static type checking (e.g., `mypy` or `pyright`) in `pyproject.toml` or `justfile`.\n * *Recommendation*: Integrate `mypy` into the dev dependencies and the `just check` command to catch type errors early.\n\n3. **Justfile `check` Command**:\n * The `check` command runs `format`, which usually *applies* formatting. In CI or check contexts, it is often better to verify formatting (e.g., `ruff format --check`) rather than modifying files.\n * *Recommendation*: Update `justfile` to have separate `fix` (apply format) and `lint` (check format) commands, or ensure `check` uses non-mutating verification.\n\n4. **Local Dev Setup**:\n * While `uv` is great, ensuring `uv` itself is installed is the first step. Adding a small \"One-line setup\" or check script could further lower the barrier.\n\n### 📋 Action Plan\n\n- [ ] Create `bug_report.md` and `feature_request.md` in `.github/ISSUE_TEMPLATE`.\n- [ ] Add `mypy` to optional dependencies and configure it.\n- [ ] Refine `justfile` commands to distinguish between checking and fixing code.\n","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:47.09959-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:47.09959-05:00","labels":["enhancement","report"]} +{"id":"blackpythondevs.github.io-5ks","title":"Add test that ensures that all pages are accessible to the website","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:50.014932-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:50.014932-05:00"} +{"id":"blackpythondevs.github.io-5sy","title":"Render Engine Migration","status":"open","priority":2,"issue_type":"feature","created_at":"2026-01-17T11:19:57.130896-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:19:57.130896-05:00"} +{"id":"blackpythondevs.github.io-5wl","title":"Standardize CSS Breakpoints","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:39.766607-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:39.766607-05:00"} +{"id":"blackpythondevs.github.io-5xq","title":"GH#805: Redesign Hero Section Layout","description":"Hero section layout needs improvement to stop 'fighting for attention'. Stack image and text vertically (Image above text or vice versa). Align with modern design principles to clear up visual hierarchy","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:19:15.271518-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:19:15.271518-05:00"} +{"id":"blackpythondevs.github.io-64z","title":"Refactor Navigation Menu (GH#806)","description":"Based on recent feedback, the navigation menu is too busy and needs simplification.\n\n**Tasks:**\n- [ ] Rename 'Blog' to 'News'\n- [ ] Remove 'Home' link (the site wordmark/logo already links home)\n- [ ] Combine 'BPD Events' and 'Sponsored Events' into a single 'Events' parent link (as a dropdown or consolidated page)\n- [ ] Combine 'Discounts' and 'Support Us' into a single section (e.g., 'Donate' or 'Support')\n- [ ] Evaluate removing the 'Community' link and merging its content into 'About Us'\n\n**Goal:** Reduce clutter and group related links logically.","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:46.442734-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:46.442734-05:00"} +{"id":"blackpythondevs.github.io-6by","title":"Redesign Hero Section (GH#808)","description":"The current hero section lacks a clear visual hierarchy and 'fights for attention'.\n\n**Suggestions:**\n- [ ] Adjust layout to stack image and text (image above text or vice-versa) to prioritize user attention.\n- [ ] Ensure the design reflects BPD's core values:\n 1. Build/Support Black Leadership in Python\n 2. Support the Communities that Build that Black Leadership\n 3. Raise Money to do 1 \u0026 2","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:46.259469-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:46.259469-05:00"} +{"id":"blackpythondevs.github.io-6gw","title":"Test suite failures after Render Engine migration","status":"open","priority":1,"issue_type":"bug","created_at":"2026-01-17T11:21:45.945536-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:45.945536-05:00"} +{"id":"blackpythondevs.github.io-6wn","title":"Create 'How to Get Support' Page","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:31.74236-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:31.74236-05:00"} +{"id":"blackpythondevs.github.io-77c","title":"Redesign Hero Section","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:26.96898-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:26.96898-05:00"} +{"id":"blackpythondevs.github.io-7qh","title":"Infrastructure \u0026 Tooling","description":"Epic for Infrastructure \u0026 Tooling","status":"open","priority":2,"issue_type":"feature","created_at":"2026-01-17T11:31:45.875526-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:45.875526-05:00","dependencies":[{"issue_id":"blackpythondevs.github.io-7qh","depends_on_id":"blackpythondevs.github.io-9oc","type":"blocks","created_at":"2026-01-17T11:31:46.025957-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-7qh","depends_on_id":"blackpythondevs.github.io-59o","type":"blocks","created_at":"2026-01-17T11:31:47.139862-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-7qh","depends_on_id":"blackpythondevs.github.io-p8s","type":"blocks","created_at":"2026-01-17T11:31:47.340519-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-7qh","depends_on_id":"blackpythondevs.github.io-f3a","type":"blocks","created_at":"2026-01-17T11:31:47.714021-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-7qh","depends_on_id":"blackpythondevs.github.io-xoj","type":"blocks","created_at":"2026-01-17T11:31:47.995587-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-7qh","depends_on_id":"blackpythondevs.github.io-wwo","type":"blocks","created_at":"2026-01-17T11:31:48.092206-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-7qh","depends_on_id":"blackpythondevs.github.io-eoe","type":"blocks","created_at":"2026-01-17T11:31:48.183908-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-7qh","depends_on_id":"blackpythondevs.github.io-1v1","type":"blocks","created_at":"2026-01-17T11:31:48.274636-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-7qh","depends_on_id":"blackpythondevs.github.io-0cz","type":"blocks","created_at":"2026-01-17T11:31:48.369609-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-7qh","depends_on_id":"blackpythondevs.github.io-82s","type":"blocks","created_at":"2026-01-17T11:31:48.46141-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-7qh","depends_on_id":"blackpythondevs.github.io-0il","type":"blocks","created_at":"2026-01-17T11:31:48.643719-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-7qh","depends_on_id":"blackpythondevs.github.io-y8h","type":"blocks","created_at":"2026-01-17T11:31:48.735293-05:00","created_by":"jay.miller"}]} +{"id":"blackpythondevs.github.io-7ya","title":"GH#567: Add blog posts to snapshot tests","description":"Add blog posts to snapshot tests to check for issues. We have way to iterate through blog, so generate snapshots of blog posts as well. This would help check for issues in blog posts. Labels: testing","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:51.314912-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:51.314912-05:00"} +{"id":"blackpythondevs.github.io-82s","title":"Fix security workflow (GH#689)","description":"Currently the security scan has not worked since Jan 2025","status":"open","priority":2,"issue_type":"bug","created_at":"2026-01-17T11:31:48.421345-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:48.421345-05:00"} +{"id":"blackpythondevs.github.io-836","title":"GH#784: Test suite failures from Render Engine migration","description":"Test failures from Jekyll to Render Engine migration: Blog post URL generation tests assume filename-based URLs while Render Engine generates title-based slugs (29 failing tests), Missing language attribute (lang='' instead of lang='en'), Need to verify accessibility issues beyond test assumptions","status":"open","priority":1,"issue_type":"bug","created_at":"2026-01-17T11:21:47.647342-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:47.647342-05:00"} +{"id":"blackpythondevs.github.io-86c","title":"Fix broken images (GH#726)","description":"some images are broken on our blog page. Investigate and help fix them","status":"open","priority":2,"issue_type":"bug","created_at":"2026-01-17T11:31:47.863695-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:47.863695-05:00","labels":["good first issue","hacktoberfest-accepted"]} +{"id":"blackpythondevs.github.io-917","title":"Add Code of Conduct link to footer","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:35.250375-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:35.250375-05:00"} +{"id":"blackpythondevs.github.io-92p","title":"Remove Typefully from sponsors section (GH#799)","description":"Remove the Typefully logo from '_layouts/_includes/join_us.html'.","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:46.72201-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:46.72201-05:00"} +{"id":"blackpythondevs.github.io-98y","title":"Add mypy to dev dependencies and configure","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:56.841239-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:56.841239-05:00"} +{"id":"blackpythondevs.github.io-9ba","title":"GH#686: Update Contributions page for Render Engine","description":"Update Contributions page with new steps for render engine migration","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:30.976817-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:30.976817-05:00"} +{"id":"blackpythondevs.github.io-9im","title":"Audit and Remove jQuery Dependencies","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:40.436072-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:40.436072-05:00"} +{"id":"blackpythondevs.github.io-9oc","title":"Update to new version of frontmatter-check for author list validation (GH#816)","description":"## Summary\nThe local script `scripts/check_author_list.py` and its corresponding pre-commit hook in `.pre-commit-config.yaml` were added as a temporary measure to enforce that the `author` frontmatter field is a list (see PR #815).\n\nThis functionality is expected to be added to the upstream `frontmatter-check` tool.\n\n## Acceptance Criteria\n- [ ] Wait for `frontmatter-check` to release a version supporting author list validation.\n- [ ] Update `.pre-commit-config.yaml` to use the new version of `frontmatter-check`.\n- [ ] Configure `frontmatter-check` to validate the `author` field.\n- [ ] Remove `scripts/check_author_list.py` and the local hook configuration.","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:45.979428-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:45.979428-05:00"} +{"id":"blackpythondevs.github.io-9ph","title":"GH#809: Create 'How to Get Support' Page","description":"Create a dedicated page where people can learn how to get support from the organization. Currently missing a clear pathway for users to understand how to access BPD resources/support","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:25.931163-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:25.931163-05:00"} +{"id":"blackpythondevs.github.io-9pl","title":"Content Updates","status":"open","priority":2,"issue_type":"feature","created_at":"2026-01-17T11:19:54.554803-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:19:54.554803-05:00"} +{"id":"blackpythondevs.github.io-9xb","title":"Create 'How to Get Support' Page (GH#809)","description":"Create a dedicated page where people can learn how to get support from the organization.\n\n**Context:**\nCurrently missing a clear pathway for users to understand how to access BPD resources/support.","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:46.169697-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:46.169697-05:00"} +{"id":"blackpythondevs.github.io-a95","title":"GH#766: Add country flag to leaders bio","description":"Add the country flag of the leadership team to the bio in the about page https://blackpythondevs.com/about.html. Labels: hold","status":"open","priority":4,"issue_type":"task","created_at":"2026-01-17T11:21:05.049051-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:05.049051-05:00"} +{"id":"blackpythondevs.github.io-aut","title":"Enhancement: Integrate ClickUp API for Dynamic Sponsored Event Stats (GH#798)","description":"## Summary\nTo provide up-to-date statistics on the homepage, we want to fetch the count of \"Sponsored Events\" directly from our ClickUp workspace instead of relying solely on the static `_data/sponsored_events.json` file.\n\n## Proposed Changes\n1. **New Module**: Create `clickup_client.py` to handle interactions with the ClickUp API.\n - Function: `fetch_clickup_stats(token, list_id)`\n - Logic: Fetch tasks from the specified list (including closed tasks) and return the count.\n\n2. **App Update**: Modify `app.py` to integrate the client.\n - Check for `CLICKUP_API_TOKEN` and `CLICKUP_LIST_ID` environment variables.\n - If present, use `clickup_client` to fetch the count.\n - If missing or if the API call fails, fall back to the existing local calculation method.\n\n3. **Refactor**: Improve the existing local counting logic using `itertools` for cleaner code (flattening the nested dictionary structure).\n\n## Environment Variables\n- `CLICKUP_API_TOKEN`: Personal Access Token or OAuth token.\n- `CLICKUP_LIST_ID`: The ID of the ClickUp List containing the events.\n","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:46.815072-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:46.815072-05:00"} +{"id":"blackpythondevs.github.io-bj3","title":"GH#750: Fix playwright tests","description":"In migration to render-engine, Playwright broke. Many minor actual issues can be fixed but also issues with live server starting and running to test against","status":"in_progress","priority":1,"issue_type":"bug","created_at":"2026-01-17T11:21:44.55177-05:00","created_by":"jay.miller","updated_at":"2026-01-17T13:29:58.908534-05:00"} +{"id":"blackpythondevs.github.io-bq8","title":"Add link for sponsorship inquiries","status":"open","priority":3,"issue_type":"task","created_at":"2026-01-17T11:21:33.500243-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:33.500243-05:00"} +{"id":"blackpythondevs.github.io-bvq","title":"GH#729: UX Design - Events Navigation","description":"Make events the parent link with sponsored and bpd as dropdown, or rename bpd events to 'in house events'. Labels: good-first-issue, hacktoberfest-accepted, design","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:19:09.807433-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:19:09.807433-05:00"} +{"id":"blackpythondevs.github.io-bvx","title":"GH#808: Redesign Hero Section","description":"The current hero section lacks clear visual hierarchy and 'fights for attention'. Adjust layout to stack image and text (image above/below text) to prioritize user attention. Ensure design reflects BPD core values: 1) Build/Support Black Leadership in Python, 2) Support Communities that Build Black Leadership, 3) Raise Money to do 1 \u0026 2","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:19:13.492723-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:19:13.492723-05:00"} +{"id":"blackpythondevs.github.io-bwa","title":"Add Code of Conduct link to footer (GH#778)","description":"Add a link to the Code of Conduct page in the Quick Links section of the footer. This improves discoverability of the community guidelines and makes it easier for visitors to find our Code of Conduct.","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:47.391432-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:47.391432-05:00"} +{"id":"blackpythondevs.github.io-coi","title":"Make local development significantly easier","status":"open","priority":1,"issue_type":"task","created_at":"2026-01-17T11:21:51.662857-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:51.662857-05:00"} +{"id":"blackpythondevs.github.io-cpr","title":"Add requires-python to pyproject.toml","status":"in_progress","priority":2,"issue_type":"task","created_at":"2026-01-17T13:54:46.821551-05:00","created_by":"jay.miller","updated_at":"2026-01-17T13:54:59.42666-05:00"} +{"id":"blackpythondevs.github.io-czw","title":"GH#753: Add test that ensures all pages are accessible","description":"Pages in /pages have no link to them currently. Some pages need to be visible while others should be removed. Add test to ensure all pages are accessible to the website","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:53.608987-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:53.608987-05:00"} +{"id":"blackpythondevs.github.io-dc3","title":"GH#786: Add GitHub link to footer","description":"Add a link to the GitHub repository in the footer using Font Awesome brand icon (fa-fa brand). Location: _layouts/_includes/footer.html. Labels: enhancement, design","status":"open","priority":3,"issue_type":"task","created_at":"2026-01-17T11:21:03.588753-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:03.588753-05:00"} +{"id":"blackpythondevs.github.io-dcb","title":"GH#720: Remove lang reference","description":"Multiple languages were removed, this should be removed. The condition comparing 'lang' to itself is always true; consider comparing loop variable to current page language","status":"open","priority":3,"issue_type":"task","created_at":"2026-01-17T11:21:08.821127-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:08.821127-05:00"} +{"id":"blackpythondevs.github.io-e4z","title":"Fix playwright tests","status":"open","priority":1,"issue_type":"bug","created_at":"2026-01-17T11:21:42.783492-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:42.783492-05:00"} +{"id":"blackpythondevs.github.io-e72","title":"Content Updates: Support Page and Community Info (GH#810)","description":"**Tasks:**\n- Create a page/section explaining how people can get support from the organization.\n- Ensure Community links (Discord, LinkedIn) are properly placed in 'About Us' or the Front Page, as the specific navigation link is being removed.","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:46.078002-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:46.078002-05:00"} +{"id":"blackpythondevs.github.io-e7h","title":"Replace 'Join LinkedIn Group' with 'Follow us on LinkedIn' (GH#797)","description":"## Summary\nUpdate all references from 'Join LinkedIn Group' to 'Follow us on LinkedIn' and point to the company page instead of the group.\n\n## Current State\nCurrently, the site links to the LinkedIn group: https://www.linkedin.com/groups/14336241/\n\n## Desired State\nUpdate to point to the company page: https://www.linkedin.com/company/black-python-devs\n\n## Files to Update\nThe following files contain references that need to be updated:\n\n1. `_layouts/_includes/join_us.html:9-10` - Button link and text\n2. `pages/community.md:33` - LinkedIn group reference\n3. `_posts/2024-01-12-black-python-devs-is-sponsoring-pytexas.md:28` - Post reference\n\n## Acceptance Criteria\n- [ ] All LinkedIn group URLs updated to company page URL\n- [ ] All \"Join our LinkedIn Group\" text updated to \"Follow us on LinkedIn\"\n- [ ] Links tested and working","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:46.90728-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:46.90728-05:00"} +{"id":"blackpythondevs.github.io-e8m","title":"GH#721: Add integrity check or download assets locally","description":"Either add integrity check or download and call from local source for external assets","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:06.600283-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:06.600283-05:00"} +{"id":"blackpythondevs.github.io-eae","title":"create blog collection for posts","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:22:00.604592-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:22:00.604592-05:00"} +{"id":"blackpythondevs.github.io-eoe","title":"Update unless tag (GH#719)","description":"Currently not breaking anything (maybe a11y)\r\n\r\nThe condition in the 'unless' tag is malformed; it likely should be written as {% unless entry.platform == \"rss\" %}.\r\n```suggestion\r\n \u003ca {% unless entry.platform == \"rss\" %}rel=\"me\" {% endunless %}href=\"{{ entry.user_url }}\" target=\"_blank\" title=\"{{ entry.title | default: entry.platform }}\"\u003e\r\n```\r\n\r\n_Originally posted by @Copilot in https://github.com/BlackPythonDevs/blackpythondevs.github.io/pull/717#discussion_r2169998093_\r\n ","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:48.143782-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:48.143782-05:00"} +{"id":"blackpythondevs.github.io-f3a","title":"Fix playwright tests (GH#750)","description":"In our migration to render-engine - Playwright broke. \n\nThere were a lot of minor actual issues that can be fixed but also we've had issues with the live server starting and running so that we can actually test against the issues.","status":"open","priority":2,"issue_type":"bug","created_at":"2026-01-17T11:31:47.673209-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:47.673209-05:00"} +{"id":"blackpythondevs.github.io-ftk","title":"GH#685: Update docs from Jekyll to Render Engine","description":"Update docs from saying built with Jekyll to built with Render Engine. Labels: good-first-issue","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:32.420814-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:32.420814-05:00"} +{"id":"blackpythondevs.github.io-gdr","title":"Navigation \u0026 UX Redesign","status":"open","priority":2,"issue_type":"feature","created_at":"2026-01-17T11:19:53.903982-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:19:53.903982-05:00"} +{"id":"blackpythondevs.github.io-gjb","title":"Refactor Navigation Menu","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:29.273788-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:29.273788-05:00"} +{"id":"blackpythondevs.github.io-hd8","title":"create events collection for workshops leadership summit","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:22:01.237137-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:22:01.237137-05:00"} +{"id":"blackpythondevs.github.io-hgz","title":"GH#788: Website Frontend Audit Report","description":"Frontend audit findings: Standardize breakpoints (600px, 768px, 800px, 1080px inconsistent), Audit jQuery usage and refactor to Vanilla JS, Refactor CSS to remove !important tags, Investigate merging/minifying custom CSS assets. Labels: report, design, a11y, performance","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:01.303501-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:01.303501-05:00"} +{"id":"blackpythondevs.github.io-hpo","title":"GH#719: Update unless tag","description":"Currently not breaking anything (maybe a11y). The condition in the 'unless' tag is malformed; should be {% unless entry.platform == 'rss' %}","status":"open","priority":3,"issue_type":"task","created_at":"2026-01-17T11:21:10.950843-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:10.950843-05:00"} +{"id":"blackpythondevs.github.io-ibm","title":"Asset Management","status":"open","priority":2,"issue_type":"feature","created_at":"2026-01-17T11:19:58.324475-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:19:58.324475-05:00"} +{"id":"blackpythondevs.github.io-ihy","title":"Testing Infrastructure","status":"open","priority":2,"issue_type":"feature","created_at":"2026-01-17T11:19:55.831842-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:19:55.831842-05:00"} +{"id":"blackpythondevs.github.io-k4b","title":"Redesign Hero Section Layout","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:27.711499-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:27.711499-05:00"} +{"id":"blackpythondevs.github.io-k8e","title":"Website Frontend Audit Report (GH#788)","description":"## Website Frontend Audit Report\n\nThis report summarizes findings regarding the frontend architecture, design implementation, and user experience of the website.\n\n### ✅ Strengths\n\n1. **Accessibility (A11y)**:\n * Strong use of semantic HTML (`\u003cheader\u003e`, `\u003cmain\u003e`, `\u003cfooter\u003e`, `\u003cnav\u003e`).\n * Proper use of ARIA labels and roles (`role=\"banner\"`, `aria-label=\"Main navigation\"`).\n * Implementation of `.screen-reader-text` class for accessible hidden content.\n * `lang` attribute dynamically set on `\u003chtml\u003e` tag.\n2. **Framework Choice**:\n * Use of **Pico CSS** provides a lightweight, semantic-first foundation.\n3. **Responsive Design**:\n * Mobile navigation menu implementation exists.\n * Footer grid adapts from 3 columns to 1 column on smaller screens.\n\n### ⚠️ Areas for Improvement\n\n1. **CSS Architecture \u0026 Maintainability**:\n * **Specificity Wars**: usage of `!important` in `bpd.css` (e.g., `ul li`, `a[role=\"button\"]`) suggests difficulty overriding framework styles. This makes future maintenance harder.\n * **Inconsistent Breakpoints**: Media queries use a mix of values: `600px`, `768px`, `800px`, `1080px`. This can lead to unpredictable layout behavior on intermediate devices.\n * **Tight Coupling**: Specific selectors like `article.pico-background-pumpkin-650` couple the custom CSS tightly to specific content choices.\n\n2. **Performance**:\n * **jQuery Dependency**: `jquery.min.js` is loaded. If this is only used for the mobile menu toggle or simple interactions, it should be replaced with vanilla JavaScript to reduce page load weight.\n * **CSS Requests**: Multiple CSS files are loaded (`pico.min.css`, `pico.colors.min.css`, `bpd.css`).\n * **Unminified Assets**: `bpd.css` is served unminified.\n\n3. **Design System**:\n * The \"Language Switcher\" implementation in the header is functional but could be styled to match the native OS or Pico theme better.\n\n### 📋 Action Plan\n\n- [ ] **Standardize Breakpoints**: Define a clear set of breakpoints (e.g., Mobile, Tablet, Desktop) and refactor CSS to use them consistently.\n- [ ] **Audit jQuery Usage**: Identify where jQuery is used and refactor to Vanilla JS if possible.\n- [ ] **Refactor CSS**: Remove `!important` tags by increasing specificity or adjusting load order/Pico configuration.\n- [ ] **Performance**: Investigate merging or minifying custom CSS assets during the build process.\n","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:46.999528-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:46.999528-05:00","labels":["a11y","design","performance","report"]} +{"id":"blackpythondevs.github.io-l0s","title":"Add test that ensures that all pages are accessible to the website\n (GH#753)","description":"I found pages in the /pages have no link to them currently. Some of those pages need to be visible while others should be removed.\n","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:47.578839-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:47.578839-05:00"} +{"id":"blackpythondevs.github.io-l2q","title":"Website Frontend Audit Report","status":"open","priority":1,"issue_type":"feature","created_at":"2026-01-17T11:21:38.738582-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:38.738582-05:00"} +{"id":"blackpythondevs.github.io-lb5","title":"Refactor CSS to Remove !important Tags","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:41.333146-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:41.333146-05:00"} +{"id":"blackpythondevs.github.io-lg6","title":"Implement CSS Minification in Build Process","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:41.980019-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:41.980019-05:00"} +{"id":"blackpythondevs.github.io-lv5","title":"Epic: Feature Enhancements","status":"open","priority":2,"issue_type":"feature","created_at":"2026-01-17T11:18:52.742719-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:18:52.742719-05:00"} +{"id":"blackpythondevs.github.io-mat","title":"Create bug_report.md and feature_request.md templates","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:56.011521-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:56.011521-05:00"} +{"id":"blackpythondevs.github.io-mdi","title":"Create Location Snippet","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:22:03.034977-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:22:03.034977-05:00"} +{"id":"blackpythondevs.github.io-nna","title":"Epic: Infrastructure \u0026 Tooling","status":"open","priority":2,"issue_type":"feature","created_at":"2026-01-17T11:18:51.501922-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:18:51.501922-05:00"} +{"id":"blackpythondevs.github.io-npp","title":"GH#344: Add sponsorship section to Conferences page","description":"Add section on Conferences page below conference list: Link to prospectus (in development), Quick outline of sponsorship types (Community Sponsor - Tickets for Local Black Python Developers, Commitment Sponsor - Multi-year commitment). Labels: content","status":"open","priority":3,"issue_type":"task","created_at":"2026-01-17T11:21:35.235007-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:35.235007-05:00"} +{"id":"blackpythondevs.github.io-oag","title":"Fix failing accessibility test","status":"open","priority":2,"issue_type":"bug","created_at":"2026-01-17T11:21:46.76599-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:46.76599-05:00"} +{"id":"blackpythondevs.github.io-ohs","title":"Add link for sponsorship inquiries (GH#800)","description":"Add a small link in the 'Corporate Sponsors' section of '_layouts/_includes/join_us.html' for visitors to ask about sponsorship opportunities.","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:46.630606-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:46.630606-05:00"} +{"id":"blackpythondevs.github.io-p2y","title":"Migrate Site to Render Engine","status":"open","priority":0,"issue_type":"feature","created_at":"2026-01-17T11:21:58.711698-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:58.711698-05:00"} +{"id":"blackpythondevs.github.io-p8s","title":"I reran the test suite with verbose logging to investigate the failures. Most of the failures are test-related issues introduced during the migration from Jekyll to Render Engine . (GH#784)","description":"I reran the test suite with verbose logging to investigate the failures. Most of the failures are test-related issues introduced during the migration from Jekyll to Render Engine .\r\n\r\nTest fixed:\r\n\r\n- Updated the email link selector from email to contact@blackpythondevs.com\r\n- Fixed the blog description test to match the actual HTML structure (article elements instead of p.post-description\r\n- Corrected title format expectations to match actual output ('Page | Black Python Devs' instead of 'Black Python Devs | Page')\r\n\r\nRemaining issues:\r\n\r\n- Blog post URL generation tests still assume filename-based URLs (e.g. /blog/2024-05-25-filename.html), while the Render Engine generates title-based slugs (e.g. /blog/title-based-slug.html) -\u003e 29 failing tests\r\n- Missing language attribute: pages currently render lang=\"\" instead of lang=\"en\"\r\n- I still need to verify whether there are any accessibility issues beyond test assumptions\r\n\r\nLet me know how you'd like to proceed on the remaining items.\r\n\r\n_Originally posted by @danielcristho in https://github.com/BlackPythonDevs/blackpythondevs.github.io/issues/782#issuecomment-3707405095_\r\n ","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:47.298586-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:47.298586-05:00"} +{"id":"blackpythondevs.github.io-pjb","title":"Add country flag to leaders bio (GH#766)","description":"Add the country flag of the leadership team to the bio in the about page https://blackpythondevs.com/about.html","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:47.484004-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:47.484004-05:00","labels":["hold"]} +{"id":"blackpythondevs.github.io-pv1","title":"Add blog posts to snapshot tests","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:47.699692-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:47.699692-05:00"} +{"id":"blackpythondevs.github.io-q1b","title":"Simplify and Refactor Navigation Menu","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:28.441246-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:28.441246-05:00"} +{"id":"blackpythondevs.github.io-qfo","title":"Remove Typefully from sponsors section","status":"open","priority":3,"issue_type":"task","created_at":"2026-01-17T11:21:34.520723-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:34.520723-05:00"} +{"id":"blackpythondevs.github.io-qqw","title":"Add GitHub link to footer (GH#786)","description":"Add a link to the GitHub repository in the footer. \n\nThe implementation should use a Font Awesome brand icon (fa-fa brand) as requested.\n\nCurrent footer location: `_layouts/_includes/footer.html`\n","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:47.196218-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:47.196218-05:00","labels":["design","enhancement"]} +{"id":"blackpythondevs.github.io-r2r","title":"Epic: Frontend Architecture \u0026 Design System","status":"open","priority":1,"issue_type":"feature","created_at":"2026-01-17T11:18:49.632363-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:18:49.632363-05:00"} +{"id":"blackpythondevs.github.io-r6k","title":"GH#654: Fix failing accessibility test","description":"Fix the failing accessibility test on PR #651","status":"open","priority":2,"issue_type":"bug","created_at":"2026-01-17T11:21:48.899382-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:48.899382-05:00"} +{"id":"blackpythondevs.github.io-snp","title":"GH#806: Refactor Navigation Menu","description":"Based on recent feedback, the navigation menu is too busy and needs simplification. Tasks: Rename 'Blog' to 'News', Remove 'Home' link (wordmark links home), Combine 'BPD Events' and 'Sponsored Events' into single 'Events' parent, Combine 'Discounts' and 'Support Us', Evaluate removing 'Community' link and merging into 'About Us'","status":"open","priority":1,"issue_type":"task","created_at":"2026-01-17T11:19:04.869855-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:19:04.869855-05:00"} +{"id":"blackpythondevs.github.io-ted","title":"Events \u0026 Collections","status":"open","priority":2,"issue_type":"feature","created_at":"2026-01-17T11:19:58.899992-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:19:58.899992-05:00"} +{"id":"blackpythondevs.github.io-tzb","title":"Developer Experience Improvements","status":"open","priority":2,"issue_type":"feature","created_at":"2026-01-17T11:19:56.480945-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:19:56.480945-05:00"} +{"id":"blackpythondevs.github.io-u7a","title":"GH#718: Fix loop names","description":"Loop is working currently so no need to change until cleaning up and refactoring","status":"open","priority":3,"issue_type":"task","created_at":"2026-01-17T11:21:12.238767-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:12.238767-05:00"} +{"id":"blackpythondevs.github.io-u9t","title":"Site Redesign \u0026 UX Improvements","description":"Epic for Site Redesign \u0026 UX Improvements","status":"open","priority":2,"issue_type":"feature","created_at":"2026-01-17T11:31:45.82361-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:45.82361-05:00","dependencies":[{"issue_id":"blackpythondevs.github.io-u9t","depends_on_id":"blackpythondevs.github.io-6by","type":"blocks","created_at":"2026-01-17T11:31:46.30068-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-u9t","depends_on_id":"blackpythondevs.github.io-64z","type":"blocks","created_at":"2026-01-17T11:31:46.482656-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-u9t","depends_on_id":"blackpythondevs.github.io-3go","type":"blocks","created_at":"2026-01-17T11:31:46.577497-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-u9t","depends_on_id":"blackpythondevs.github.io-92p","type":"blocks","created_at":"2026-01-17T11:31:46.763393-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-u9t","depends_on_id":"blackpythondevs.github.io-k8e","type":"blocks","created_at":"2026-01-17T11:31:47.04354-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-u9t","depends_on_id":"blackpythondevs.github.io-qqw","type":"blocks","created_at":"2026-01-17T11:31:47.244528-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-u9t","depends_on_id":"blackpythondevs.github.io-w85","type":"blocks","created_at":"2026-01-17T11:31:47.809944-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-u9t","depends_on_id":"blackpythondevs.github.io-86c","type":"blocks","created_at":"2026-01-17T11:31:47.903789-05:00","created_by":"jay.miller"}]} +{"id":"blackpythondevs.github.io-uc6","title":"create settings file","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:59.471319-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:59.471319-05:00"} +{"id":"blackpythondevs.github.io-w85","title":"Ux design issue (GH#729)","description":"Hey @kjaymiller why don't we have events as the parent link while sponsored and bpd become a drop down and/or rename bpd events to \"in house events\"\n\u003cimg width=\"350\" height=\"140\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/084bff89-a774-4d00-8206-990e61343fe7\" /\u003e","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:47.766532-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:47.766532-05:00","labels":["design","good first issue","hacktoberfest-accepted"]} +{"id":"blackpythondevs.github.io-w8m","title":"Add all contributors (GH#688)","description":"## Description\nWe should implement the [all-contributors](https://allcontributors.org/) specification to recognize all people who contribute to our project, not just code contributors. This will help us acknowledge various types of contributions including documentation, design, testing, and more.\n\n## Motivation\n- Properly recognize all contributors regardless of contribution type\n- Create a more inclusive environment that values all forms of contribution\n- Provide clear documentation of who has helped with the project and how\n- Encourage more diverse contributions by showing we value all types of help\n\n## Implementation Plan\n- [ ] Initialize the specification: `npx all-contributors init`\n- [ ] Add existing contributors using the CLI: `npx all-contributors add \u003cusername\u003e \u003ccontribution-type\u003e`\n- [ ] Set up a .all-contributorsrc configuration file\n- [ ] Add the contributors table to our README.md\n- [ ] Document the process for adding new contributors in CONTRIBUTING.md\n\n## Additional Details\n- Contribution types to recognize: code, doc, design, bug, test, ideas, review, talk, tutorial, etc.\n- CLI will maintain both .all-contributorsrc and README.md files automatically\n- We can configure the bot to automatically suggest adding new contributors\n\n## Questions\n- Should we use the all-contributors bot for automated PRs?\n- What emoji/acknowledgment style should we use for the contributors table?\n- Should we include the contributors table at the top or bottom of the README?\n\n## Resources\n- [all-contributors documentation](https://allcontributors.org/docs/en/overview)\n- [Example repositories using all-contributors](https://github.com/all-contributors/all-contributors/blob/master/README.md#who-uses-it)","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:48.512673-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:48.512673-05:00","labels":["good first issue"]} +{"id":"blackpythondevs.github.io-w9s","title":"Security \u0026 CI/CD","status":"open","priority":2,"issue_type":"feature","created_at":"2026-01-17T11:19:57.787254-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:19:57.787254-05:00"} +{"id":"blackpythondevs.github.io-wha","title":"Simplify and Refactor Navigation Menu (GH#807)","description":"Reduce clutter in the top navigation bar.\n\n**Tasks:**\n- Remove 'Home' link (Wordmark serves this purpose).\n- Rename 'Blog' to 'News'.\n- Combine 'BPD Events' and 'Sponsored Events' into a single 'Events' parent or page.\n- Remove 'Community' link (move content to Home/About Us).\n- Combine 'Discounts' and 'Support Us' sections.","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:46.352616-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:46.352616-05:00"} +{"id":"blackpythondevs.github.io-wwo","title":"[Remove] lang reference (GH#720)","description":"Multiple languages were removed... this should be removed.\r\n\r\nThe condition comparing 'lang' to itself is always true; consider comparing the loop variable to the current page language (e.g. {% if page.lang == lang %}).\r\n\r\n_Originally posted by @Copilot in https://github.com/BlackPythonDevs/blackpythondevs.github.io/pull/717#discussion_r2169998101_\r\n ","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:48.048681-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:48.048681-05:00"} +{"id":"blackpythondevs.github.io-xiq","title":"Update docs from saying built with Jekyll to built with Render Engine","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:53.899863-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:53.899863-05:00"} +{"id":"blackpythondevs.github.io-xoj","title":"either add integrity check or download and call from local source (GH#721)","description":"either add integrity check or download and call from local source\r\n\r\n_Originally posted by @kjaymiller in https://github.com/BlackPythonDevs/blackpythondevs.github.io/pull/717#discussion_r2170032246_\r\n ","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:47.955026-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:47.955026-05:00"} +{"id":"blackpythondevs.github.io-y8h","title":"Update Contributions page with new steps for render engine (GH#686)","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:48.694758-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:48.694758-05:00"} +{"id":"blackpythondevs.github.io-yqh","title":"Add country flag to leaders bio","status":"open","priority":3,"issue_type":"task","created_at":"2026-01-17T11:21:36.750817-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:36.750817-05:00"} +{"id":"blackpythondevs.github.io-ytl","title":"GH#726: Fix broken images","description":"Some images are broken on blog page. Investigate and help fix them. Labels: good-first-issue, hacktoberfest-accepted","status":"open","priority":2,"issue_type":"bug","created_at":"2026-01-17T11:21:13.704202-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:13.704202-05:00"} +{"id":"blackpythondevs.github.io-ywa","title":"Epic: Content \u0026 Documentation","status":"open","priority":2,"issue_type":"feature","created_at":"2026-01-17T11:18:50.228742-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:18:50.228742-05:00"} +{"id":"blackpythondevs.github.io-zz0","title":"GH#807: Simplify and Refactor Navigation Menu","description":"Reduce clutter in the top navigation bar. Remove 'Home' link (Wordmark serves this purpose), Rename 'Blog' to 'News', Combine 'BPD Events' and 'Sponsored Events' into single 'Events' parent, Remove 'Community' link (move to Home/About Us), Combine 'Discounts' and 'Support Us' sections","status":"open","priority":1,"issue_type":"task","created_at":"2026-01-17T11:19:07.18361-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:19:07.18361-05:00"} diff --git a/.beads/last-touched b/.beads/last-touched new file mode 100644 index 00000000..a03a0ebf --- /dev/null +++ b/.beads/last-touched @@ -0,0 +1 @@ +blackpythondevs.github.io-cpr diff --git a/.beads/metadata.json b/.beads/metadata.json new file mode 100644 index 00000000..f581edc0 --- /dev/null +++ b/.beads/metadata.json @@ -0,0 +1,4 @@ +{ + "database": "beads.db", + "jsonl_export": "issues.jsonl" +} diff --git a/.beads/sync-state.json b/.beads/sync-state.json new file mode 100644 index 00000000..9867e674 --- /dev/null +++ b/.beads/sync-state.json @@ -0,0 +1,7 @@ +{ + "last_failure": "2026-01-17T13:55:44.480694-05:00", + "failure_count": 1, + "backoff_until": "2026-01-17T13:56:14.480694-05:00", + "needs_manual_sync": false, + "failure_reason": "git pull failed: exit status 128\nerror: Pulling is not possible because you have unmerged files.\nhint: Fix them up in the work tree, and then use 'git add/rm \u003cfile\u003e'\nhint: as appropriate to mark resolution and make a commit.\nfatal: Exiting because of an unresolved conflict.\n" +} diff --git a/.gitattributes b/.gitattributes index 33aada38..c5ca64c2 100644 --- a/.gitattributes +++ b/.gitattributes @@ -8,3 +8,6 @@ *.gif binary _site/* -text -diff -merge + +# Use bd merge for beads JSONL files +.beads/issues.jsonl merge=beads diff --git a/pyproject.toml b/pyproject.toml index 044d23c7..64fab8be 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -2,6 +2,7 @@ name = "blackpythondevs-site" version = "0.1.0" description = "Black Python Devs community website" +requires-python = ">=3.13" dependencies = ["render-engine[cli]>=2025.7.1a1", "pyyaml"] [project.optional-dependencies] diff --git a/uv.lock b/uv.lock index 7a5b0bb2..77c364a0 100644 --- a/uv.lock +++ b/uv.lock @@ -39,14 +39,14 @@ wheels = [ [[package]] name = "axe-playwright-python" -version = "0.1.4" +version = "0.1.7" source = { registry = "https://pypi.org/simple" } dependencies = [ { name = "playwright" }, ] -sdist = { url = "https://files.pythonhosted.org/packages/6c/e6/1b5f21cb55fa7fcba64a1efe9989208650f87b3e23ff23d79dadfb83b41f/axe_playwright_python-0.1.4.tar.gz", hash = "sha256:100f2f4af4525eea231bcc527ac40593805523e1433984e048fde28fea1d488a", size = 148933, upload-time = "2023-07-25T13:15:23.249Z" } +sdist = { url = "https://files.pythonhosted.org/packages/74/90/684e8ae7e7563318d197f1bfbacd561a19716e6cdb6420e7e97ef49d427c/axe_playwright_python-0.1.7.tar.gz", hash = "sha256:f0f3d59061abbaee9990d0309f855210ec8fd6ca5bf076f39210289ac0961258", size = 189815, upload-time = "2025-12-01T05:19:31.061Z" } wheels = [ - { url = "https://files.pythonhosted.org/packages/ce/1b/3fdbaba9260311a0bbb1d387242032da4fe2b83b14670d487d141caded7a/axe_playwright_python-0.1.4-py3-none-any.whl", hash = "sha256:74c0993ac92c2ede522c56bf2cdda42216b22af53c4d94a684767fd42883c7fb", size = 116731, upload-time = "2023-07-25T13:15:17.42Z" }, + { url = "https://files.pythonhosted.org/packages/02/b0/6460c11d515cb09d90993e948c730a3d4b6673cc5cd99663179bbc48a758/axe_playwright_python-0.1.7-py3-none-any.whl", hash = "sha256:8699e904466cc2206fa2fa414b4d59aab68e34ba8449c6d082896ca1950440e2", size = 156509, upload-time = "2025-12-01T05:19:29.285Z" }, ] [[package]] @@ -86,7 +86,7 @@ dev = [ [package.metadata] requires-dist = [ { name = "axe-core-python", marker = "extra == 'dev'", specifier = "==0.1.0" }, - { name = "axe-playwright-python", marker = "extra == 'dev'", specifier = "==0.1.4" }, + { name = "axe-playwright-python", marker = "extra == 'dev'", specifier = "==0.1.7" }, { name = "ephemeral-port-reserve", marker = "extra == 'dev'" }, { name = "pre-commit", marker = "extra == 'dev'" }, { name = "pytest-playwright", marker = "extra == 'dev'" }, From 24f509c121b3a90c56e149496b1543723bce9c32 Mon Sep 17 00:00:00 2001 From: Jay Miller Date: Sat, 17 Jan 2026 13:56:42 -0500 Subject: [PATCH 2/5] Close task: Add requires-python --- .beads/beads.db | Bin 487424 -> 487424 bytes .beads/beads.db-shm | Bin 32768 -> 32768 bytes .beads/beads.db-wal | Bin 238992 -> 148352 bytes .beads/issues.jsonl | 2 +- .beads/sync-state.json | 10 +++++----- 5 files changed, 6 insertions(+), 6 deletions(-) diff --git a/.beads/beads.db b/.beads/beads.db index 41c19ca22bd719d834a68582bd5c7643cc7d8098..d524aec30c7d9a3f8fe7799d79dfd566a2c041a8 100644 GIT binary patch delta 903 zcmY+DTSyd97{|{y*KKFES#RkiTWe|%=`ypkGvlRFvk)p#x`{>T>@71dsY?<;y7|y! zhS-5#B2aqiA=%nv4`vTiFHyc&4+d@z)q_L^B1R82I$aMOIPl$m-}nE{aK<;B@r@Q{ zl_G=&e_c01ROziU4N9ll$0g8GYm(Q`Eh1r2_?Qxv*Mi$k%Mj`69f(CoK2(zr)v%p` ziF7R(Lql4XZd3)8fM$fWP^etds}$ul!>CD5=Rj{yS6igFClTvOv~^em9h#!V!is8! zqhUP~uhg`NW*LeZiN>|K9y8-n!&EKZibS+f%rvYDMX|!sN;6&=(@Z^DVHDD|uiWP7 ziM3sbs&UiMb@F%?n!GefGlZXqHxj`Px}gLeBD+Nd(h`!Eq#5kZKpOiq zz>wz|FeP{7Qomz=NB9-^B;{;$^nbjEKrQ^(nf6m_qpm}Ietjtm_6^42; zI7OuZ4wAhos(^OY@%gQ`%c%{QqOo3T+gLFjzz@?@71ZM8G<6ed@Kr)}x(+zGc5XQO z$L`W1mZzy>uKj#|jUAumlo*+&T4CSVQ_f)fM!X}{q~Hnl`8F>gBp|^<#AbTcEr^T^ zzeKtroTZ6ymie|So`APVdcy{#2k@3`ZDwBpvxjMr@x8-rpG_)V_S#n=LrkiHsjyxl#AT!;B$cAc5C!yYkt*VTm9ko2^8>?1>- z2Q?NoHe%JqI?39DAUCbCJpVBqtuBPx9X}zrx+8`0qB%Q6A^6b2;2bQhO%$d!@xqi(k;zhn_m| zOG?eW7lo!|$rjWg7a?TRi_@% delta 649 zcmYk2Ur1A77{cFw2=?mgQF4Kqw^F zE~2Y+%f8E?kZ!tAM*HkS?W!)_jk}3x7ikv}7>F8P)R6`G!h7}pp67jdrt(!&`Ksxo z#ZH9K#J^P$!epk=1I~q^SqhcuZE85A9MU$lT-xSZ)znb%UL-sk8Hq*{>ur3!4UUNL zI@1ZQkLuliPqW|M(&Y0sx18~wc6t3S*JV+3$MvyjICM97BOHp2gkmha3|;)y3Je

IPD}WGC4bH!LbAmOQ30&$+lB(5-R8 zVI6fdV^wTtWpmOk<3L^;HAafwRs#0@O0j0{W+Y#SGTXWe`x(nbvcoWU_J delta 154 zcmZo@U}|V!s+V}A%K!qLK+MR%Aixf!%YoS8)m(?dT{&mAt*gboHfjJJ6f}7N diff --git a/.beads/beads.db-wal b/.beads/beads.db-wal index 41b52181d470f7afb521564506ed05c60368b873..e1e95f90bd0cc5196140b0fb05b0ce084fcb2e02 100644 GIT binary patch delta 1970 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 z Date: Sat, 17 Jan 2026 15:06:35 -0500 Subject: [PATCH 3/5] Add requires-python to pyproject.toml (#820) * Initial plan * Remove .beads directory and add to .gitignore Co-authored-by: kjaymiller <8632637+kjaymiller@users.noreply.github.com> --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: kjaymiller <8632637+kjaymiller@users.noreply.github.com> --- .beads/.local_version | 1 - .beads/beads.base.jsonl | 115 ----------------------------------- .beads/beads.base.meta.json | 1 - .beads/beads.db | Bin 487424 -> 0 bytes .beads/beads.db-shm | Bin 32768 -> 0 bytes .beads/beads.db-wal | Bin 148352 -> 0 bytes .beads/beads.left.jsonl | 115 ----------------------------------- .beads/beads.left.meta.json | 1 - .beads/daemon.lock | 7 --- .beads/daemon.pid | 1 - .beads/issues.jsonl | 116 ------------------------------------ .beads/last-touched | 1 - .beads/metadata.json | 4 -- .beads/sync-state.json | 7 --- .gitignore | 1 + 15 files changed, 1 insertion(+), 369 deletions(-) delete mode 100644 .beads/.local_version delete mode 100644 .beads/beads.base.jsonl delete mode 100644 .beads/beads.base.meta.json delete mode 100644 .beads/beads.db delete mode 100644 .beads/beads.db-shm delete mode 100644 .beads/beads.db-wal delete mode 100644 .beads/beads.left.jsonl delete mode 100644 .beads/beads.left.meta.json delete mode 100644 .beads/daemon.lock delete mode 100644 .beads/daemon.pid delete mode 100644 .beads/issues.jsonl delete mode 100644 .beads/last-touched delete mode 100644 .beads/metadata.json delete mode 100644 .beads/sync-state.json diff --git a/.beads/.local_version b/.beads/.local_version deleted file mode 100644 index 30109231..00000000 --- a/.beads/.local_version +++ /dev/null @@ -1 +0,0 @@ -0.46.0 diff --git a/.beads/beads.base.jsonl b/.beads/beads.base.jsonl deleted file mode 100644 index df796d94..00000000 --- a/.beads/beads.base.jsonl +++ /dev/null @@ -1,115 +0,0 @@ -{"id":"blackpythondevs.github.io-0cz","title":"Author in frontmatter should be list to simplify template and check in pre-commit (GH#707)","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:48.326927-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:48.326927-05:00"} -{"id":"blackpythondevs.github.io-0h0","title":"Ux design issue","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:29.910126-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:29.910126-05:00"} -{"id":"blackpythondevs.github.io-0hf","title":"Add GitHub link to footer","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:35.983315-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:35.983315-05:00"} -{"id":"blackpythondevs.github.io-0il","title":"update devcontainers to use standard python image (GH#687)","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:48.603979-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:48.603979-05:00"} -{"id":"blackpythondevs.github.io-13v","title":"Content Updates: Support Page and Community Info","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:30.918377-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:30.918377-05:00"} -{"id":"blackpythondevs.github.io-1og","title":"GH#810: Content Updates: Support Page and Community Info","description":"Create a page/section explaining how people can get support from the organization. Ensure Community links (Discord, LinkedIn) are properly placed in 'About Us' or the Front Page, as the specific navigation link is being removed","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:24.138082-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:24.138082-05:00"} -{"id":"blackpythondevs.github.io-1r1","title":"Update Contributions page with new steps for render engine","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:52.722325-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:52.722325-05:00"} -{"id":"blackpythondevs.github.io-1v1","title":"Fix loop names (GH#718)","description":"Should be a new issue....\r\n\r\n_Originally posted by @kjaymiller in https://github.com/BlackPythonDevs/blackpythondevs.github.io/pull/717#discussion_r2170013151_\r\n\r\n\r\nThe loop is working currently so no need to change until cleaning up and refactoring.","status":"open","priority":2,"issue_type":"bug","created_at":"2026-01-17T11:31:48.235089-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:48.235089-05:00"} -{"id":"blackpythondevs.github.io-1vj","title":"Use Playwright to Create a screenshot of the built page changes","status":"open","priority":3,"issue_type":"feature","created_at":"2026-01-17T11:21:48.900737-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:48.900737-05:00"} -{"id":"blackpythondevs.github.io-1vv","title":"Refine justfile commands to distinguish checking vs fixing","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:57.898128-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:57.898128-05:00"} -{"id":"blackpythondevs.github.io-1y1","title":"Replace 'Join LinkedIn Group' with 'Follow us on LinkedIn'","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:32.605373-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:32.605373-05:00"} -{"id":"blackpythondevs.github.io-23g","title":"Epic: Security \u0026 Maintenance","status":"open","priority":1,"issue_type":"feature","created_at":"2026-01-17T11:18:52.102444-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:18:52.102444-05:00"} -{"id":"blackpythondevs.github.io-2dl","title":"Frontend Audit Implementation","status":"open","priority":2,"issue_type":"feature","created_at":"2026-01-17T11:19:55.255487-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:19:55.255487-05:00"} -{"id":"blackpythondevs.github.io-2s9","title":"Technical Debt \u0026 Cleanup","status":"open","priority":2,"issue_type":"feature","created_at":"2026-01-17T11:20:00.260922-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:20:00.260922-05:00"} -{"id":"blackpythondevs.github.io-3go","title":"Redesign Hero Section Layout (GH#805)","description":"The hero section layout needs improvement to stop 'fighting for attention'.\n\n**Tasks:**\n- Stack image and text vertically (Image above text or vice versa).\n- Align with modern design principles to clear up visual hierarchy.","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:46.533248-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:46.533248-05:00"} -{"id":"blackpythondevs.github.io-3py","title":"update devcontainers to use standard python image","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:54.966909-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:54.966909-05:00"} -{"id":"blackpythondevs.github.io-3tf","title":"Content \u0026 Community","description":"Epic for Content \u0026 Community","status":"open","priority":2,"issue_type":"feature","created_at":"2026-01-17T11:31:45.926288-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:45.926288-05:00","dependencies":[{"issue_id":"blackpythondevs.github.io-3tf","depends_on_id":"blackpythondevs.github.io-e72","type":"blocks","created_at":"2026-01-17T11:31:46.118511-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-3tf","depends_on_id":"blackpythondevs.github.io-9xb","type":"blocks","created_at":"2026-01-17T11:31:46.209157-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-3tf","depends_on_id":"blackpythondevs.github.io-wha","type":"blocks","created_at":"2026-01-17T11:31:46.392118-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-3tf","depends_on_id":"blackpythondevs.github.io-ohs","type":"blocks","created_at":"2026-01-17T11:31:46.670949-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-3tf","depends_on_id":"blackpythondevs.github.io-aut","type":"blocks","created_at":"2026-01-17T11:31:46.854922-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-3tf","depends_on_id":"blackpythondevs.github.io-e7h","type":"blocks","created_at":"2026-01-17T11:31:46.945839-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-3tf","depends_on_id":"blackpythondevs.github.io-bwa","type":"blocks","created_at":"2026-01-17T11:31:47.432491-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-3tf","depends_on_id":"blackpythondevs.github.io-pjb","type":"blocks","created_at":"2026-01-17T11:31:47.526385-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-3tf","depends_on_id":"blackpythondevs.github.io-l0s","type":"blocks","created_at":"2026-01-17T11:31:47.621654-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-3tf","depends_on_id":"blackpythondevs.github.io-w8m","type":"blocks","created_at":"2026-01-17T11:31:48.552072-05:00","created_by":"jay.miller"}]} -{"id":"blackpythondevs.github.io-3wi","title":"Epic: Testing \u0026 Quality Assurance","status":"open","priority":1,"issue_type":"feature","created_at":"2026-01-17T11:18:50.93252-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:18:50.93252-05:00"} -{"id":"blackpythondevs.github.io-435","title":"External Integrations","status":"open","priority":2,"issue_type":"feature","created_at":"2026-01-17T11:19:59.514968-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:19:59.514968-05:00"} -{"id":"blackpythondevs.github.io-43q","title":"DX Audit Report","status":"open","priority":1,"issue_type":"feature","created_at":"2026-01-17T11:21:50.820935-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:50.820935-05:00"} -{"id":"blackpythondevs.github.io-464","title":"Update Events pages to show that events have clearly ended","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:22:02.314075-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:22:02.314075-05:00"} -{"id":"blackpythondevs.github.io-4ck","title":"Add geojson to site in static folder path","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:22:03.960133-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:22:03.960133-05:00"} -{"id":"blackpythondevs.github.io-52q","title":"GH#816: Update to new version of frontmatter-check","description":"Local script scripts/check_author_list.py and pre-commit hook were added as temporary measure to enforce author frontmatter field is a list. Wait for frontmatter-check to release version supporting author list validation, update .pre-commit-config.yaml, configure validation, remove local script and hook","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:29.551509-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:29.551509-05:00"} -{"id":"blackpythondevs.github.io-53w","title":"Epic: Navigation \u0026 UX Improvements","status":"open","priority":1,"issue_type":"feature","created_at":"2026-01-17T11:18:48.877298-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:18:48.877298-05:00"} -{"id":"blackpythondevs.github.io-546","title":"Add a section on the Conferences page to consider being sponsored","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:37.920593-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:37.920593-05:00"} -{"id":"blackpythondevs.github.io-59o","title":"DX Audit Report (GH#787)","description":"## Developer Experience (DX) Audit Report\n\nThis report summarizes the findings of a Developer Experience audit performed on the repository.\n\n### ✅ Strengths\n\n1. **Documentation**: \n * `README.md` provides a clear mission statement and easy entry points (Codespaces, Gitpod).\n * `CONTRIBUTING.md` is comprehensive, featuring diagrams of website and development structures, and clear steps for contribution.\n * `MAINTAINERS.md` effectively guides repository maintainers.\n2. **Tooling**:\n * **Modern Python Tooling**: Usage of `uv` for fast dependency management.\n * **Task Runner**: `justfile` simplifies common commands (`install`, `serve`, `check`).\n * **Linting \u0026 Formatting**: Comprehensive setup with `ruff`, `black`, `prettier`, and `eslint` via `pre-commit`.\n3. **CI/CD**:\n * Active workflows for checks, accessibility testing (`playwright`), and security (`scorecard`).\n\n### ⚠️ Areas for Improvement\n\n1. **Issue Templates**:\n * The `.github/ISSUE_TEMPLATE` directory contains `add_event.yml` but lacks standard **Bug Report** or **Feature Request** templates. This can lead to unstructured issue submissions.\n * *Recommendation*: Add `bug_report.md` and `feature_request.md` templates.\n\n2. **Static Type Checking**:\n * There is no evidence of strict static type checking (e.g., `mypy` or `pyright`) in `pyproject.toml` or `justfile`.\n * *Recommendation*: Integrate `mypy` into the dev dependencies and the `just check` command to catch type errors early.\n\n3. **Justfile `check` Command**:\n * The `check` command runs `format`, which usually *applies* formatting. In CI or check contexts, it is often better to verify formatting (e.g., `ruff format --check`) rather than modifying files.\n * *Recommendation*: Update `justfile` to have separate `fix` (apply format) and `lint` (check format) commands, or ensure `check` uses non-mutating verification.\n\n4. **Local Dev Setup**:\n * While `uv` is great, ensuring `uv` itself is installed is the first step. Adding a small \"One-line setup\" or check script could further lower the barrier.\n\n### 📋 Action Plan\n\n- [ ] Create `bug_report.md` and `feature_request.md` in `.github/ISSUE_TEMPLATE`.\n- [ ] Add `mypy` to optional dependencies and configure it.\n- [ ] Refine `justfile` commands to distinguish between checking and fixing code.\n","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:47.09959-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:47.09959-05:00","labels":["enhancement","report"]} -{"id":"blackpythondevs.github.io-5ks","title":"Add test that ensures that all pages are accessible to the website","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:50.014932-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:50.014932-05:00"} -{"id":"blackpythondevs.github.io-5sy","title":"Render Engine Migration","status":"open","priority":2,"issue_type":"feature","created_at":"2026-01-17T11:19:57.130896-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:19:57.130896-05:00"} -{"id":"blackpythondevs.github.io-5wl","title":"Standardize CSS Breakpoints","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:39.766607-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:39.766607-05:00"} -{"id":"blackpythondevs.github.io-5xq","title":"GH#805: Redesign Hero Section Layout","description":"Hero section layout needs improvement to stop 'fighting for attention'. Stack image and text vertically (Image above text or vice versa). Align with modern design principles to clear up visual hierarchy","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:19:15.271518-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:19:15.271518-05:00"} -{"id":"blackpythondevs.github.io-64z","title":"Refactor Navigation Menu (GH#806)","description":"Based on recent feedback, the navigation menu is too busy and needs simplification.\n\n**Tasks:**\n- [ ] Rename 'Blog' to 'News'\n- [ ] Remove 'Home' link (the site wordmark/logo already links home)\n- [ ] Combine 'BPD Events' and 'Sponsored Events' into a single 'Events' parent link (as a dropdown or consolidated page)\n- [ ] Combine 'Discounts' and 'Support Us' into a single section (e.g., 'Donate' or 'Support')\n- [ ] Evaluate removing the 'Community' link and merging its content into 'About Us'\n\n**Goal:** Reduce clutter and group related links logically.","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:46.442734-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:46.442734-05:00"} -{"id":"blackpythondevs.github.io-6by","title":"Redesign Hero Section (GH#808)","description":"The current hero section lacks a clear visual hierarchy and 'fights for attention'.\n\n**Suggestions:**\n- [ ] Adjust layout to stack image and text (image above text or vice-versa) to prioritize user attention.\n- [ ] Ensure the design reflects BPD's core values:\n 1. Build/Support Black Leadership in Python\n 2. Support the Communities that Build that Black Leadership\n 3. Raise Money to do 1 \u0026 2","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:46.259469-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:46.259469-05:00"} -{"id":"blackpythondevs.github.io-6gw","title":"Test suite failures after Render Engine migration","status":"open","priority":1,"issue_type":"bug","created_at":"2026-01-17T11:21:45.945536-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:45.945536-05:00"} -{"id":"blackpythondevs.github.io-6wn","title":"Create 'How to Get Support' Page","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:31.74236-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:31.74236-05:00"} -{"id":"blackpythondevs.github.io-77c","title":"Redesign Hero Section","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:26.96898-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:26.96898-05:00"} -{"id":"blackpythondevs.github.io-7qh","title":"Infrastructure \u0026 Tooling","description":"Epic for Infrastructure \u0026 Tooling","status":"open","priority":2,"issue_type":"feature","created_at":"2026-01-17T11:31:45.875526-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:45.875526-05:00","dependencies":[{"issue_id":"blackpythondevs.github.io-7qh","depends_on_id":"blackpythondevs.github.io-9oc","type":"blocks","created_at":"2026-01-17T11:31:46.025957-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-7qh","depends_on_id":"blackpythondevs.github.io-59o","type":"blocks","created_at":"2026-01-17T11:31:47.139862-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-7qh","depends_on_id":"blackpythondevs.github.io-p8s","type":"blocks","created_at":"2026-01-17T11:31:47.340519-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-7qh","depends_on_id":"blackpythondevs.github.io-f3a","type":"blocks","created_at":"2026-01-17T11:31:47.714021-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-7qh","depends_on_id":"blackpythondevs.github.io-xoj","type":"blocks","created_at":"2026-01-17T11:31:47.995587-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-7qh","depends_on_id":"blackpythondevs.github.io-wwo","type":"blocks","created_at":"2026-01-17T11:31:48.092206-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-7qh","depends_on_id":"blackpythondevs.github.io-eoe","type":"blocks","created_at":"2026-01-17T11:31:48.183908-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-7qh","depends_on_id":"blackpythondevs.github.io-1v1","type":"blocks","created_at":"2026-01-17T11:31:48.274636-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-7qh","depends_on_id":"blackpythondevs.github.io-0cz","type":"blocks","created_at":"2026-01-17T11:31:48.369609-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-7qh","depends_on_id":"blackpythondevs.github.io-82s","type":"blocks","created_at":"2026-01-17T11:31:48.46141-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-7qh","depends_on_id":"blackpythondevs.github.io-0il","type":"blocks","created_at":"2026-01-17T11:31:48.643719-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-7qh","depends_on_id":"blackpythondevs.github.io-y8h","type":"blocks","created_at":"2026-01-17T11:31:48.735293-05:00","created_by":"jay.miller"}]} -{"id":"blackpythondevs.github.io-7ya","title":"GH#567: Add blog posts to snapshot tests","description":"Add blog posts to snapshot tests to check for issues. We have way to iterate through blog, so generate snapshots of blog posts as well. This would help check for issues in blog posts. Labels: testing","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:51.314912-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:51.314912-05:00"} -{"id":"blackpythondevs.github.io-82s","title":"Fix security workflow (GH#689)","description":"Currently the security scan has not worked since Jan 2025","status":"open","priority":2,"issue_type":"bug","created_at":"2026-01-17T11:31:48.421345-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:48.421345-05:00"} -{"id":"blackpythondevs.github.io-836","title":"GH#784: Test suite failures from Render Engine migration","description":"Test failures from Jekyll to Render Engine migration: Blog post URL generation tests assume filename-based URLs while Render Engine generates title-based slugs (29 failing tests), Missing language attribute (lang='' instead of lang='en'), Need to verify accessibility issues beyond test assumptions","status":"open","priority":1,"issue_type":"bug","created_at":"2026-01-17T11:21:47.647342-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:47.647342-05:00"} -{"id":"blackpythondevs.github.io-86c","title":"Fix broken images (GH#726)","description":"some images are broken on our blog page. Investigate and help fix them","status":"open","priority":2,"issue_type":"bug","created_at":"2026-01-17T11:31:47.863695-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:47.863695-05:00","labels":["good first issue","hacktoberfest-accepted"]} -{"id":"blackpythondevs.github.io-917","title":"Add Code of Conduct link to footer","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:35.250375-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:35.250375-05:00"} -{"id":"blackpythondevs.github.io-92p","title":"Remove Typefully from sponsors section (GH#799)","description":"Remove the Typefully logo from '_layouts/_includes/join_us.html'.","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:46.72201-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:46.72201-05:00"} -{"id":"blackpythondevs.github.io-98y","title":"Add mypy to dev dependencies and configure","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:56.841239-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:56.841239-05:00"} -{"id":"blackpythondevs.github.io-9ba","title":"GH#686: Update Contributions page for Render Engine","description":"Update Contributions page with new steps for render engine migration","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:30.976817-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:30.976817-05:00"} -{"id":"blackpythondevs.github.io-9im","title":"Audit and Remove jQuery Dependencies","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:40.436072-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:40.436072-05:00"} -{"id":"blackpythondevs.github.io-9oc","title":"Update to new version of frontmatter-check for author list validation (GH#816)","description":"## Summary\nThe local script `scripts/check_author_list.py` and its corresponding pre-commit hook in `.pre-commit-config.yaml` were added as a temporary measure to enforce that the `author` frontmatter field is a list (see PR #815).\n\nThis functionality is expected to be added to the upstream `frontmatter-check` tool.\n\n## Acceptance Criteria\n- [ ] Wait for `frontmatter-check` to release a version supporting author list validation.\n- [ ] Update `.pre-commit-config.yaml` to use the new version of `frontmatter-check`.\n- [ ] Configure `frontmatter-check` to validate the `author` field.\n- [ ] Remove `scripts/check_author_list.py` and the local hook configuration.","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:45.979428-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:45.979428-05:00"} -{"id":"blackpythondevs.github.io-9ph","title":"GH#809: Create 'How to Get Support' Page","description":"Create a dedicated page where people can learn how to get support from the organization. Currently missing a clear pathway for users to understand how to access BPD resources/support","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:25.931163-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:25.931163-05:00"} -{"id":"blackpythondevs.github.io-9pl","title":"Content Updates","status":"open","priority":2,"issue_type":"feature","created_at":"2026-01-17T11:19:54.554803-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:19:54.554803-05:00"} -{"id":"blackpythondevs.github.io-9xb","title":"Create 'How to Get Support' Page (GH#809)","description":"Create a dedicated page where people can learn how to get support from the organization.\n\n**Context:**\nCurrently missing a clear pathway for users to understand how to access BPD resources/support.","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:46.169697-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:46.169697-05:00"} -{"id":"blackpythondevs.github.io-a95","title":"GH#766: Add country flag to leaders bio","description":"Add the country flag of the leadership team to the bio in the about page https://blackpythondevs.com/about.html. Labels: hold","status":"open","priority":4,"issue_type":"task","created_at":"2026-01-17T11:21:05.049051-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:05.049051-05:00"} -{"id":"blackpythondevs.github.io-aut","title":"Enhancement: Integrate ClickUp API for Dynamic Sponsored Event Stats (GH#798)","description":"## Summary\nTo provide up-to-date statistics on the homepage, we want to fetch the count of \"Sponsored Events\" directly from our ClickUp workspace instead of relying solely on the static `_data/sponsored_events.json` file.\n\n## Proposed Changes\n1. **New Module**: Create `clickup_client.py` to handle interactions with the ClickUp API.\n - Function: `fetch_clickup_stats(token, list_id)`\n - Logic: Fetch tasks from the specified list (including closed tasks) and return the count.\n\n2. **App Update**: Modify `app.py` to integrate the client.\n - Check for `CLICKUP_API_TOKEN` and `CLICKUP_LIST_ID` environment variables.\n - If present, use `clickup_client` to fetch the count.\n - If missing or if the API call fails, fall back to the existing local calculation method.\n\n3. **Refactor**: Improve the existing local counting logic using `itertools` for cleaner code (flattening the nested dictionary structure).\n\n## Environment Variables\n- `CLICKUP_API_TOKEN`: Personal Access Token or OAuth token.\n- `CLICKUP_LIST_ID`: The ID of the ClickUp List containing the events.\n","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:46.815072-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:46.815072-05:00"} -{"id":"blackpythondevs.github.io-bj3","title":"GH#750: Fix playwright tests","description":"In migration to render-engine, Playwright broke. Many minor actual issues can be fixed but also issues with live server starting and running to test against","status":"open","priority":1,"issue_type":"bug","created_at":"2026-01-17T11:21:44.55177-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:44.55177-05:00"} -{"id":"blackpythondevs.github.io-bq8","title":"Add link for sponsorship inquiries","status":"open","priority":3,"issue_type":"task","created_at":"2026-01-17T11:21:33.500243-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:33.500243-05:00"} -{"id":"blackpythondevs.github.io-bvq","title":"GH#729: UX Design - Events Navigation","description":"Make events the parent link with sponsored and bpd as dropdown, or rename bpd events to 'in house events'. Labels: good-first-issue, hacktoberfest-accepted, design","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:19:09.807433-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:19:09.807433-05:00"} -{"id":"blackpythondevs.github.io-bvx","title":"GH#808: Redesign Hero Section","description":"The current hero section lacks clear visual hierarchy and 'fights for attention'. Adjust layout to stack image and text (image above/below text) to prioritize user attention. Ensure design reflects BPD core values: 1) Build/Support Black Leadership in Python, 2) Support Communities that Build Black Leadership, 3) Raise Money to do 1 \u0026 2","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:19:13.492723-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:19:13.492723-05:00"} -{"id":"blackpythondevs.github.io-bwa","title":"Add Code of Conduct link to footer (GH#778)","description":"Add a link to the Code of Conduct page in the Quick Links section of the footer. This improves discoverability of the community guidelines and makes it easier for visitors to find our Code of Conduct.","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:47.391432-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:47.391432-05:00"} -{"id":"blackpythondevs.github.io-coi","title":"Make local development significantly easier","status":"open","priority":1,"issue_type":"task","created_at":"2026-01-17T11:21:51.662857-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:51.662857-05:00"} -{"id":"blackpythondevs.github.io-czw","title":"GH#753: Add test that ensures all pages are accessible","description":"Pages in /pages have no link to them currently. Some pages need to be visible while others should be removed. Add test to ensure all pages are accessible to the website","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:53.608987-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:53.608987-05:00"} -{"id":"blackpythondevs.github.io-dc3","title":"GH#786: Add GitHub link to footer","description":"Add a link to the GitHub repository in the footer using Font Awesome brand icon (fa-fa brand). Location: _layouts/_includes/footer.html. Labels: enhancement, design","status":"open","priority":3,"issue_type":"task","created_at":"2026-01-17T11:21:03.588753-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:03.588753-05:00"} -{"id":"blackpythondevs.github.io-dcb","title":"GH#720: Remove lang reference","description":"Multiple languages were removed, this should be removed. The condition comparing 'lang' to itself is always true; consider comparing loop variable to current page language","status":"open","priority":3,"issue_type":"task","created_at":"2026-01-17T11:21:08.821127-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:08.821127-05:00"} -{"id":"blackpythondevs.github.io-e4z","title":"Fix playwright tests","status":"open","priority":1,"issue_type":"bug","created_at":"2026-01-17T11:21:42.783492-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:42.783492-05:00"} -{"id":"blackpythondevs.github.io-e72","title":"Content Updates: Support Page and Community Info (GH#810)","description":"**Tasks:**\n- Create a page/section explaining how people can get support from the organization.\n- Ensure Community links (Discord, LinkedIn) are properly placed in 'About Us' or the Front Page, as the specific navigation link is being removed.","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:46.078002-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:46.078002-05:00"} -{"id":"blackpythondevs.github.io-e7h","title":"Replace 'Join LinkedIn Group' with 'Follow us on LinkedIn' (GH#797)","description":"## Summary\nUpdate all references from 'Join LinkedIn Group' to 'Follow us on LinkedIn' and point to the company page instead of the group.\n\n## Current State\nCurrently, the site links to the LinkedIn group: https://www.linkedin.com/groups/14336241/\n\n## Desired State\nUpdate to point to the company page: https://www.linkedin.com/company/black-python-devs\n\n## Files to Update\nThe following files contain references that need to be updated:\n\n1. `_layouts/_includes/join_us.html:9-10` - Button link and text\n2. `pages/community.md:33` - LinkedIn group reference\n3. `_posts/2024-01-12-black-python-devs-is-sponsoring-pytexas.md:28` - Post reference\n\n## Acceptance Criteria\n- [ ] All LinkedIn group URLs updated to company page URL\n- [ ] All \"Join our LinkedIn Group\" text updated to \"Follow us on LinkedIn\"\n- [ ] Links tested and working","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:46.90728-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:46.90728-05:00"} -{"id":"blackpythondevs.github.io-e8m","title":"GH#721: Add integrity check or download assets locally","description":"Either add integrity check or download and call from local source for external assets","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:06.600283-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:06.600283-05:00"} -{"id":"blackpythondevs.github.io-eae","title":"create blog collection for posts","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:22:00.604592-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:22:00.604592-05:00"} -{"id":"blackpythondevs.github.io-eoe","title":"Update unless tag (GH#719)","description":"Currently not breaking anything (maybe a11y)\r\n\r\nThe condition in the 'unless' tag is malformed; it likely should be written as {% unless entry.platform == \"rss\" %}.\r\n```suggestion\r\n \u003ca {% unless entry.platform == \"rss\" %}rel=\"me\" {% endunless %}href=\"{{ entry.user_url }}\" target=\"_blank\" title=\"{{ entry.title | default: entry.platform }}\"\u003e\r\n```\r\n\r\n_Originally posted by @Copilot in https://github.com/BlackPythonDevs/blackpythondevs.github.io/pull/717#discussion_r2169998093_\r\n ","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:48.143782-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:48.143782-05:00"} -{"id":"blackpythondevs.github.io-f3a","title":"Fix playwright tests (GH#750)","description":"In our migration to render-engine - Playwright broke. \n\nThere were a lot of minor actual issues that can be fixed but also we've had issues with the live server starting and running so that we can actually test against the issues.","status":"open","priority":2,"issue_type":"bug","created_at":"2026-01-17T11:31:47.673209-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:47.673209-05:00"} -{"id":"blackpythondevs.github.io-ftk","title":"GH#685: Update docs from Jekyll to Render Engine","description":"Update docs from saying built with Jekyll to built with Render Engine. Labels: good-first-issue","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:32.420814-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:32.420814-05:00"} -{"id":"blackpythondevs.github.io-gdr","title":"Navigation \u0026 UX Redesign","status":"open","priority":2,"issue_type":"feature","created_at":"2026-01-17T11:19:53.903982-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:19:53.903982-05:00"} -{"id":"blackpythondevs.github.io-gjb","title":"Refactor Navigation Menu","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:29.273788-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:29.273788-05:00"} -{"id":"blackpythondevs.github.io-hd8","title":"create events collection for workshops leadership summit","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:22:01.237137-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:22:01.237137-05:00"} -{"id":"blackpythondevs.github.io-hgz","title":"GH#788: Website Frontend Audit Report","description":"Frontend audit findings: Standardize breakpoints (600px, 768px, 800px, 1080px inconsistent), Audit jQuery usage and refactor to Vanilla JS, Refactor CSS to remove !important tags, Investigate merging/minifying custom CSS assets. Labels: report, design, a11y, performance","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:01.303501-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:01.303501-05:00"} -{"id":"blackpythondevs.github.io-hpo","title":"GH#719: Update unless tag","description":"Currently not breaking anything (maybe a11y). The condition in the 'unless' tag is malformed; should be {% unless entry.platform == 'rss' %}","status":"open","priority":3,"issue_type":"task","created_at":"2026-01-17T11:21:10.950843-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:10.950843-05:00"} -{"id":"blackpythondevs.github.io-ibm","title":"Asset Management","status":"open","priority":2,"issue_type":"feature","created_at":"2026-01-17T11:19:58.324475-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:19:58.324475-05:00"} -{"id":"blackpythondevs.github.io-ihy","title":"Testing Infrastructure","status":"open","priority":2,"issue_type":"feature","created_at":"2026-01-17T11:19:55.831842-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:19:55.831842-05:00"} -{"id":"blackpythondevs.github.io-k4b","title":"Redesign Hero Section Layout","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:27.711499-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:27.711499-05:00"} -{"id":"blackpythondevs.github.io-k8e","title":"Website Frontend Audit Report (GH#788)","description":"## Website Frontend Audit Report\n\nThis report summarizes findings regarding the frontend architecture, design implementation, and user experience of the website.\n\n### ✅ Strengths\n\n1. **Accessibility (A11y)**:\n * Strong use of semantic HTML (`\u003cheader\u003e`, `\u003cmain\u003e`, `\u003cfooter\u003e`, `\u003cnav\u003e`).\n * Proper use of ARIA labels and roles (`role=\"banner\"`, `aria-label=\"Main navigation\"`).\n * Implementation of `.screen-reader-text` class for accessible hidden content.\n * `lang` attribute dynamically set on `\u003chtml\u003e` tag.\n2. **Framework Choice**:\n * Use of **Pico CSS** provides a lightweight, semantic-first foundation.\n3. **Responsive Design**:\n * Mobile navigation menu implementation exists.\n * Footer grid adapts from 3 columns to 1 column on smaller screens.\n\n### ⚠️ Areas for Improvement\n\n1. **CSS Architecture \u0026 Maintainability**:\n * **Specificity Wars**: usage of `!important` in `bpd.css` (e.g., `ul li`, `a[role=\"button\"]`) suggests difficulty overriding framework styles. This makes future maintenance harder.\n * **Inconsistent Breakpoints**: Media queries use a mix of values: `600px`, `768px`, `800px`, `1080px`. This can lead to unpredictable layout behavior on intermediate devices.\n * **Tight Coupling**: Specific selectors like `article.pico-background-pumpkin-650` couple the custom CSS tightly to specific content choices.\n\n2. **Performance**:\n * **jQuery Dependency**: `jquery.min.js` is loaded. If this is only used for the mobile menu toggle or simple interactions, it should be replaced with vanilla JavaScript to reduce page load weight.\n * **CSS Requests**: Multiple CSS files are loaded (`pico.min.css`, `pico.colors.min.css`, `bpd.css`).\n * **Unminified Assets**: `bpd.css` is served unminified.\n\n3. **Design System**:\n * The \"Language Switcher\" implementation in the header is functional but could be styled to match the native OS or Pico theme better.\n\n### 📋 Action Plan\n\n- [ ] **Standardize Breakpoints**: Define a clear set of breakpoints (e.g., Mobile, Tablet, Desktop) and refactor CSS to use them consistently.\n- [ ] **Audit jQuery Usage**: Identify where jQuery is used and refactor to Vanilla JS if possible.\n- [ ] **Refactor CSS**: Remove `!important` tags by increasing specificity or adjusting load order/Pico configuration.\n- [ ] **Performance**: Investigate merging or minifying custom CSS assets during the build process.\n","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:46.999528-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:46.999528-05:00","labels":["a11y","design","performance","report"]} -{"id":"blackpythondevs.github.io-l0s","title":"Add test that ensures that all pages are accessible to the website\n (GH#753)","description":"I found pages in the /pages have no link to them currently. Some of those pages need to be visible while others should be removed.\n","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:47.578839-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:47.578839-05:00"} -{"id":"blackpythondevs.github.io-l2q","title":"Website Frontend Audit Report","status":"open","priority":1,"issue_type":"feature","created_at":"2026-01-17T11:21:38.738582-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:38.738582-05:00"} -{"id":"blackpythondevs.github.io-lb5","title":"Refactor CSS to Remove !important Tags","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:41.333146-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:41.333146-05:00"} -{"id":"blackpythondevs.github.io-lg6","title":"Implement CSS Minification in Build Process","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:41.980019-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:41.980019-05:00"} -{"id":"blackpythondevs.github.io-lv5","title":"Epic: Feature Enhancements","status":"open","priority":2,"issue_type":"feature","created_at":"2026-01-17T11:18:52.742719-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:18:52.742719-05:00"} -{"id":"blackpythondevs.github.io-mat","title":"Create bug_report.md and feature_request.md templates","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:56.011521-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:56.011521-05:00"} -{"id":"blackpythondevs.github.io-mdi","title":"Create Location Snippet","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:22:03.034977-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:22:03.034977-05:00"} -{"id":"blackpythondevs.github.io-nna","title":"Epic: Infrastructure \u0026 Tooling","status":"open","priority":2,"issue_type":"feature","created_at":"2026-01-17T11:18:51.501922-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:18:51.501922-05:00"} -{"id":"blackpythondevs.github.io-npp","title":"GH#344: Add sponsorship section to Conferences page","description":"Add section on Conferences page below conference list: Link to prospectus (in development), Quick outline of sponsorship types (Community Sponsor - Tickets for Local Black Python Developers, Commitment Sponsor - Multi-year commitment). Labels: content","status":"open","priority":3,"issue_type":"task","created_at":"2026-01-17T11:21:35.235007-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:35.235007-05:00"} -{"id":"blackpythondevs.github.io-oag","title":"Fix failing accessibility test","status":"open","priority":2,"issue_type":"bug","created_at":"2026-01-17T11:21:46.76599-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:46.76599-05:00"} -{"id":"blackpythondevs.github.io-ohs","title":"Add link for sponsorship inquiries (GH#800)","description":"Add a small link in the 'Corporate Sponsors' section of '_layouts/_includes/join_us.html' for visitors to ask about sponsorship opportunities.","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:46.630606-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:46.630606-05:00"} -{"id":"blackpythondevs.github.io-p2y","title":"Migrate Site to Render Engine","status":"open","priority":0,"issue_type":"feature","created_at":"2026-01-17T11:21:58.711698-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:58.711698-05:00"} -{"id":"blackpythondevs.github.io-p8s","title":"I reran the test suite with verbose logging to investigate the failures. Most of the failures are test-related issues introduced during the migration from Jekyll to Render Engine . (GH#784)","description":"I reran the test suite with verbose logging to investigate the failures. Most of the failures are test-related issues introduced during the migration from Jekyll to Render Engine .\r\n\r\nTest fixed:\r\n\r\n- Updated the email link selector from email to contact@blackpythondevs.com\r\n- Fixed the blog description test to match the actual HTML structure (article elements instead of p.post-description\r\n- Corrected title format expectations to match actual output ('Page | Black Python Devs' instead of 'Black Python Devs | Page')\r\n\r\nRemaining issues:\r\n\r\n- Blog post URL generation tests still assume filename-based URLs (e.g. /blog/2024-05-25-filename.html), while the Render Engine generates title-based slugs (e.g. /blog/title-based-slug.html) -\u003e 29 failing tests\r\n- Missing language attribute: pages currently render lang=\"\" instead of lang=\"en\"\r\n- I still need to verify whether there are any accessibility issues beyond test assumptions\r\n\r\nLet me know how you'd like to proceed on the remaining items.\r\n\r\n_Originally posted by @danielcristho in https://github.com/BlackPythonDevs/blackpythondevs.github.io/issues/782#issuecomment-3707405095_\r\n ","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:47.298586-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:47.298586-05:00"} -{"id":"blackpythondevs.github.io-pjb","title":"Add country flag to leaders bio (GH#766)","description":"Add the country flag of the leadership team to the bio in the about page https://blackpythondevs.com/about.html","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:47.484004-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:47.484004-05:00","labels":["hold"]} -{"id":"blackpythondevs.github.io-pv1","title":"Add blog posts to snapshot tests","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:47.699692-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:47.699692-05:00"} -{"id":"blackpythondevs.github.io-q1b","title":"Simplify and Refactor Navigation Menu","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:28.441246-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:28.441246-05:00"} -{"id":"blackpythondevs.github.io-qfo","title":"Remove Typefully from sponsors section","status":"open","priority":3,"issue_type":"task","created_at":"2026-01-17T11:21:34.520723-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:34.520723-05:00"} -{"id":"blackpythondevs.github.io-qqw","title":"Add GitHub link to footer (GH#786)","description":"Add a link to the GitHub repository in the footer. \n\nThe implementation should use a Font Awesome brand icon (fa-fa brand) as requested.\n\nCurrent footer location: `_layouts/_includes/footer.html`\n","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:47.196218-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:47.196218-05:00","labels":["design","enhancement"]} -{"id":"blackpythondevs.github.io-r2r","title":"Epic: Frontend Architecture \u0026 Design System","status":"open","priority":1,"issue_type":"feature","created_at":"2026-01-17T11:18:49.632363-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:18:49.632363-05:00"} -{"id":"blackpythondevs.github.io-r6k","title":"GH#654: Fix failing accessibility test","description":"Fix the failing accessibility test on PR #651","status":"open","priority":2,"issue_type":"bug","created_at":"2026-01-17T11:21:48.899382-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:48.899382-05:00"} -{"id":"blackpythondevs.github.io-snp","title":"GH#806: Refactor Navigation Menu","description":"Based on recent feedback, the navigation menu is too busy and needs simplification. Tasks: Rename 'Blog' to 'News', Remove 'Home' link (wordmark links home), Combine 'BPD Events' and 'Sponsored Events' into single 'Events' parent, Combine 'Discounts' and 'Support Us', Evaluate removing 'Community' link and merging into 'About Us'","status":"open","priority":1,"issue_type":"task","created_at":"2026-01-17T11:19:04.869855-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:19:04.869855-05:00"} -{"id":"blackpythondevs.github.io-ted","title":"Events \u0026 Collections","status":"open","priority":2,"issue_type":"feature","created_at":"2026-01-17T11:19:58.899992-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:19:58.899992-05:00"} -{"id":"blackpythondevs.github.io-tzb","title":"Developer Experience Improvements","status":"open","priority":2,"issue_type":"feature","created_at":"2026-01-17T11:19:56.480945-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:19:56.480945-05:00"} -{"id":"blackpythondevs.github.io-u7a","title":"GH#718: Fix loop names","description":"Loop is working currently so no need to change until cleaning up and refactoring","status":"open","priority":3,"issue_type":"task","created_at":"2026-01-17T11:21:12.238767-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:12.238767-05:00"} -{"id":"blackpythondevs.github.io-u9t","title":"Site Redesign \u0026 UX Improvements","description":"Epic for Site Redesign \u0026 UX Improvements","status":"open","priority":2,"issue_type":"feature","created_at":"2026-01-17T11:31:45.82361-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:45.82361-05:00","dependencies":[{"issue_id":"blackpythondevs.github.io-u9t","depends_on_id":"blackpythondevs.github.io-6by","type":"blocks","created_at":"2026-01-17T11:31:46.30068-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-u9t","depends_on_id":"blackpythondevs.github.io-64z","type":"blocks","created_at":"2026-01-17T11:31:46.482656-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-u9t","depends_on_id":"blackpythondevs.github.io-3go","type":"blocks","created_at":"2026-01-17T11:31:46.577497-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-u9t","depends_on_id":"blackpythondevs.github.io-92p","type":"blocks","created_at":"2026-01-17T11:31:46.763393-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-u9t","depends_on_id":"blackpythondevs.github.io-k8e","type":"blocks","created_at":"2026-01-17T11:31:47.04354-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-u9t","depends_on_id":"blackpythondevs.github.io-qqw","type":"blocks","created_at":"2026-01-17T11:31:47.244528-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-u9t","depends_on_id":"blackpythondevs.github.io-w85","type":"blocks","created_at":"2026-01-17T11:31:47.809944-05:00","created_by":"jay.miller"},{"issue_id":"blackpythondevs.github.io-u9t","depends_on_id":"blackpythondevs.github.io-86c","type":"blocks","created_at":"2026-01-17T11:31:47.903789-05:00","created_by":"jay.miller"}]} -{"id":"blackpythondevs.github.io-uc6","title":"create settings file","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:59.471319-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:59.471319-05:00"} -{"id":"blackpythondevs.github.io-w85","title":"Ux design issue (GH#729)","description":"Hey @kjaymiller why don't we have events as the parent link while sponsored and bpd become a drop down and/or rename bpd events to \"in house events\"\n\u003cimg width=\"350\" height=\"140\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/084bff89-a774-4d00-8206-990e61343fe7\" /\u003e","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:47.766532-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:47.766532-05:00","labels":["design","good first issue","hacktoberfest-accepted"]} -{"id":"blackpythondevs.github.io-w8m","title":"Add all contributors (GH#688)","description":"## Description\nWe should implement the [all-contributors](https://allcontributors.org/) specification to recognize all people who contribute to our project, not just code contributors. This will help us acknowledge various types of contributions including documentation, design, testing, and more.\n\n## Motivation\n- Properly recognize all contributors regardless of contribution type\n- Create a more inclusive environment that values all forms of contribution\n- Provide clear documentation of who has helped with the project and how\n- Encourage more diverse contributions by showing we value all types of help\n\n## Implementation Plan\n- [ ] Initialize the specification: `npx all-contributors init`\n- [ ] Add existing contributors using the CLI: `npx all-contributors add \u003cusername\u003e \u003ccontribution-type\u003e`\n- [ ] Set up a .all-contributorsrc configuration file\n- [ ] Add the contributors table to our README.md\n- [ ] Document the process for adding new contributors in CONTRIBUTING.md\n\n## Additional Details\n- Contribution types to recognize: code, doc, design, bug, test, ideas, review, talk, tutorial, etc.\n- CLI will maintain both .all-contributorsrc and README.md files automatically\n- We can configure the bot to automatically suggest adding new contributors\n\n## Questions\n- Should we use the all-contributors bot for automated PRs?\n- What emoji/acknowledgment style should we use for the contributors table?\n- Should we include the contributors table at the top or bottom of the README?\n\n## Resources\n- [all-contributors documentation](https://allcontributors.org/docs/en/overview)\n- [Example repositories using all-contributors](https://github.com/all-contributors/all-contributors/blob/master/README.md#who-uses-it)","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:48.512673-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:48.512673-05:00","labels":["good first issue"]} -{"id":"blackpythondevs.github.io-w9s","title":"Security \u0026 CI/CD","status":"open","priority":2,"issue_type":"feature","created_at":"2026-01-17T11:19:57.787254-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:19:57.787254-05:00"} -{"id":"blackpythondevs.github.io-wha","title":"Simplify and Refactor Navigation Menu (GH#807)","description":"Reduce clutter in the top navigation bar.\n\n**Tasks:**\n- Remove 'Home' link (Wordmark serves this purpose).\n- Rename 'Blog' to 'News'.\n- Combine 'BPD Events' and 'Sponsored Events' into a single 'Events' parent or page.\n- Remove 'Community' link (move content to Home/About Us).\n- Combine 'Discounts' and 'Support Us' sections.","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:46.352616-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:46.352616-05:00"} -{"id":"blackpythondevs.github.io-wwo","title":"[Remove] lang reference (GH#720)","description":"Multiple languages were removed... this should be removed.\r\n\r\nThe condition comparing 'lang' to itself is always true; consider comparing the loop variable to the current page language (e.g. {% if page.lang == lang %}).\r\n\r\n_Originally posted by @Copilot in https://github.com/BlackPythonDevs/blackpythondevs.github.io/pull/717#discussion_r2169998101_\r\n ","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:48.048681-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:48.048681-05:00"} -{"id":"blackpythondevs.github.io-xiq","title":"Update docs from saying built with Jekyll to built with Render Engine","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:21:53.899863-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:53.899863-05:00"} -{"id":"blackpythondevs.github.io-xoj","title":"either add integrity check or download and call from local source (GH#721)","description":"either add integrity check or download and call from local source\r\n\r\n_Originally posted by @kjaymiller in https://github.com/BlackPythonDevs/blackpythondevs.github.io/pull/717#discussion_r2170032246_\r\n ","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:47.955026-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:47.955026-05:00"} -{"id":"blackpythondevs.github.io-y8h","title":"Update Contributions page with new steps for render engine (GH#686)","status":"open","priority":2,"issue_type":"task","created_at":"2026-01-17T11:31:48.694758-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:31:48.694758-05:00"} -{"id":"blackpythondevs.github.io-yqh","title":"Add country flag to leaders bio","status":"open","priority":3,"issue_type":"task","created_at":"2026-01-17T11:21:36.750817-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:36.750817-05:00"} -{"id":"blackpythondevs.github.io-ytl","title":"GH#726: Fix broken images","description":"Some images are broken on blog page. Investigate and help fix them. Labels: good-first-issue, hacktoberfest-accepted","status":"open","priority":2,"issue_type":"bug","created_at":"2026-01-17T11:21:13.704202-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:21:13.704202-05:00"} -{"id":"blackpythondevs.github.io-ywa","title":"Epic: Content \u0026 Documentation","status":"open","priority":2,"issue_type":"feature","created_at":"2026-01-17T11:18:50.228742-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:18:50.228742-05:00"} -{"id":"blackpythondevs.github.io-zz0","title":"GH#807: Simplify and Refactor Navigation Menu","description":"Reduce clutter in the top navigation bar. Remove 'Home' link (Wordmark serves this purpose), Rename 'Blog' to 'News', Combine 'BPD Events' and 'Sponsored Events' into single 'Events' parent, Remove 'Community' link (move to Home/About Us), Combine 'Discounts' and 'Support Us' sections","status":"open","priority":1,"issue_type":"task","created_at":"2026-01-17T11:19:07.18361-05:00","created_by":"jay.miller","updated_at":"2026-01-17T11:19:07.18361-05:00"} diff --git a/.beads/beads.base.meta.json b/.beads/beads.base.meta.json deleted file mode 100644 index bf500de7..00000000 --- a/.beads/beads.base.meta.json +++ /dev/null @@ -1 +0,0 @@ -{ "version": "0.46.0", "timestamp": "2026-01-17T11:32:01.86091-05:00", "commit": "0154f70" } diff --git a/.beads/beads.db b/.beads/beads.db deleted file mode 100644 index d524aec30c7d9a3f8fe7799d79dfd566a2c041a8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 487424 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∋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 YfB*pk1PBlyK!5-N0t5&UAn--t4iGgap#T5? diff --git a/.beads/beads.db-wal b/.beads/beads.db-wal deleted file mode 100644 index e1e95f90bd0cc5196140b0fb05b0ce084fcb2e02..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 148352 zcmeHw3t(JFdG4-O(!O^cKeCn`+sAesX=7=T7 z6VVu-Oc&BZAzGM>MkW(NGFnJZ3OV?HmQN*OseCReqzd^&DxQr%9&*uqBAnz?h0QkG zmVtb^S`jj(0za8d#N+9BB*{l6vytfK9k$J5b)i;;XZbK6$))1?Y&028<|o6GkYqGl zh)hC3g~@1goz=FzCs)YK3-v~+S_y|@iBK4-v&Am3!9DZ*XTEjC2(t^k%oLqvhcUny zU<@z@7z2y}#sFi0F~AsL3@`=^8TfVD1(Kmy3?}rESGZkZD zlj)3+MU*46dJ(BmGMY-qWiFy*5%HLw&S)}}j)c>)QEwb0*(NH`bj?0SGPtF9t$m=CULJ1HMmPPC)iP3V@>12{u)S^Kav6yPp%_wwxsD*&uOPb|b z-)$rHoC~S8rjA8Gw-<@Y1u2trv9Qpl7Fa|$4MuKR#57sN+3J~AE|3Ulr|EbyF6p;t zeb*qlAZ^_q7Lnq?W-jHz@tE~Nl8AD+VU&wRgolBS_uAhk0&BN6dPBA%91%l;k9 z0a7k%DZ^YuV_{Xb^5k61&bECHF&7aSw4|iY*YU5GyGec4bgE@JgdfBr!m(&luG3q{ znWz>G%8>{qk~|-gyS*F9A{L5mO$22k5sIcG5xE?$tE|UJY|f>dMir6{M?tr6ojMoD z6*5yOwTg&D2E)-%7#bL9%UJz$hsWD?~h>O3L~@LN3VJlKz_pua|TO`Bba8#-g5aA)QS(nQyn{YEmm} z3WZh$=hLXWfQA~CJKuHWaxA3V`fnrws7NK_@+ZLedt^47=i1mrA`+okijTzQp3_Or z#kq4~T{*(Z5PXr95j^aLCw3Q&O54a6auJS&Qc38uBrg1)AZu26zHM;9rv~FNvx`N; zF?sOZMJ`CC(pINP1P>!$7--2NI>;jOwYruI*rE^{L|>6eB9)RwST9rr>~e^OBH?%< zEPdBu_Pq_wz-7C@dv0HT_?Lxetu7Ra>;ix9|Aa07O8uYxeZGJ7CcRI2x;mfl`jZa7 zHbIx1b-}b-5_ZO(3x}WW~5v#cY0*2AEWJD^`sF4xj{JAO_!O!y* zGD4^dGh_se*2`oB492I)h*TnfhKyK9#Y<$wWHehOBVaf_MMl7AdyVvax>1c)yY5T)4>Kz!I7f%Fs*_Y)As?2Uk!CLq#{b$}QpAfVj>qL+k- zmjKaaj)1}an8o7yHUW`tjsxP42#91BjIpkV%@Ob|y$BGu6A(gS10ZfPN5GfR0f@9Y z0tV;%0TCb|BJ~c7#racn1ZppU_$vZpvKj)!?-3Au?ovR!!5jgT066mIoFO2fcL2n- z1O&8wKm-Yh$l?(|*v%0z&Ar89ar`3zk)65{5Ko&UVEDWT5bq%%D%mbT+-Z)0S?YCw zxP^eoHb((*g*gI-Id(ww5D-&|l*MBIIRTN2Cjs#l0wOXS1H}I#AfV?5#DnGt)Sm*P zNA4g%s& z%n@jW0*L=XK+KjKtvOJ0g)#lVD15kA#+4>F?#?I+X#r+;sngJ z|AT-?=63+%Yvu@8HMtxRA15HD7OnuqZxRr>#nXV8BOqeuZUV%(IU;^`)&mHhfLJKU z0pTYg8jEXTlK4XcV!AN|h|duaFmC|F2M7pQ$N|J_2#Dwc04525$n0en^2`DZ3mu$o zgz%jM1f;^juX4Y@Xa4CcPpx_ElOKeh2ipby*8jNYBkuiO*T0PZ$9H);zuWnA=es)> zJ108#*xqSdunpK89pCPBb$qhp?Y2MaXmlLyxV)pw`oFDjv(8$N*iKk`ZU1QPuzthx zcTlcNZDUrg%|%`Z(Jm{M%s@##rdXJYW+3hA(v%rUyM8oj28u;tl}WNN3T7bfGE%_| zq+KY=n}M_xjGKY@7#JKS+f;6+?OH=JHH%7FV?hbn%8>|%rA3Nc%|NL*tjbHNWz0a@ z1*lt0GM)&s!RlG- z8s3;OsCAX@h%qP$D`2UZY+1in4?=67t!w)YccJUk`ravpHZ3Wu_p{x8%Pu1jtZ0Pg z6}K6)r85N3rA8on8*g2)zr|PwTG!-nbbi3v zwoHuky@Fn@tpjro8YwTVS!+8meVz<@3y{=C69Tn$1ORHI=>>KK&JS4HHpQT|_O^}y zKy4a_7vxj0V40FWHZL9SA0A$mHTG!#PbQdgN*MnNOW)2!M5Nq9hnKlNs zZm&$aA2X=B7$4GZpiBZtUv;t8Es_btZGnE9f23nfM^oDp{8rzv^)fvO zD2T(BGihwG#rFow6FN{B_Pa!Q*#3hDAeR{CDGXgNjCti9x0^vydk@ABhT|a^q(l?a zcxRJg(}dkh@f7SGz^U~Zrv@4xj>1-D4BDs{q}xHT!FQ&eZ;XKh@hN#T=6Zc<2-Lcf zV4Z)&@^`H)AyDg9fr|jtMkNBpL#Zh2(37YHi>~F(dP%6afLf8ZaQKY#g!)TZ(U%wi zdulu1kQ^uq&@C$y*yRiu2&Y3({IpyrF2mH?HZj1;p5^1Ze79{=aQMI0-U{>^5$p!Z z>9!hlUD}Q^+D*{0(>CVRW(wbmpxZCda=*Y+m)8ID&;G6Z%ZNXA?;w!Cei#Fc0mcAh zfHA-rU<@z@7z2y}#sFjBWzE2^`F??TOgUQcioJIbHWG{H2=4gE?>{sD;~Os7_TzVa zr;hdu*!=Gh&k?{s?1wSH7+?%A1{ed30mcAhfHA-rU<@z@7z2!f|5^sfrv%_C9UB>u zoGnt$5k#ACB+~*%Z&bU$BR}{w*M07$V=nLOElt=^;kLNFp3nJz?*F0xS^v}i$NZ0a zKkt2;_q=xo&h78;f6M>p{wMsu<$u7x>_6+D@#p+E_>cI9{0aYVKj+`zclrL)_jTV# zeed_Z)Ayk79^Y-gnoscE=sV^+=u7)TzMbBmd;i({*WN$!{(<**ypMPnygBa;-XU+l zH{kVnt)8EGe&G3r=PRC1c|PX(pyy%FTRgAz+~H|>ik@3MCp;sbD?PmDGS6nu8c&z| zSMGmt|AYH)++T1%?S8`jA@_UTzv+Ixd&xcTo_62rKIy*3z26;k2i;qJ&-wn!_ou#3 z_%`~yz7Fp51B?O2z{`k%i#m5&t)9*vs};O}HH1P( zb4}+?r?phc)auo#y3lA0x;i<<{=P>1e3Ix*D8SgEci+Rf82ZIHLy3YH(T&o>7A( zHCR-GQ)+Nh4GLGH1sKM*i z;7K(&p$5m*;0ZN&of*}1_XR@M(@`jT#(PgNN1Nh#EYk28Thc zQxtnpjXa=4UadwBDM8y+O0Z+U8r-M6wO5V2Qi+5k_!gI#(x4KTR)Hxsm{fxaH5gak zim8!NC1{H%!46&xhLxagj~WcA!2u=M(XR$~tHI0FU{DSAsli?~c$pg9r3NomgFDsW z4mG%44RUI5n-a8bRfAj9;3Z11W3v+M+@u6;JxZ`+qZ$mT!Hd=41~s@|4X#szYt`UI zYH*Dj^s7Oi8uY3`j~aBVL6=gmP9@|}AKR74ZZ)z?iR@G(ZAxT^1C-i{IyTTbxU@sH z3tTtxzQ?D(TN^?91;(w7cly3+pYVOecMqKBzsq;C zFXD4}zwZ5g@9Vs`dJ|rc{qpXA@BTvfBi;4R4|~4ldBXF6r{Ed%tZ{$G{iOR%_TO_C zyKe4sbbi&n&%NIDPu&~3zT5S2*QZ=>bCq3JyEZz1!D zPIaE{yxjJ@?eiT^biCHN*D+-CIoH|J9j|hH-|>{=t&V9_0`{{42HEMgo1=Sz9r;33KA|km5^f>UIn+%gr}R5@NpUvym{k>y_JH5`%)$3MKq*PkdPZF zNVq>$LOLi&xJOk&?x!ImbqU!)L4x}o2^pdxdAaPDQjlD#^6dkW+FqNzsrwS!R-kjL6M7 zMnQu20x6$6DM+~cR6?$yA#?ILbv*?MccDr$x6qJN=OpAt8nTd*kjE%UxFc0U?xGrom~8TW6dA(Ig)^;0xtOy)C9LBg%4lFUn}$f$(up&;QF zR0(;AhOEkM^B@J8n?EbbL{}`pC7P;T;PK%vUwo=L^E|Q(9Pc`2>3VBdz3Z6&>;5PG z55bOr>-{nRTHlYmx7%;_eZlv;zSsGRzC*rCVb%Q`-cNep={@H?1-60p_B%cQ=J}%M zG0*EgXFP{tMZeSiE%&F~@3w!({%QMr-LH1v=uSB*jw6oC-50x_bN!|3Bd!O)E^v*j z&(-bx2j?F@0d7^u2;>rlf=D+h4wInfDDHm%L2=9j2#VVsK-@yj={N-e&RfU`06}p<1_+7^GC)vVkO6|?f(#59 zJIQ51&RZx5aNa^jAm=R<1UPS@Ai#MG8G)R)P!Qm}g^WPXTgV77KpdqY!0`$Nkt|Z& zx(Uh1DT)kmyh27G$15~Mw1(0ZTfF79l|Ap&=uDe~gx~_BuoIi1X!TCYw-OgK`S2!hj`usxJ8p5L z9P8{qvVYe8sQpg+jrO>G4J6Kf7z2y}#sFi0G4RqcU~q@8?9Mk9mF_xj>Om2>H5s{r zPQ_(+=?2%QqZ|8Ep+q{ClzqxH+9hFUH~AD#RZeLC$r8~H1%|LL&cvSYY zT{8oLo13)k-=k^N${nBZ|XL6fe}xpz)Lm;nR*tAfftalT2i!FkH-uNcQ(K)_#4T*`OOm?rQC1ek~GNa3h%t%O1i_+zP=x`^j`nCj5Hii~}f= zh{)b8OuQJumF`LKVI!5!#IF#5BGH6&?Yn_T8SDcD+zRos$9sZXp;$U8-Jnl$D-=#j zohr$#5FeE!9n&+QcoT`IrRGHPD+C@lu%;0F3PI&b>O}G@#LKl};8#fTITDdO3zE-~ zxa`=##OFvXlujfRR|AI)C=h*)fTs}X4RPs4%s>g~!DTO1hm1ks;3E==%J=#Y8-tMd zl1M5pRm(v$5crKs^HQ}OFb0J|=fGQvqy<--fx;k3?k|T7LGWo!hr>x(Rjx7v0Z&o+ z3$@=E1b)HN(14|k?=uC(pihxNd-eSsXh975U5U$1UamA21noB#k4L4Zi4KaiILy&_ z5lBcF-2en!azJ9DYnGUtZIWx2u-pt%##s_wv+yw~IdDE~5qIG~5LhGLJ2-#%ci!=n zlOH>T{1J3^e%j&~w(sov1q9d+V}LQh7Hc^0~XCw#X{akjaP~hsq>|6kBjlT* zW_6}4A8XAvrrX@f#L#C4d?A5%9y}U2lU)qWl*(nH-iFl8Y-!I!2gJj)=ldEl;B09f z;$wqEn#G7Tc)k+SV2i>eAIV3fli6fSh)*UaqXJAxvxzL9&!_pQ5Cbe#9N9R+{xvZmwCXRvKI_J0)-nrDl<<2n$@JDbyO= zWVH_L!oiz5Csd|N6@lv;IlMEGN(9BTz|A&7l^MBa+HOp!5i)dsTV15e`eIQPE|sGK zmF+wshBW185Rn2 zn5u#>p9i+GKta8M6l|^`07uzMAzLqiwuyRInn4s|hLRM9G&TzgLmFi04XIhg(8xoJ zFOo9BW|nX=$rrL&C^j?$L70pcQb|6Mif2=k>2x?R@ab4So`_9COgI$=o)S55Qa7$mY*{n4N_w0cu+6SR(eQHmTYt)2%X|j~hBC)7G>O#IcRVkel#Jtpm zDv0M6id8jR0)kcN>YUUw^mCPJlRGolXac4ns6fbnh?^*u8qgY`Tt%T=gX-q8`RPh^ zp)3@jj_0%WQWfHwi#4IaRVUS##imrMx~cLccu|V%9*)0r9v3 zmladt#Edmc^8z&I`BJ@Fk!m2@gd&yape(2+q1Dgm1mYacmk?8BAzN=P8cH6qUCcH_ z!h{0uN>JrWe2Zl*Ru@3fa3v2Fff@@cJ6C`V)uBBpMH5NPEh1f6KrAjG#vyxR?i9{Z z#fY?x%DRNL;dnV)fkbZNZsA5NrDiExMrwg_(xNqk+^v<`StPPW^MIpL^H%A7q}#&T zl2}=4_K_f$B@Teqwm&;Mj0zrXam>P|`;+=TI?uq&ldV zhpeIkp{~D0TB*VvICga6#OT#0Cq|EsAW2A5ff!)6TFI87eM7fcZa@MDG9qLOS>f5vKnWU2YU-4f1AOC@8Kfh3WXX0^tFK*$>~h1xZW#5C>~3wc6l zK>76sy0*I<&VO(0~8tDL<~pW~;FzjZwA_@LuK$5}_lamX>?SPvOxKa2s!0AqkLz!+c*tcHP& zwy4G#I){8IBP)~TQG*Au!Fby8KEnsGgyp^Z2jVUZ%X``%BnHKu6_!WL9z1OJ;N4~q z-evaSon{Z-VfNr5vj@Lr_TcSi4}R0^!Q0Fpyw&W%Tg)E3+3dla%pN>w_TY`i50aKQ zm_2yF?7{tJ4_|=Ed+-|p zThywWcsU+7oaCJ*@pqWS-)<8BYLoceOybX(#4nn}pEZeJFo~ZxiJvoxZ<@q6OycV% z@v|oJHIw+NNqog5e#SUHQ8tO6Hiq(<@wb@7-)s_plS%xICh@0D;!l~x-(VaczuqMNq)GgQN&L7zUfc__K%qV(rGme}667FJSZhi^ca5?-2aMei#Fc0mcAhfHA-rU<@z@7z2y} z#=w6U297OV>a>jXY`0i?qQnh@crTy2@QQcYX)QI98TI`1(oUCUB)I)9|6U7OX6pss zs_ff#lnOfrcM$Wlqkl)U)GP~tL%T(&dl3PTlY_#BAbp%w?8;O%UM6-v7OHZ`vrZy-Bv zSMwlRt&ws1{E?*{K= z;r|(e^!uOp|IGj6?w@vMyPvfE#5UjYy^e#{(T;%S=l)-q$apEDkNdj=13lJK2{xmi zEfvmY#5=GX_#Yfza{zX8Obm0QM-L94g55-|81C3n4&(a7e}YTbdhLOp9_#s8ar+B? zhX3o6BuxxmePmdAi|cc7@PnIYslZJPpPJx~9)sVLM~?K1&%~FF9vnY0IyQ9TG5`H zir5il#4KwOULDoir^fH2Tx(H%np8>!*y#mb9&7>=yFV!8lG|+$j6ojx73EPY*>gd; zTS>lxx4GTJsF-YlLm`S^P{%{kGeC`%ymUq-t#XXga89ZnQ!(xq-Qz8yT>)g6fTSm)Xk$TrZ1Z9%|q zbeoBnVH)9bRPc1Cv1obJhedapiI!m+(Q;I9+}0h~(_@`!&ov%kV!@qef-y)V7Dogh zn6irB#dih8_K&6D|8_{SaGS?*a%-2qh#Iw&8X0T~29?gh&hVnxlyI~-W^QeE+=0Wx z2d?ca!%357u}=g9xhwZ_@o-pDWY|70A0=peRnwxx)`2(LQ$X2#UZ}wtj=TVh1RqS; zXH0nmP7J_q)RxXd>12AP9!cWW1cZkC5>T#27_dwXj|`vC_gfK(5(T+$FBj&9jvj

cXUk4A@Fs%jVHu?o3&j z7s@ghN_B^&R4@)m(`P{QCXHm=#w^R{g@ZOM$P^7%-NF>`lS0d7)f@^E|o2!1O}B8WdYs10M-9=Cf9Wb3Ju9 z7$B>)EMH;_#2+tJDzMpIlr4%*7UNiQ4L>n|bwYsM;pp(1{4#u38v}eji{CFbGEEs_ zE@Z4)7V>lGlmr@P$dU>J)w5G2EN7-#*0dzK1acFHA`H)?@3e*;AwN^V?}EBOe>V-C zva!a2TEWNOki2HLJ_RR144>7qi{)z8L?+}2<|4y`Xxn@l4dI(rbdmxwg~M==t&EOK z37P6-Kb&QNqebB96O;^esSYO%=Ak|y4o-9AOJZYzYgxp)2FVje0ZuT8($Lw4VhK(L zX5rip9EXB4aBzYLj&s2wEI1~h{b=KZD6$M}wm~WlW1B{^jt+0Yfe^8cO5bB{2A#z! zX5n;F366un>4O|duRuRElSP>n4|_lxnygo6xSRkpV3Z&<708sBjQIVKzDHX_jkLmvh`XUmgg*YcRYswhh(n$r@WlH zu&K&H-RMNCLU`hdhA7%tWdPwV%eE*ZAT1ETF1BNB^xz88#Esu9VLVw4E{B&B z_6@;07D8fA3=LJ3-{@7I$my*jiIEe>P9Ep3J`EWy74F%v9Jg=Swaane zEUGg!EnAdoOdHnLmo^^P)(xW*hhf$O)5`JD>xad>%GFVTgXsAtoZ1{3hn@)6C$3!X z;OICUp*t|q$~>xYvEo`QN_thS!V9h!Boo(-F|p`5>Y82zaybr0pQxBJ0noKq;M^7* z=`PV5KUzdI-rlDd7F$Dg}x#!0Ce)F$X8f9}+mbl+L^5m>Gu{pNDm z9@q~>y~sFyxovAxm(7H#QC|C0`a;9^sJ+OtEJ!xFyyu0Pjf%@_mP4W~^X@#+mU&E~ z2-`JwXmhwj?8TjOcJR;~H9lC5sWk${~ATH{^Vm zqWw~SreIoygZs>6B8Wz!h!%U9p!6A0W1v^=MeyD;!_cundTMJEXO<1A(ICCT5qov1 z>VPP19I1?+;Y7VSQ58FvsROuHoJ!g7QW0J`!YSgIq%JW%5~YS?@miZ^S*LcjJun1? zTBjr=k%$L)8QHLfV-vc>jL{luv7COzLKe&n8QYFkn-i9)U(=G(Qh}Oe)X3l>OhS-G z540CaV~oI}(q_fcAT?=dVpTO!?HhYJUP#!H0eH#Zo;0?j;8as)sY=Ecs4NWZ!x3^? z(ql+w3O>0g8GWURh9LZQ+$Hn!n5Y1>TfTrhoJYpZ_qrUtp`J%hK+lQ1niCpReQ_@$K^2 zyx;Ub<$ag;Ht%U~(!0U)6VI2xE5ZGqY0s#q7hYyRi~+^~V}LQh7+?%A1{ed30mi^9 zhXJxXGjKvlasCJhiZeSv_^7FPs0fOaQb>j3$`BCU)Kogjh~#XM;!qP16xV%#pt!pO z#3pJ!D30hr2E{=jAOh4>E~X+V4p$)+KUId8vyC{-&r*O4vWRGNlH$1!5NoM2D4tM3 z2F0@@Al%ecTvP6Ihj)v(+|;g;X4iSx*x~)SJmD9BV@-$kx%s5Vg1*megIaJfwAG%-YO zYALBuewr9!h0o67&9Dt0O$;$N@wBAHUYZzUZl=MlkXYd!niyh*3rVRHb+1Yc9LmMH zanZyO3zd%4uox#z46#tvqEz7yniyhkqEk{$*;ged5tI7jZkiZkp%#i#W9XuZAr>l; zTf`K1(!>yRlRhi8aNDZHAct6@7IzGzp#a&CV%`_0t5RPKLzI^L1wQm->GGfRckNo? z{Q_VE=s@=ku=@q1I|$I;5AB{OcE12@6lM1d!1*#z4DF6mqk9k7{Q}|!Z7ogm#$k59 z0J~pcrI(W-7f&gaTPWU&RC!WTm0FHC8`vutj0@)^bfrXO`ukiZ?qA-(J?-vl)^yU2m=~w-az5je9bdsGTc<~o? zm_)_^V}LQh7+?%A1{ed30mi_~ngQ~rW>`&S=LkZQFZxn-05&(Ua|Eq?uyX{edcdxM zSJpWKwC7*BUtsd)vtRzdzx};Sm|fsy-D9)NF$Nd|i~+^~V}LQh7+?%A23~vy$aVoZ zengoE!$A|u8FV<&LOI6{yS^z0rs3cbeua^xNkO;8Th!!COp z`F;V|`A*IT9I2pOKaoo0DF!Y$lt#Js0ZtWAuAhKY5R@w{;9!iGToyQxLAfXc4y;iw zmw@AbluIt)?A#{kOppmcu?viS>a(%8{P3E4M7x0RaSM14{DJ=){;&A|%>R`C_x&I6 zzuW(2|Goa({dND8|7QPn{zLvN{9*qt|0ciR-|73M??=9G`=0gvx$lqRW%k1uU<@z@ z7z2y}#sFi0F~AsL3@`>51B`)}h5?ri-LiwO2id9yx2VBO)Zk_{xJeE6sKJeDFrWr6 zR)ZVV;CeNqDKJ9(TJL^5{-RAk3=g&QldT#Ta@B}>;_cQLt+;_WghL_n7V}LQh7+?%A1{ed3 z0mcAh;J+^eeVxRsKh@hkDM0l)M+#8AK9UAhZd#)Ol{-JFK>3nK3Q)ackOEY1Sfl}! z%MU3)_0l{FP`x9P0#vUkqyW{+D=9$rB2gMpxz>;hlrNy80M)xFDM0lqL<&&7La!H^ z0^#aA<#s!oK;`yC3J_NO@pN_r4XE5kO98643eteeWr!4@dQBz;sNT{@0jihTQh@4> zz%-z8%Pw@&$d7wSLjpL&8nsbGm-*rCXJndZT_?+V|$6ou-;AQs17+?%A1{ed30mi^f z$pGAC+%p0zCE5IRZLwLbRtmy=Lvz+snUt7A(D7KB7-h;r6oam(C+0?(&=AF-%ks%$ zVBda zWx`4nV}qOAdq^(vlgA6R^reHP0;|6lp< z@bC2fsc*{hJ>Q`Bd!8r2Cg5~G>`FMlX*Se(u-9r2^z>NY8*GA42mxP>jQ`tl;KcCI z#4v|17{_s3p9@|2S}Jf8!>1;=<0nSPhEAO3t{pxt-T7LrG=)ktQ_MDsA_PY_OU<%? zUpXq@v3ua~@PTXl%0gwTS?m)5LGH@ETs#~O;+G0SBVRAonx$%`?bUDd0^0Y=*+w&y%{NQ)rRE~1Tp^C-DS1^cA%{Mn ztCyzQ$_|l*IU$p6Y6KL7Nui#Zt29exHCFt54GeJ5`wkCsz+$;1G&0R92xXTwzpO87 zUb@yRj#SRiiX#>5N(leg*D_MUaq>u|(Ez=W$1CzT7k98C5Gzva1I@68>k|h)AfX?7 zFOmi)hmM^X9vwM~Mm{Pe$emcJCk_~o{YK#QiaY>~Z|DvT^jNDUFd>~q{wsueXig36 z#sY^oN(77^Jve*{MrW-Ut+@`f)=i zCytFCh1bT0k4|82W!8-76-BDu5NeCuQTX=bH=!%2){S1PmJ6BrYE6a-(p?RCnQ#e{K^LNG(=pBc)1#b$1my*?A~oXEow_+whSMI zOhcHR6JR{u_UHN*{b_sHSIN!@{qSb+{J9}9)21-ix;(jh8{)5A7bXBXxpo+zR_lf@mcl){n`+KYwQKD2& zzzObXu-rz5$FKM^-Q9s?kM(vXc~LdAN{l1yx;*HBC?hyhtG=hZx&zT3>s)&R*+v5< zcY-uE?KTrH!!*L>sNm^NW6|=Q3}@!$;{j-Q2dQEtK6(7F4ZbAn(Cl8e3-HnRgrAOn z;YZ$%k6U^yKeTid{13wo0zTiPzJ~V>@37|!?muzA-t|$}oa4_NH`~9{{pzkycb@Lt zVf{Dj>nuOCeWK%AmWm6^36|eNQdjzOJ8wtov6O7DzJh>fG1(^0Z`7;;RiLH{)yN=s z!{Ol*!{8}SmdA~bE6sCh(||oN3h8Is(}$KU)GOIC42maVFj#^v3uk1Hl#!E1N3T0M z4Bs{R(<$+5@S-MT+NW~Xv~k+ZP4>el0P?1O0t}MCQ6V#ST4by3M;jfi1tFcC)+N8f z0h%RbX3(%68fsCLK?+tvk}xO2vG#m6(cdq)B%hPYARyt z5TlG_p)}(Mg6F4pi7oRkJXh1afO0No%P6j|MQMx>FY5SDlYm$bWp1PBkXU_kmNQ6C zxT}vGyIQHcU;n7Ed8s`R-ECb8C<-EH7u@b5)ev=D)rMZ3HnicDzCwMcubrr1c_&WQ zZjh>&U|Xt}5mFVQMyX;Mr9yDIZ-*UCKJKxL9Zs9^;xb|%ARDgQ zb)&7VnCMs)Oj;#0N@>1;h;EX{))X>uU9Y2kno-_CosafOpYkM_yresD?Jl#5)4r79 zwSR3}s&BRjcI~n*WBZ!+nKrz&rP8!dR#s<9PA_C!fxh5|%d{KBN1g9W>ZM0!+eQD!y zZQU?BaTvN!SXvk#y?$8Ct5m)W^z}l%SzZJnbRf7AapiIcN5>~%Ic1`ic~r|{#kE$H z^r~2e7hEq$CaxP}V$pL%`-?y>$BEVvPSM9^JzIgvJd8sPNsx7}p9>=`hC(-sQdvb7 z+If_ofi(|$!=WQbS}9d^xSz{4k+Op2VK>JcNo>hjt|>uG+DKcALyF(jwihFY@d$E2 z9JOKvR(O`Pb|vhC5)($MFR2BzcKD;c?Y1>7Xc=O|5?@ADhvpE&r$D20YQ|%Al8J07 zwj@;^Fzywb1kTXX&gCJyxO92axHHB2DRx1qvEqJGtF#_+ziRltu8Y;6(Aq3YsUP=g zsN-`vm%PhY*#l$H=f_u+O>G9<7nH%3WDPP@T;2~Ra>$Qr)6=FYu7_$PT;xoM{U92+ zYP#({6bVV)zPt~A?zYj2u6^4{P7p&;wUP@A={J}6+5`JrN9&qwN?*=WL7TdRoVwf{ z=+c%SK(fi@D~Y3ZZ5DWK+Ox}Rmah

v!kHA)of4He8Z2iA~2lw2yX(y*SBcjM37k zxqVs=MqjZ;O*RsWjTF9*&;*?tV;kBmHa;;lc3hdU8mwY#UXizwsfGo3s0^&J835&^ zh(2ZV)LBeaGs;%?JHVzJkyEKmxD{d}_$sFo$OL}a#00L{*MmQJSLsv-$7eK1q&GOW zPZJv)AL$P4>9Niz?L>Z4+)RZ3*l#Kx?>N#(79)a{Ltw4~_%uw5mOcF6ygITL+T)+`tv$Ry8CK)v{xR}J;4YU`j1Ut}#nOa#< zkF;458l)x-O{}UWib&8CUP#!Ho@51B?O20AqkL@L$XTDell>#@f6u4=nz@C)?H?9;ISSj%0l>*nT6zE?m&`Y^@P^m(S zK)4VCSM?<;1+HBw@S>Fh*Q^xiUMbMEQlMj{z^;`7Z7T(KK;L-~^`Ej`;Ms-K@Ao(| zpG0;6%NmQt|8@V9{)hZ${nz_r{C zCEEqAd&_V7|Km09e!XlLc!l&}ESro0#sFi0F~AsL3@`>51B?O20AqkLz!+c*yf6li zqSs`*fcqB*-~T^vt<;%a;DwRN-eL?e1{ed30mcAhfHA-rU<@z@7z2y}#=t9#fnzAY zvR&YdKe_*(zVyN0siJ!a#d8F&_iqGW1ibeX-ciq2JX!Y--HYxn*PC2hogZ{29DnRM zYX7Qzvisk<@91`Qy{&6U=VP6Nwm-3rcl>?FG!nsn7y}dr>RTNnBRyl=yWMuRih-MiF6{Yr?zL6X(~Qujna%HV~HpzR+|cKTxFVy<7%Tc`BXF=PU+GN ztTIi-bG%WS;dCSt)|d0*Ri>#pz1OFi45icYcq*wY=LUM3u(8uzhZOJ5hG~YQ$&_A) z)~_ z)XdXNCZbV;5txIXCXw4}(X^=~LWyKJ9n*7br>99Qr{dAxs6OM#WGt=!ly$E%%|z^+ zIk&M?BoWttvb*SM61iO{f_wRDe%hd^Btp@2gy(f#!fYo>a}~`qky|9B84f3ON!D$v zEN1$w=~pEYiiFdATwk3Xt4vc!M$C%|yvBL`SH((Cli1s)t9kP@!;yGeUrv~_716v+ zwhIipJD=U~k)6ln{Q~}e?-lL`{SD7^ZkzYB?rR)-eeZUB&i*s!TF<28F8?1oPrIIU zKkIzN`Ca>meQSI-`2Nuq@}Bp6$g|BgN0|?@$BY5S0AqkLz!+c*td4<0T`(xKn%hZ; z!v@8!x^-1z6jSLIni%q!RJMLzLK8zQlw#1_yect@k#f_j#3**ho>hraOo_NDTW#+ zO$@P6itWWg6GP06VotHIN{nJ5>86Px7D_RCbkW2R3#HgGI%#5vxlwErwpEEy%ncpG zXei)(fkOesf&jyj5*m`oc7fsPfBd^E-X8ii+Apvbmi+x}zW}0#{k(Jxu>As4rDkz1 z7b;Z;h+PQVFOUkc{Q|4nTBFPe^a~!T5Zf<6