Hi, we're really excited that you're interested in contributing to Meme Driven Development!
Before submitting your contribution, please read through the following guide.
This project is a website presenting Meme Driven Development (MDD) — a novel (and fun) approach to modern software development where memes take center stage before, during, and after writing code.
To get started:
Clone the repository and install dependencies:
pnpm installStart development mode (includes hot module reload):
pnpm devOpen http://localhost:4321 to view the site locally.
There are three main checks:
| Command | Description |
|---|---|
pnpm lint:check |
Check lint only |
pnpm lint |
Apply lint fixes |
pnpm format:check |
Check formatting only |
pnpm format |
Apply formatting |
pnpm check |
Run all static checks (Biome + Astro) |
pnpm check:fix |
Apply Biome fixes, then run Astro diagnostics |
pnpm check:astro |
Check Astro and TypeScript only |
pnpm lint:ci |
Combined CI gate with GitHub annotations |
pnpm links:check |
Check internal links in the built site |
pnpm links:check:external |
Check internal and external links |
pnpm build |
Build for production |
pnpm links:check requires pnpm build first and uses lychee
(brew install lychee). Settings live in lychee.toml.
- We use Biome for linting and formatting. Please run
pnpm checkbefore submitting a PR;pnpm check:fixapplies all fixes locally. - Follow existing file and folder naming conventions.
- Keep commit messages clear and descriptive.
To add a new best practice meme to the gallery:
-
Add your meme image (
.jpg,.png, or.svg) to./src/memes/. -
Register a new entry in
./src/memes/memes.ts:{ title: 'Your Best Practice', meme: 'your-meme-file-name', ext: 'jpg', caption: 'Your caption', },
-
Submit a PR, remembering to follow the MDD specification for PRs. 😉
If you encounter a bug or have a feature request, please open an issue with clear steps to reproduce or a detailed description of your idea. Check for existing issues before creating a new one.
Per the MDD Specification, all feedback on pull requests must be provided in meme form. 🎭