Skip to content

Add Zig#3859

Open
Mo-way wants to merge 2 commits intosindresorhus:mainfrom
Mo-way:add-zig
Open

Add Zig#3859
Mo-way wants to merge 2 commits intosindresorhus:mainfrom
Mo-way:add-zig

Conversation

@Mo-way
Copy link
Copy Markdown
Contributor

@Mo-way Mo-way commented Jan 7, 2026

https://github.com/zigcc/awesome-zig

Zig is a general-purpose programming language and toolchain for maintaining robust, optimal and reusable software.

The previous Zig list went un-maintained. It was removed in fa5128c.
As suggested in issue #3735, this PR adds the Zig list maintained by zigcc community.
See zigcc/awesome-zig#167 for more information.

PRs reviewed:

By submitting this pull request I confirm I've read and complied with the below requirements 🖖

Please read it multiple times. I spent a lot of time on these guidelines and most people miss a lot.

Requirements for your pull request

  • Don't open a Draft / WIP pull request while you work on the guidelines. A pull request should be 100% ready and should adhere to all the guidelines when you open it. Instead use #2242 for incubation visibility.
  • Don't waste my time. Do a good job, adhere to all the guidelines, and be responsive.
  • You have to review at least 2 other open pull requests.
    Try to prioritize unreviewed PRs, but you can also add more comments to reviewed PRs. Go through the below list when reviewing. This requirement is meant to help make the Awesome project self-sustaining. Comment here which PRs you reviewed. You're expected to put a good effort into this and to be thorough. Look at previous PR reviews for inspiration. Just commenting “looks good” or simply marking the pull request as approved does not count! You have to actually point out mistakes or improvement suggestions. Comments pointing out lint violation are allowed, but does not count as a review.
  • You have read and understood the instructions for creating a list.
  • This pull request has a title in the format Add Name of List. It should not contain the word Awesome.
    • Add Swift
    • Add Software Architecture
    • Update readme.md
    • Add Awesome Swift
    • Add swift
    • add Swift
    • Adding Swift
    • Added Swift
  • Your entry here should include a short description of the project/theme of the list. It should not describe the list itself. The first character should be uppercase and the description should end in a dot. It should be an objective description and not a tagline or marketing blurb. It should not contain the name of the list.
    • - [iOS](…) - Mobile operating system for Apple phones and tablets.
    • - [Framer](…) - Prototyping interactive UI designs.
    • - [iOS](…) - Resources and tools for iOS development.
    • - [Framer](…)
    • - [Framer](…) - prototyping interactive UI designs
  • Your entry should be added at the bottom of the appropriate category.
  • The title of your entry should be title-cased and the URL to your list should end in #readme.
    • Example: - [Software Architecture](https://github.com/simskij/awesome-software-architecture#readme) - The discipline of designing and building software.
  • No blockchain-related lists.
  • The suggested Awesome list complies with the below requirements.

Requirements for your Awesome list

  • Has been around for at least 30 days.
    That means 30 days from either the first real commit or when it was open-sourced. Whatever is most recent.
  • Run awesome-lint on your list and fix the reported issues. If there are false-positives or things that cannot/shouldn't be fixed, please report it.
  • The default branch should be named main, not master.
  • Includes a succinct description of the project/theme at the top of the readme. (Example)
    • Mobile operating system for Apple phones and tablets.
    • Prototyping interactive UI designs.
    • Resources and tools for iOS development.
    • Awesome Framer packages and tools.
  • It's the result of hard work and the best I could possibly produce.
    If you have not put in considerable effort into your list, your pull request will be immediately closed.
  • The repo name of your list should be in lowercase slug format: awesome-name-of-list.
    • awesome-swift
    • awesome-web-typography
    • awesome-Swift
    • AwesomeWebTypography
  • The heading title of your list should be in title case format: # Awesome Name of List.
    • # Awesome Swift
    • # Awesome Web Typography
    • # awesome-swift
    • # AwesomeSwift
  • Non-generated Markdown file in a GitHub repo.
  • The repo should have awesome-list & awesome as GitHub topics. I encourage you to add more relevant topics.
  • Not a duplicate. Please search for existing submissions.
  • Only has awesome items. Awesome lists are curations of the best, not everything.
  • Does not contain items that are unmaintained, has archived repo, deprecated, or missing docs. If you really need to include such items, they should be in a separate Markdown file.
  • Includes a project logo/illustration whenever possible.
    • Either centered, fullwidth, or placed at the top-right of the readme. (Example)
    • The image should link to the project website or any relevant website.
    • The image should be high-DPI. Set it to a maximum of half the width of the original image.
    • Don't include both a title saying Awesome X and a logo with Awesome X. You can put the header image in a # (Markdown header) or <h1>.
  • Entries have a description, unless the title is descriptive enough by itself. It rarely is though.
  • Includes the Awesome badge.
    • Should be placed on the right side of the readme heading.
      • Can be placed centered if the list has a centered graphics header.
    • Should link back to this list.
  • Has a Table of Contents section.
    • Should be named Contents, not Table of Contents.
    • Should be the first section in the list.
    • Should only have one level of nested lists, preferably none.
    • Must not feature Contributing or Footnotes sections.
  • Has an appropriate license.
    • We strongly recommend the CC0 license, but any Creative Commons license will work.
      • Tip: You can quickly add it to your repo by going to this URL: https://github.com/<user>/<repo>/community/license/new?branch=main&template=cc0-1.0 (replace <user> and <repo> accordingly).
    • A code license like MIT, BSD, Apache, GPL, etc, is not acceptable. Neither are WTFPL and Unlicense.
    • Place a file named license or LICENSE in the repo root with the license text.
    • Do not add the license name, text, or a Licence section to the readme. GitHub already shows the license name and link to the full text at the top of the repo.
    • To verify that you've read all the guidelines, please comment on your pull request with just the word unicorn.
  • Has contribution guidelines.
    • The file should be named contributing.md. The casing is up to you.
    • It can optionally be linked from the readme in a dedicated section titled Contributing, positioned at the top or bottom of the main content.
    • The section should not appear in the Table of Contents.
  • All non-important but necessary content (like extra copyright notices, hyperlinks to sources, pointers to expansive content, etc) should be grouped in a Footnotes section at the bottom of the readme. The section should not be present in the Table of Contents.
  • Has consistent formatting and proper spelling/grammar.
    • The link and description are separated by a dash.
      Example: - [AVA](…) - JavaScript test runner.
    • The description starts with an uppercase character and ends with a period.
    • Consistent and correct naming. For example, Node.js, not NodeJS or node.js.
  • Does not use hard-wrapping.
  • Does not include a CI (e.g. GitHub Actions) badge.
    You can still use a CI for linting, but the badge has no value in the readme.
  • Does not include an Inspired by awesome-foo or Inspired by the Awesome project kinda link at the top of the readme. The Awesome badge is enough.

Go to the top and read it again.

Add Zig list maintained by zigcc community
@Mo-way
Copy link
Copy Markdown
Contributor Author

Mo-way commented Jan 7, 2026

unicorn

@puneet-chandna
Copy link
Copy Markdown

Hi @Mo-way, thanks for reviving the Zig list! I've reviewed your PR and the zigcc/awesome-zig repository. This is a very high-quality submission, but I have some suggestions to make the content "Awesome-standard" perfect.

all these are my personal opnions and not a compulsory TODO list. your PR a already a very strong.

Content & Structure Advice:
I looked through the zigcc repository and noticed a few areas where the organization could be tighter:

  1. Category Naming
    "Zigged Project": This header is a bit unclear. I recommend renaming it to "Built with Zig" or "Software". It separates libraries (tools for devs) from standalone applications (tools for users).

"Misc": Awesome lists try to avoid "Misc" or "General" categories. Try to find specific homes for these items or add tags to these so people can easily understand there purpose (e.g., "Data Structures", "Config", "Build Tools", "zig migration").

  1. Description Quality
    Action Verbs: Ensure all descriptions start with an action verb or a noun, avoiding "A..." or "This is...".
    Current: zig-date - "Time and date for Zig."
    Better: "Time and date library."
    Current: known-folders - "Provides access to well-known folders..."
    Better: "Access well-known folders..."

Consistency: Some descriptions are very short ("JSON5 parser") while others are sentences. Standardizing them to "Noun - Description." makes the list much more readable.

Great work organizing the community replacement for the old list! 🚀

@puneet-chandna puneet-chandna mentioned this pull request Jan 9, 2026
33 tasks
Copy link
Copy Markdown

@bad-antics bad-antics left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Great to see Zig back in the main awesome list! The zigcc community maintains this well (2k stars). This replaces the previous unmaintained list. Well-documented PR explaining the history. LGTM.

@jiacai2050
Copy link
Copy Markdown

Any luck with this patch?

I have refactored it to make it more readable:

  • Reorganize chapters into 8 logical top-level categories for better navigation.
  • Update the main disclaimer to emphasize Zig compiler version compatibility.
  • Rename 'Zigged Project' to 'Build with Zig' and add section descriptions.
  • Add a Community section with links to Ziggit, Discord, and Reddit.
  • Create awesome-but-inactive.md and move HellOS there.
  • Standardize header casing and flatten TOC depth to 2 levels.
  • Fix duplicate links and other linting issues found by awesome-lint.

@Mo-way
Copy link
Copy Markdown
Contributor Author

Mo-way commented Feb 11, 2026

@sindresorhus Any chance for a review? Feedback was addressed. With this PR #3735 would be fixed, not only closed.

Copy link
Copy Markdown

@suryakantamangaraj suryakantamangaraj left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hey! I took a look at this. The link and CC0 license are all set, but you should probably tweak the repo description.

Right now it says 'A collection of awesome projects in Zig.' Sindre usually prefers the description to define the subject (Zig itself) rather than the 'list.'

Maybe change it to something like: 'General-purpose programming language and toolchain for maintaining robust, optimal, and reusable software.'

Once that's updated, it looks good to go!

@suryakantamangaraj suryakantamangaraj mentioned this pull request Mar 4, 2026
35 tasks
@Mo-way
Copy link
Copy Markdown
Contributor Author

Mo-way commented Mar 4, 2026

Hi @suryakantamangaraj good catch. The description at top of Readme already is like you ask.

Looking at other awesome lists, the "about" section is normally smth like "curated list of...".
Do you know if the requirements changed there?

@jiacai2050
Copy link
Copy Markdown

I have updated the description to this:

A collaborative list of awesome Zig libraries and resources.

Let me know if there are any improvements.

@suryakantamangaraj
Copy link
Copy Markdown

looks cool to me now

@sindresorhus
Copy link
Copy Markdown
Owner

Insufficient reviews

PR What you did Counts?
#3529 (NativeScript) Title contains "Awesome", questioned placement, Plugin/Component sections mostly link to main repo Yes
#3536 "Please stop spamming." (identified a spam PR) No -- calling out spam is not a guideline-based review of a list
#3732 (DynamoDB) Called out AI-generated reviews by another user Borderline -- meta-commentary on review quality, not a review of the list itself

1 clear qualifying review out of 2 required.

Entry not at the bottom of the category

The entry is placed between V (line 265) and Move (line 266), but the last entry in the Programming Languages section is F# (line 269). The guideline requires placement "at the bottom of the appropriate category."


Linked list issues

"Misc" section

The "Misc" section has only 2 entries and uses a vague name. Consider merging these into a more descriptive section or removing them if they don't fit anywhere.

"TOC is generated by markdown-toc" text

The line TOC is generated by markdown-toc after the Contents section is meta-information that doesn't belong in the main content. Remove it or move it to a Footnotes section.

@twubndgsijlc-netizen
Copy link
Copy Markdown

twubndgsijlc-netizen commented Apr 1, 2026 via email

@jiacai2050
Copy link
Copy Markdown

Both Misc and TOC is generated by markdown-toc are removed.

@Mo-way
Copy link
Copy Markdown
Contributor Author

Mo-way commented Apr 3, 2026

Added another review (even though I'd say that calling out spam PRs saves maintainer effort as well, advancing the goal "make the project self suffieient")

@danzek
Copy link
Copy Markdown

danzek commented Apr 3, 2026

Some additional considerations:

@danzek danzek mentioned this pull request Apr 3, 2026
37 tasks
PR review said that end of list is better than
using the original position.
@andreahlert
Copy link
Copy Markdown

nice to see zig back after the last one got delisted, and awesome-but-inactive.md is a real answer to why the previous list got pulled. paste that context into the PR description or reviewers miss it

the IMPORTANT callout about compiler versions at the top kind of breaks the header → description → TOC flow. zig moves fast I get it, but wouldnt it make more sense per-entry where version matters, or as a footnote at the bottom?

Linker looks like a 1-item subcategory. fold into Tooling or add a second entry

also the current description update (A collaborative list of awesome Zig libraries and resources) still describes the list not zig. @suryakantamangaraj already flagged this, the new wording didnt fix it. needs to describe the language

@andreahlert andreahlert mentioned this pull request Apr 18, 2026
35 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

10 participants