jeanrojas.com

Footer

jeanrojas.com

Boosting remote teamwork and improving systems architecture focusing on team communication patterns.



jrojastechnology@gmail.com
+1 (929) 2245443

Links

  • About
  • Experience
  • Blog
  • Contact

Social

  • Github
  • Codepen
  • Linkedin
  • Twitter
  • Behance
  • Quora
  • AdpList

Subscribe to my newsletter

The latest news, articles, and resources, sent to your inbox weekly.

© Jeanrojas.com All rights reserved.

← All articles

May 4, 2026 · 1 min read

Welcome to the new blog

A short tour of the new MDX-powered writing setup, complete with syntax-highlighted code blocks rendered by Shiki at build time.

On this page

This site now uses an MDX-based blog system. Every post lives in content/blog/*.mdx, and the rendering pipeline is wired up through @next/mdx + rehype-pretty-code. The result: zero client-side JavaScript for syntax highlighting, perfect dark/light theming, and full Markdown + Github-flavored Markdown support — including tables, footnotes, and task lists.

Why MDX

MDX lets me mix prose and React components in the same file. So I can drop in an interactive widget mid-article without leaving Markdown behind.

components/example.tsx
import { useState } from "react";
 
export function Counter({ start = 0 }: { start?: number }) {
  const [count, setCount] = useState(start);
  return (
    <button
      onClick={() => setCount((c) => c + 1)}
      className="rounded bg-stone-900 px-3 py-1 text-white"
    >
      Clicked {count} times
    </button>
  );
}

Highlighted lines and inline code

You can call out specific lines by appending {1,3-4} to the language hint, mention a token like useEffect inline, or highlight a phrase with /useState/:

import { useEffect, useState } from "react";
const [value, setValue] = useState("");
useEffect(() => console.log(value), [value]);

Tables and task lists work too

FeatureStatus
Frontmatter✅
Reading time✅
Per-post OG images✅
RSS feed✅
JSON-LD BlogPosting✅
  • Set up MDX
  • Add syntax highlighting
  • Write the next post

Good engineering writing is just code review with more context.

That's it for now — more soon.

Comments

Tags in this post

  • #meta
  • #next.js
  • #mdx

Keep reading

  • Making AI feel realtime with hybrid segmentation

    Segmentation is the substrate for nearly every AI photo workflow worth shipping in 2026 — inpainting, object swaps, controlled generation. Here is how to make it feel instant on the web by splitting SAM2 across a notebook on the user's hardware and a decoder in their browser.

    23 min · May 5, 2026

  • Building a 3D ring configurator in Expo

    A React-Native-first take on the classic R3F ring configurator: GLB loading on device, four metal materials, gesture-driven rotation, Zustand state, and ARKit / ARCore preview — all behind one Expo build.

    11 min · May 5, 2026

  • Running ONNX models in the browser without losing your weekend

    A working recipe for shipping image segmentation in a tab — Web Workers, WASM, pre-encoded embeddings, and the small things that decide whether the demo is fast or felt-fast.

    4 min · May 4, 2026

All tags

  • #ai
  • #ar
  • #expo
  • #huggingface
  • #image-generation
  • #mdx
  • #meta
  • #next.js
  • #onnx
  • #r3f
  • #react-native
  • #replicate
  • #sam2
  • #segmentation
  • #shaders
  • #three.js
  • #vercel
  • #wasm
  • #web-worker
  • #webgl
  • #webgpu
← Back to all articles

Tags in this post

  • #meta
  • #next.js
  • #mdx

Keep reading

  • Making AI feel realtime with hybrid segmentation

    Segmentation is the substrate for nearly every AI photo workflow worth shipping in 2026 — inpainting, object swaps, controlled generation. Here is how to make it feel instant on the web by splitting SAM2 across a notebook on the user's hardware and a decoder in their browser.

    23 min · May 5, 2026

  • Building a 3D ring configurator in Expo

    A React-Native-first take on the classic R3F ring configurator: GLB loading on device, four metal materials, gesture-driven rotation, Zustand state, and ARKit / ARCore preview — all behind one Expo build.

    11 min · May 5, 2026

  • Running ONNX models in the browser without losing your weekend

    A working recipe for shipping image segmentation in a tab — Web Workers, WASM, pre-encoded embeddings, and the small things that decide whether the demo is fast or felt-fast.

    4 min · May 4, 2026

All tags

  • #ai
  • #ar
  • #expo
  • #huggingface
  • #image-generation
  • #mdx
  • #meta
  • #next.js
  • #onnx
  • #r3f
  • #react-native
  • #replicate
  • #sam2
  • #segmentation
  • #shaders
  • #three.js
  • #vercel
  • #wasm
  • #web-worker
  • #webgl
  • #webgpu