|
| 1 | +<script setup lang="ts"> |
| 2 | +import oxcIcon from '@assets/icons/oxc-light.svg'; |
| 3 | +</script> |
| 4 | + |
| 5 | +<template> |
| 6 | + <section id="feature-check" class="wrapper border-t grid md:grid-cols-2 divide-x divide-nickel"> |
| 7 | + <div class="px-5 py-6 md:p-10 flex flex-col justify-between gap-15"> |
| 8 | + <div class="flex flex-col gap-5"> |
| 9 | + <span class="text-grey text-xs font-mono uppercase tracking-wide">Vite+ check</span> |
| 10 | + <h4 class="text-white">Format, lint, and type-check in one pass</h4> |
| 11 | + <p class="text-white/70 text-base max-w-[25rem] text-pretty"> |
| 12 | + Keep every repo consistent with one command powered by Oxlint, Oxfmt, and |
| 13 | + <code class="mx-1 outline-none bg-nickel/50 text-aqua">tsgo</code>. |
| 14 | + </p> |
| 15 | + <ul class="checkmark-list"> |
| 16 | + <li> |
| 17 | + <code class="mx-1 outline-none bg-nickel/50 text-aqua">Prettier</code> compatible |
| 18 | + formatting |
| 19 | + </li> |
| 20 | + <li> |
| 21 | + 600+ <code class="mx-1 outline-none bg-nickel/50 text-aqua">ESLint</code> compatible |
| 22 | + rules |
| 23 | + </li> |
| 24 | + <li> |
| 25 | + Type-aware linting and fast type checks with |
| 26 | + <code class="mx-1 outline-none bg-nickel/50 text-aqua">tsgo</code> |
| 27 | + </li> |
| 28 | + <li> |
| 29 | + <code class="mx-1 outline-none bg-nickel/50 text-aqua">vp check --fix</code> auto-fixes |
| 30 | + where possible |
| 31 | + </li> |
| 32 | + </ul> |
| 33 | + </div> |
| 34 | + <div class="flex flex-wrap gap-3"> |
| 35 | + <div class="px-3 py-1.5 bg-slate rounded w-fit flex gap-2 items-center"> |
| 36 | + <span class="text-grey text-sm font-mono hidden md:inline">Powered by</span> |
| 37 | + <a href="https://oxc.rs/" target="_blank"> |
| 38 | + <figure class="project-icon"> |
| 39 | + <img loading="lazy" :src="oxcIcon" alt="Oxc" class="w-[20px] h-[12px]" /> |
| 40 | + <figcaption>Oxc / Oxlint</figcaption> |
| 41 | + </figure> |
| 42 | + </a> |
| 43 | + </div> |
| 44 | + <div class="px-3 py-1.5 bg-slate rounded w-fit flex gap-2 items-center"> |
| 45 | + <span class="text-grey text-sm font-mono hidden md:inline">Powered by</span> |
| 46 | + <a href="https://oxc.rs/docs/guide/usage/formatter" target="_blank"> |
| 47 | + <figure class="project-icon"> |
| 48 | + <img loading="lazy" :src="oxcIcon" alt="Oxc" class="w-[20px] h-[12px]" /> |
| 49 | + <figcaption>Oxc / Oxfmt</figcaption> |
| 50 | + </figure> |
| 51 | + </a> |
| 52 | + </div> |
| 53 | + </div> |
| 54 | + </div> |
| 55 | + <div class="flex flex-col min-h-[22rem] sm:min-h-[30rem]"> |
| 56 | + <div class="bg-oxc pl-10 h-full flex flex-col justify-center overflow-clip"> |
| 57 | + <div |
| 58 | + class="mr-5 sm:mr-10 px-5 py-6 relative bg-slate rounded-tl rounded-bl outline-1 outline-offset-[2px] outline-white/20 font-mono text-sm leading-[1.5rem] text-white" |
| 59 | + > |
| 60 | + <div class="text-white">$ vp check</div> |
| 61 | + <div class="h-4" /> |
| 62 | + <div class="text-grey">info: <span class="terminal-blue">vp fmt --check</span></div> |
| 63 | + <div> |
| 64 | + Checked <span class="terminal-blue">42 files</span>. |
| 65 | + <span class="text-zest">0 issues</span>. |
| 66 | + </div> |
| 67 | + <div class="h-4" /> |
| 68 | + <div class="text-grey"> |
| 69 | + info: <span class="terminal-blue">vp lint --type-aware --type-check</span> |
| 70 | + </div> |
| 71 | + <div class="text-grey"> |
| 72 | + Found <span class="text-white">0 warnings</span> and |
| 73 | + <span class="text-white">0 errors</span>. |
| 74 | + </div> |
| 75 | + <div class="text-grey"> |
| 76 | + <span class="text-zest">✓</span> Finished in <span class="text-white">184ms</span> on |
| 77 | + <span class="text-white">42 files</span>. |
| 78 | + </div> |
| 79 | + </div> |
| 80 | + </div> |
| 81 | + </div> |
| 82 | + </section> |
| 83 | +</template> |
| 84 | + |
| 85 | +<style scoped> |
| 86 | +.bg-oxc { |
| 87 | + background-image: url('@local-assets/backgrounds/oxc.jpg'); |
| 88 | + background-size: cover; |
| 89 | + background-position: center; |
| 90 | +} |
| 91 | +</style> |
0 commit comments