An introductionMarch 17, 2024 - 40 day(s) ago

info

Sup nerds, I'm Omar. I'm a software developer and I love to write. Who knew writing code would lead to writing words? I sure didn't, but here we are.

The site you're currently on is probably the 5th I've made for myself in the past 7 or so years. I've always kept finding cooler ways of doing things, and my own site was the guinea pig. The plan is for this one to stick around.

This a pretty static Next.js site. The blog posts and projects are written in markdown files and created on the build step, sort of like a static site generator. I use markdown-it and matter to parse the markdown files, code highlighting is handled by highlight.js. This used to be hosted on Vercel ▲, but I use Cloudflare Pages now. Honestly, I've been un-shipping changes to this site as time goes by. There even used to be a theme switcher, but who needs that? I'll force you to read black on white, unless you do a certain key combination 👀

The site is kind of open-source, but not really. An older version is accessible on my GitHub, but it's not been updated in a while, and still uses Strapi.

structure

// A snippet from the blog post page
const file = dir.find((file) => file === `${params.slug}.md`)
if (!file) return notFound()

const markdownWithMetadata = readFileSync(
	path.resolve(process.cwd(), 'src/content/blog', file)
).toString()
const matterResult = matter(markdownWithMetadata)
const post = {
	...matterResult.data,
	content: md.render(matterResult.content),
} as Post

It's as simple as it gets. I like simple.

plan

Every so often, once in a full moon, you'll see something new here. It might be a cool thing I found, a less cool project I started (and will never finish), or literally anything else tech-related. I tend to get excited about things and then forget about them, so this will keep me accountable. I hope. Please hold me accountable.

I won't be using GPT to write these, so don't expect supreme quality and fancy words, or a shitload of similar posts you've seen everywhere else. I'll try to keep it interesting, but I'm not a writer. I'm a developer. I'm a developer who writes. A wreveloper, deviter, whatever, you get it.

end

That's it for now. Quick read, right? Alright bye.