HackerNews
To better test that all ecosystem ingredients can work together, we forked Evan You's classic Vue HackerNews 2.0 as a "real-world" validation benchmark for Vue Lynx. Since Vue Lynx is built on Vue 3, we used the Vue HackerNews 3.0 community port as our reference as well. This port validates four mainstream ecosystem libraries working together: Vue Router, Pinia, TanStack Vue Query, and Tailwind CSS.
Tailwind CSS Version
In the first iteration, we had AI rewrite the styles using Tailwind CSS (@lynx-js/tailwind-preset).
CSS Version
For this version, we had AI reuse the original SCSS files from the reference implementation as much as possible. Interestingly, the CSS version maintains the max-width centered layout from the reference on desktop. Try clicking the "fullscreen" button below to see this in action.
Overview of Changes
Most code transferred directly — component logic, Vue Router, Composition API, and even <Transition>/<TransitionGroup> work identically. The Vue HackerNews 3.0 reference is a Webpack-based SSR app using Vue 3 + Vuex 4 + axios. Here's what we changed when porting to Lynx:
Notable adaptations:
- No
v-html: Lynx has no HTML parser, so we use astripHtml()utility to convert HTML comments to plain text <router-link>: Wrapped with Vue Router'scustomslot API since Lynx has no<a>tags