Community-driven blog for the Azerbaijan GitHub Community.
Website · Linkedin · Telegram · Instagram
Example: See
posts/hello-world/for a complete working post you can use as a reference.
You must have signed up on the Azerbaijan GitHub Community website with your GitHub account before submitting a post. CI will reject your PR if your account is not registered.
pnpm install
pnpm create-postThis interactive command will ask for your GitHub username (fetches your ID automatically), post slug, title, description, and tags — then scaffold the folder structure for you.
Note: We recommend using
pnpm create-postinstead — it handles all of this automatically.
- Fork this repository
- Create a folder in
posts/with your post slug:- Lowercase letters, numbers, and hyphens only (e.g.
my-awesome-post) - The folder name becomes the URL:
/blog/my-awesome-post
- Lowercase letters, numbers, and hyphens only (e.g.
- Add
index.mdxwith your content (see template below) - Add a cover image at
images/cover.{png,jpg,jpeg,webp,svg}inside your post folder - Open a pull request targeting
main
---
title: "Your Post Title"
description: "A short description of your post (shown in cards and meta tags)."
tags: [tag1, tag2, tag3]
author: 123456789
---
Your MDX content here...Don't know your numeric GitHub ID? Run:
pnpm get-github-id <your-github-username>| Field | Required | Description |
|---|---|---|
title |
Yes | Post title |
description |
Yes | Short description for cards and SEO |
tags |
Yes | Array of tags (e.g. [typescript, nextjs, tutorial]) |
author |
Yes | Your numeric GitHub user ID (run pnpm get-github-id) |
posts/
my-post-slug/
index.mdx
images/
cover.png # Required — used as the post cover image
diagram.png # Optional additional images
Use relative paths for images stored in your images/ folder:
Or external URLs for images hosted elsewhere:
All content images are automatically centered and rendered below the surrounding paragraph.
- Folder names: lowercase letters, digits, and hyphens only (
^[a-z0-9]+(-[a-z0-9]+)*$) - Cover image: every post must have
images/cover.{png,jpg,jpeg,webp,svg} - Images: max 1 MB per image, max 5 MB total per post. Allowed formats:
.png,.jpg,.jpeg,.webp,.gif,.svg author: must be your numeric GitHub user ID — CI verifies it matches the PR opener- Website registration: you must have signed up on the website before your PR can be merged
Before opening a PR, run the checks to catch any issues:
pnpm checkThis runs the same checks as CI (formatting and post validation). It validates only your locally changed posts (staged, unstaged, and untracked).
- You open a PR with your blog post
- CI validates folder name, frontmatter fields, author ID, cover image, and image sizes
- CI checks that your GitHub account is registered on the website
- A maintainer reviews and approves your PR
- Once merged, a webhook triggers the website to sync the new post
- Your post appears on the blog within minutes
