Commits

Own design back on the portfolio, section assistant restored, and switcher fixed

Night spent polishing the new website: the portfolio recovers its design, the section assistant returns, and the language switcher works again on the article pages.

Long night polishing the new website. From 02:10 to 05:39, the session ran from the portfolio design through language switcher details, with the return of the section assistant in between. I picked up a session that had run out of credits, and the thread flowed.

The portfolio recovers its design

The design of /portfoli/ on the v2 website was an earlier iteration of this very repo: ProjectCard and ProjectVisual were in git, deleted by a generic "fixes" commit. I recovered them and adapted them so they also work with panel entries. SectionListado picks the design by the section's canonical slug, and any new section falls back to the generic grid: the fallback must not break.

Custom fields arrive on the website

Javi implemented custom fields in the core, and the website now reads them defensively: the portfolio pulls the category, status, role, and technologies; notes pull category and link. Everything is optional: with an old core, the page renders without frills but never breaks. Along the way, I fixed the hreflang on the es/en article pages and removed seven copy-pasted ternaries on the English page.

The section assistant returns

The old blog chat has come back under a neutral name: "Ask the assistant". React returns to the repo with lazy loading: its chunk only downloads on the first click. The public endpoint responds correctly in production, but a loose end remains in the core: CORS only accepts the escandell.cat origin, and from the v2 preview the browser blocks it.

Two language fixes

The language switcher was disappearing on article pages: the function that hid hreflang for non-existent translations had also taken down the visible menu. Now SEO and switcher are decoupled. And the switcher now jumps to the translation even when the slug changes between languages, which is how the panel names things: the article page uses the alternatives map from the article itself.

Portfolio on the panel and one pending item

Javi has uploaded the full portfolio to the panel: thirty entries, ten projects times three languages, with featured items manually flagged. With the rule that the panel is the source of truth, the repository becomes pure backup. The homepage now filters featured items and orders them.

Pending for the day: the custom fields for the commits section don't come through the public API (the notes ones do), and until they're reviewed on the panel, the commits timeline waits. Status: open.