Skip to main content
luke@terminal:/projects/projex$ ls
luke@terminal:/projects/projex$ cat projex.md

Projex

[in-progress](hybrid)

A shadcn-style component library for project showcase pages

stats:

github:
0stars
0forks
npm:
310downloads
1.1.3version
stack:
TypeScript
React
Vitest
ESLint
links:

background:

It started with a simple question: how do I showcase my projects on my personal site in a structured way? I asked AI, did some research, and kept getting the same answer - Most developers just build a custom solution. That struck me as strange. If everyone building a personal site needs a project showcase, why is everyone building the same thing from scratch? That gap felt like an opportunity.

why:

Projex is my attempt to solve that problem once and for all. A shadcn-style component library that gives developers pre-built project cards with automatic data fetching from GitHub, npm, and Product Hunt. But it was also about more than the problem I was solving. I wanted to build something that other people could actually use. My first real OSS project. One small step toward building something with my name on it.

struggles:

[challenge]OIDC trusted publishing took several failed attempts before working it out
[challenge]VitePress on Vercel silently 404s if your output directory or routing config is even slightly wrong
[challenge]Started with a split CLI/core architecture, merged it back — premature separation added complexity
[learning]OIDC trusted publishing is worth the setup pain — no secrets to rotate, no tokens to leak
[learning]Architecture decisions made on day one are expensive to undo. Bias toward simplicity when possible

timeline:

2026-02-21Monorepo scaffolded with pnpm workspaces, GitHub API integration wired up
2026-02-22Added NPM registry and Product Hunt as data sources alongside GitHub
2026-02-23VitePress docs site live with interactive examples
2026-03-08Rebranded to Projex — 1.0.0 shipped with OIDC publishing, no more NPM_TOKEN
2026-03-08GitHub Releases now created automatically as part of the publish pipeline
luke@terminal:/projects/projex$ git log --oneline -5
082fb6bdocs: update searchable-list example and add customizing search guide2026-03-11T00:36:24Z
137a4bechore(release): bump version to 1.1.32026-03-11T00:29:26Z
db80405fix(search): improve Fuse.js threshold and add ignoreLocation for better matching2026-03-11T00:25:16Z
615e951Minor change to release manager agent to adjust permissions2026-03-10T23:23:54Z
89819d6chore(release): version 1.1.2 - rename struggle types to semantic categories2026-03-10T23:22:55Z