Joy of Code
🧑🎨 About
Joy of Code is a digital garden growing curious minds focused on web development and web design.
▶️ YouTube
You can find my videos on YouTube.
💰️ Support
You can support my work by becoming a patron or becoming a YouTube member starting low as $1/month.
🤗 Contributing
At the end of each post there's a direct link to the Markdown file of the post you can edit within GitHub. Read the contributing guidelines to learn more.
💬 GitHub Discussions
I use GitHub Discussions to track breaking changes for posts which you can use to report issues.
🧭 Uses
-
⚡️ SvelteKit for the framework and prerendering pages ahead of time making it blazingly fast 🔥
-
The project is hosted on Vercel
-
The tests use Playwright for end-to-end testing and Vitest for unit tests
-
I use Buttondown for the newsletter when I remember to send one 🤭
-
I'm using Supabase to track post views
-
I use social-share-images to create dynamic social share images (I plan on using
@vercel/og
instead) -
For analytics I use Vercel Web Analytics
📜 Setup
These instructions are mostly if you want to learn how the code works but in general I don't accept pull requests that aren't related to posts but you can always raise an issue.
The project uses 📦️ pnpm but any package manager should work.
👬 Clone the project
git clone https://github.com/mattcroat/joy-of-code.git
.env.example
to .env
and change
⚙️ Rename # Private
BUTTONDOWN_API_KEY=API_KEY
# Public
PUBLIC_SUPABASE_ANON_KEY=SUPABASE_KEY
PUBLIC_SUPABASE_URL=SUPABASE_URL
📦️ Install the dependencies
pnpm i
pnpm run dev
or build and preview the project with pnpm run build && pnpm run preview
.
💿️ Run the development server with pnpm run dev