Skip to content

Mark 2026 event as concluded and point visitors to 2027#27

Merged
MasonEgger merged 6 commits into
mainfrom
fix/issue-26-event-concluded
May 12, 2026
Merged

Mark 2026 event as concluded and point visitors to 2027#27
MasonEgger merged 6 commits into
mainfrom
fix/issue-26-event-concluded

Conversation

@MasonEgger

Copy link
Copy Markdown
Member

Summary

The 2026 conference is over, so the site needs to read as a post-event archive and steer visitors to PyTexas 2027. Following the pattern used by the 2025 archive site:

  • Banner (overrides/main.html) — replaces "PyTexas is this weekend!" with a post-event message linking to https://www.pytexas.org/2027/.
  • Homepage (docs/index.md) — hero, primary CTA, and card grid rewritten in past tense ("That's a Wrap!"); button now points to the 2027 site.
  • Copy across the site — about, attend (in-person, virtual), sponsors (index, sponsor-us, asking-for-sponsorship), and schedule/tutorials updated so dates and CTAs match a concluded event.
  • Callouts on the virtual attendance and opportunity grants pages (both still linked from the FAQ) noting that they're concluded / applications are closed.

Also clears the remaining concrete items from #3:

  • Removes docs/reg.md, an orphan stub that was never wired into mkdocs-redirects and is unreferenced.
  • The previously-flagged broken anchor (faq.md -> in-person.md#grants) and missing-nav entries for sponsors/index.md and attend/virtual.md were already fixed in earlier commits; verified here.

Includes a separate small commit adding just serve-ts [PORT], which binds mkdocs serve to the host's Tailscale IPv4 so the site can be previewed from other tailnet devices.

Fixes #26
Refs #3

Test plan

  • just validate (strict mkdocs build) passes
  • just serve — confirm banner reads as post-event and homepage CTA points to 2027
  • Click through attend, sponsors, schedule pages to spot-check tense
  • FAQ link to opportunity grants still resolves and shows the "applications closed" callout
  • just serve-ts binds to the Tailscale IP and is reachable from another tailnet device

The 2026 conference is over, so the site needs to stop reading as if
the event is still upcoming and start steering visitors to the next
year. Following the pattern used by the 2025 archive site, this:

- Replaces the "PyTexas is this weekend!" banner with a post-event
  message and link to https://www.pytexas.org/2027/.
- Rewrites the homepage hero, CTA, and card grid in past tense
  ("That's a Wrap!"), with the primary button now pointing to the
  2027 site.
- Updates descriptions and copy across about, attend (in-person and
  virtual), sponsors (index, sponsor-us, asking-for-sponsorship), and
  schedule/tutorials so dates and CTAs match a concluded event.
- Adds "concluded" / "applications closed" callouts on the virtual
  and grants pages, which remain linked from the FAQ.

Also resolves the remaining concrete items from #3:

- Removes docs/reg.md, an orphan stub that was never wired into
  mkdocs-redirects and is unreferenced.
- The previously-flagged broken anchor (faq.md -> in-person.md#grants)
  and the missing-nav entries for sponsors/index.md and
  attend/virtual.md were already fixed in earlier commits; verified
  here.

Fixes #26
Refs #3
The default `just serve` binds to 127.0.0.1, which is fine on the
local machine but unreachable from other devices on the tailnet
(e.g. testing the site from a phone or another laptop).

`serve-ts [PORT]` resolves the host's Tailscale IPv4 via
`tailscale ip -4`, fails fast with a clear message if Tailscale
isn't running, prints the URL it's about to bind, and starts
`mkdocs serve` on that address. Defaults to port 8000.
@github-actions

github-actions Bot commented May 10, 2026

Copy link
Copy Markdown

Dependency Review

✅ No vulnerabilities or license issues or OpenSSF Scorecard issues found.

Scanned Files

None

The link checker is currently failing on
`https://abmparking.com/facilities/austin-city-hall-garage/` (the
"Other Parking Options" link in `attend/in-person.md`). The URL is
fine for real users — a browser request returns 200 — but the server
returns 403 to requests without a browser User-Agent, which is a
common Cloudflare/anti-bot pattern.

403 means "Forbidden", not "Not Found". The resource exists; the bot
just isn't allowed to fetch it. For a link checker on a marketing
site, treating 403 the same as 200 is the standard workaround.

Adds 403 to the existing `--accept` list alongside the redirects and
429 we already pass through.

@ProsperousHeart ProsperousHeart left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Minor updates requested. Approved to merge even without them.

Thanks for taking this on and getting it done so fast!

Comment thread docs/sponsors/sponsor-us.md Outdated
Comment thread docs/sponsors/sponsor-us.md Outdated
Comment thread docs/index.md
[Purchase Tickets](https://pretix.eu/pytexas/2026/){ .md-button .md-button--primary }
The 2026 event has ended. Thanks to everyone who joined us in celebrating **20 years of PyTexas**! We hope to see y'all next year.

Join us for the **20th year** of the largest gathering of Python developers within the great state of Texas. We'll discuss software development, data science, community, and of course: Python.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It might be good to keep this line for google search purposes. But fine if not.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Updated to include the 20th stuff.

MasonEgger and others added 3 commits May 12, 2026 11:03
Co-authored-by: Kassandra Keeton <ProsperousHeart@users.noreply.github.com>
Co-authored-by: Kassandra Keeton <ProsperousHeart@users.noreply.github.com>
The post-event rewrite stripped the keyword-rich paragraph that fed
Google search ("largest gathering of Python developers... software
development, data science, community, and of course: Python"). Without
it, the homepage is a wrap-up message plus a CTA, which gives crawlers
very little to index. ProsperousHeart flagged this in review on PR #27.

Restores a past-tense version of that paragraph between the wrap-up
message and the 2027 CTA. Keeps the original SEO keywords and the
**20th year** anniversary callout, and matches what the 2025 archive
site does (which kept its equivalent line for the same reason).

Also drops three em-dashes from the same file while in there: the H2
wrap-up header becomes a colon, the Sponsor card uses a period, and
the new SEO line is written without one.
@MasonEgger MasonEgger merged commit 2fef217 into main May 12, 2026
2 checks passed
graffhyrum pushed a commit to graffhyrum/2026 that referenced this pull request May 14, 2026
* Mark 2026 event as concluded and point visitors to 2027

The 2026 conference is over, so the site needs to stop reading as if
the event is still upcoming and start steering visitors to the next
year. Following the pattern used by the 2025 archive site, this:

- Replaces the "PyTexas is this weekend!" banner with a post-event
  message and link to https://www.pytexas.org/2027/.
- Rewrites the homepage hero, CTA, and card grid in past tense
  ("That's a Wrap!"), with the primary button now pointing to the
  2027 site.
- Updates descriptions and copy across about, attend (in-person and
  virtual), sponsors (index, sponsor-us, asking-for-sponsorship), and
  schedule/tutorials so dates and CTAs match a concluded event.
- Adds "concluded" / "applications closed" callouts on the virtual
  and grants pages, which remain linked from the FAQ.

Also resolves the remaining concrete items from pytexas#3:

- Removes docs/reg.md, an orphan stub that was never wired into
  mkdocs-redirects and is unreferenced.
- The previously-flagged broken anchor (faq.md -> in-person.md#grants)
  and the missing-nav entries for sponsors/index.md and
  attend/virtual.md were already fixed in earlier commits; verified
  here.

Fixes pytexas#26
Refs pytexas#3

* Add `just serve-ts` for testing over Tailscale

The default `just serve` binds to 127.0.0.1, which is fine on the
local machine but unreachable from other devices on the tailnet
(e.g. testing the site from a phone or another laptop).

`serve-ts [PORT]` resolves the host's Tailscale IPv4 via
`tailscale ip -4`, fails fast with a clear message if Tailscale
isn't running, prints the URL it's about to bind, and starts
`mkdocs serve` on that address. Defaults to port 8000.

* Accept 403 in lychee link check

The link checker is currently failing on
`https://abmparking.com/facilities/austin-city-hall-garage/` (the
"Other Parking Options" link in `attend/in-person.md`). The URL is
fine for real users — a browser request returns 200 — but the server
returns 403 to requests without a browser User-Agent, which is a
common Cloudflare/anti-bot pattern.

403 means "Forbidden", not "Not Found". The resource exists; the bot
just isn't allowed to fetch it. For a link checker on a marketing
site, treating 403 the same as 200 is the standard workaround.

Adds 403 to the existing `--accept` list alongside the redirects and
429 we already pass through.

* Update docs/sponsors/sponsor-us.md

Co-authored-by: Kassandra Keeton <ProsperousHeart@users.noreply.github.com>

* Update docs/sponsors/sponsor-us.md

Co-authored-by: Kassandra Keeton <ProsperousHeart@users.noreply.github.com>

* Keep homepage SEO copy and drop em-dashes

The post-event rewrite stripped the keyword-rich paragraph that fed
Google search ("largest gathering of Python developers... software
development, data science, community, and of course: Python"). Without
it, the homepage is a wrap-up message plus a CTA, which gives crawlers
very little to index. ProsperousHeart flagged this in review on PR pytexas#27.

Restores a past-tense version of that paragraph between the wrap-up
message and the 2027 CTA. Keeps the original SEO keywords and the
**20th year** anniversary callout, and matches what the 2025 archive
site does (which kept its equivalent line for the same reason).

Also drops three em-dashes from the same file while in there: the H2
wrap-up header becomes a colon, the Sponsor card uses a period, and
the new SEO line is written without one.

---------

Co-authored-by: Kassandra Keeton <ProsperousHeart@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Update Site - Event Has Concluded

2 participants