# CodeZ: just another source code mirror

**URL:** <https://forum.zcashcommunity.com/t/codez-just-another-source-code-mirror/54977>\
**Category:** Community Collaborations\
**Created:** [March 16, 2026, 11:29am UTC](https://forum.zcashcommunity.com/t/codez-just-another-source-code-mirror/54977 "2026-03-16T11:29:15Z")\
**Posts on this page:** 16\
**Page:** 1

<div class="post-metadata">

**Author:** ![jenkin](https://sea2.discourse-cdn.com/zcash/user_avatar/forum.zcashcommunity.com/jenkin/32/48434_2.png) [@jenkin](https://forum.zcashcommunity.com/u/jenkin)\
**Post date:** [March 16, 2026, 11:29am UTC](https://forum.zcashcommunity.com/t/codez-just-another-source-code-mirror/54977/1 "2026-03-16T11:29:15Z")

</div>

Three weeks ago Josh published the [first ZODL weekly update](https://forum.zcashcommunity.com/t/guardian-of-the-sovereign-zodl-update/54767) after the ECC drama. One sentence turned my attention on, at the end of the post.

> [@Guardian of the Sovereign. ZODL update](https://forum.zcashcommunity.com/t/guardian-of-the-sovereign-zodl-update/54767/1):
>
> Began executing a three-part protection framework: protecting **people** (jurisdictional risk for Zcash devs), **product** (source code accessibility, multiplatform alternatives), and **protocol** (building alliances). Three working presentations drafted covering country risk analysis, App Store threats, and a Europe/MiCA deep dive.

As a [node operator at home](https://forum.zcashcommunity.com/t/running-my-first-zcash-full-node-from-home-setup-check/53670/13), I decided to do my part to contribute to this framework with my own resources. So I set up a Gitea Mirror instance you can now browse at [https://codez.ombie.cash/](https://codez.ombie.cash/) (it sounds like _code zombie cash_). I’m mirroring at the moment 392 github [repositories](https://codez.ombie.cash/explore/repos) from 18 [organizations](https://codez.ombie.cash/explore/organizations) every 4 hours (about 60 GB of storage).

Unfortunately I’m able to mirror and sync only organizations, not single users like ZecHub. I need to find a scalable solution for this issue (suggestions are welcome)… 😕

Of course, feel free to suggest new repositories, people or organizations to be included! 🚀

Shields up!

---

<div class="post-metadata">

**Author:** ![Kenbak](https://sea2.discourse-cdn.com/zcash/user_avatar/forum.zcashcommunity.com/kenbak/32/40417_2.png) [@Kenbak](https://forum.zcashcommunity.com/u/Kenbak)\
**Post date:** [March 18, 2026, 4:15am UTC](https://forum.zcashcommunity.com/t/codez-just-another-source-code-mirror/54977/2 "2026-03-18T04:15:34Z")

</div>

That’s a great initiative! Also allows to see what is active or up to date 💯

---

<div class="post-metadata">

**Author:** ![jenkin](https://sea2.discourse-cdn.com/zcash/user_avatar/forum.zcashcommunity.com/jenkin/32/48434_2.png) [@jenkin](https://forum.zcashcommunity.com/u/jenkin)\
**Post date:** [March 20, 2026, 1:45pm UTC](https://forum.zcashcommunity.com/t/codez-just-another-source-code-mirror/54977/3 "2026-03-20T13:45:19Z")

</div>

If you think it can be useful to mirror also user repositories (ie. ZecHub), put a 👍 on [this issue](https://github.com/RayLabsHQ/gitea-mirror/issues/221#issuecomment-4097691172)! 🙏

---

<div class="post-metadata">

**Author:** ![jenkin](https://sea2.discourse-cdn.com/zcash/user_avatar/forum.zcashcommunity.com/jenkin/32/48434_2.png) [@jenkin](https://forum.zcashcommunity.com/u/jenkin)\
**Post date:** [May 5, 2026, 9:40am UTC](https://forum.zcashcommunity.com/t/codez-just-another-source-code-mirror/54977/4 "2026-05-05T09:40:03Z")

</div>

Latest updates of gitea and gitea mirror brought many issues and I was forced to stop both services. I’ll keep you posted when CodeZ will be available again.

---

<div class="post-metadata">

**Author:** ![jenkin](https://sea2.discourse-cdn.com/zcash/user_avatar/forum.zcashcommunity.com/jenkin/32/48434_2.png) [@jenkin](https://forum.zcashcommunity.com/u/jenkin)\
**Post date:** [May 27, 2026, 4:41pm UTC](https://forum.zcashcommunity.com/t/codez-just-another-source-code-mirror/54977/5 "2026-05-27T16:41:59Z")

</div>

Online again! 😄

> **[CodeZ | Ombie | Cash](https://codez.ombie.cash)**
>
> Gitea (Git with a cup of tea) is a painless self-hosted Git service written in Go

Gitea mirror is not a very reliable and robust piece of software, but I think I finally found a good set of configurations.

 ![IMG20260527182354](https://global.discourse-cdn.com/zcash/original/3X/9/9/99ea31871427a9f2f0f329558fab86975b023cdd.jpeg)

I’ll continue to track and harvest other orgs and single repositories (ie. ledger / keystone, zechub, single devs), but I think the goal of this little project can be wider than archiving assets and preserve memory.

If the whole codebase history is in a single place, we can compute metrics about content (code, issues) and people (contributors and their relations). Overall and time-based.

Example: we can build the bipartite graph of contributors and repositories and project it to the social network of contributors (linked by common repos).

Was there any attempt to perform such statistics analysis on zcash community in the past?

Keep mumbling…

---

<div class="post-metadata">

**Author:** ![jenkin](https://sea2.discourse-cdn.com/zcash/user_avatar/forum.zcashcommunity.com/jenkin/32/48434_2.png) [@jenkin](https://forum.zcashcommunity.com/u/jenkin)\
**Post date:** [July 13, 2026, 9:23am UTC](https://forum.zcashcommunity.com/t/codez-just-another-source-code-mirror/54977/6 "2026-07-13T09:23:14Z")

</div>

CodeZ is back! 🥳

I underestimated the impact that modern bots infesting the web can have on a small, exposed service. I had to activate all cloudflare anti-bot features, rate limiting, routes blocking and aggressive caching to protect my gitea instance.

---

<div class="post-metadata">

**Author:** ![jenkin](https://sea2.discourse-cdn.com/zcash/user_avatar/forum.zcashcommunity.com/jenkin/32/48434_2.png) [@jenkin](https://forum.zcashcommunity.com/u/jenkin)\
**Post date:** [July 14, 2026, 3:19pm UTC](https://forum.zcashcommunity.com/t/codez-just-another-source-code-mirror/54977/7 "2026-07-14T15:19:31Z")

</div>

Presenting the Zcash Irondevs contest: [[Contest] Presenting Zcash Irondevs, a gift to the heroic Zcash developers](https://forum.zcashcommunity.com/t/contest-presenting-zcash-irondevs-a-gift-to-the-heroic-zcash-developers/56666).

---

<div class="post-metadata">

**Author:** ![Zebraman](https://sea2.discourse-cdn.com/zcash/user_avatar/forum.zcashcommunity.com/zebraman/32/43159_2.png) [@Zebraman](https://forum.zcashcommunity.com/u/Zebraman)\
**Post date:** [July 14, 2026, 5:30pm UTC](https://forum.zcashcommunity.com/t/codez-just-another-source-code-mirror/54977/8 "2026-07-14T17:30:27Z")

</div>

> [@jenkin](#):
>
> (it sounds like _code zombie cash_)

 ![ZDay](https://global.discourse-cdn.com/zcash/original/3X/1/a/1aa81fb51b5bfdbb1dd0d724b20008512697794a.jpeg)

---

<div class="post-metadata">

**Author:** ![jenkin](https://sea2.discourse-cdn.com/zcash/user_avatar/forum.zcashcommunity.com/jenkin/32/48434_2.png) [@jenkin](https://forum.zcashcommunity.com/u/jenkin)\
**Post date:** [July 14, 2026, 5:32pm UTC](https://forum.zcashcommunity.com/t/codez-just-another-source-code-mirror/54977/9 "2026-07-14T17:32:51Z")

</div>

Reality is often more horrifying than fantasy.

---

<div class="post-metadata">

**Author:** ![Zebraman](https://sea2.discourse-cdn.com/zcash/user_avatar/forum.zcashcommunity.com/zebraman/32/43159_2.png) [@Zebraman](https://forum.zcashcommunity.com/u/Zebraman)\
**Post date:** [July 14, 2026, 6:04pm UTC](https://forum.zcashcommunity.com/t/codez-just-another-source-code-mirror/54977/10 "2026-07-14T18:04:12Z")

</div>

😏

Btw, I noticed some pages on CodeZ return “Access denied”. Should we request an access token to use the API?

---

<div class="post-metadata">

**Author:** ![jenkin](https://sea2.discourse-cdn.com/zcash/user_avatar/forum.zcashcommunity.com/jenkin/32/48434_2.png) [@jenkin](https://forum.zcashcommunity.com/u/jenkin)\
**Post date:** [July 14, 2026, 6:10pm UTC](https://forum.zcashcommunity.com/t/codez-just-another-source-code-mirror/54977/11 "2026-07-14T18:10:26Z")

</div>

Unfortunately API endpoints are disabled, malicious bots like them too much! What’s your use case?

---

<div class="post-metadata">

**Author:** ![Zebraman](https://sea2.discourse-cdn.com/zcash/user_avatar/forum.zcashcommunity.com/zebraman/32/43159_2.png) [@Zebraman](https://forum.zcashcommunity.com/u/Zebraman)\
**Post date:** [July 14, 2026, 6:13pm UTC](https://forum.zcashcommunity.com/t/codez-just-another-source-code-mirror/54977/12 "2026-07-14T18:13:53Z")

</div>

A bipartite network visualisation? 👀

---

<div class="post-metadata">

**Author:** ![jenkin](https://sea2.discourse-cdn.com/zcash/user_avatar/forum.zcashcommunity.com/jenkin/32/48434_2.png) [@jenkin](https://forum.zcashcommunity.com/u/jenkin)\
**Post date:** [July 14, 2026, 6:35pm UTC](https://forum.zcashcommunity.com/t/codez-just-another-source-code-mirror/54977/13 "2026-07-14T18:35:47Z")

</div>

You don’t need gitea api, you can clone some repo and develop the code, then I will run it locally on full archive (tens of GB). Take a look at the [example project](https://github.com/jenkin/zcash-irondevs/tree/main/projects%2Fjenkin)…

---

<div class="post-metadata">

**Author:** ![Zebraman](https://sea2.discourse-cdn.com/zcash/user_avatar/forum.zcashcommunity.com/zebraman/32/43159_2.png) [@Zebraman](https://forum.zcashcommunity.com/u/Zebraman)\
**Post date:** [July 14, 2026, 6:44pm UTC](https://forum.zcashcommunity.com/t/codez-just-another-source-code-mirror/54977/14 "2026-07-14T18:44:39Z")

</div>

Maybe I’m misunderstanding something, but I don’t see why this would have to involve cloning when all that needs processing is contributor data. If API access is an option, cloning would seem like overkill.

---

<div class="post-metadata">

**Author:** ![jenkin](https://sea2.discourse-cdn.com/zcash/user_avatar/forum.zcashcommunity.com/jenkin/32/48434_2.png) [@jenkin](https://forum.zcashcommunity.com/u/jenkin)\
**Post date:** [July 14, 2026, 7:21pm UTC](https://forum.zcashcommunity.com/t/codez-just-another-source-code-mirror/54977/15 "2026-07-14T19:21:34Z")

</div>

Probably I need to add some more details, thanks for pointing that out.

Right now CodeZ tracks more than 500 repo using 270 GB on disk. Millions of commits (and 60k issues and 370k comments). I can’t serve that amount of data via REST API. Also github has [strict limits](https://docs.github.com/en/rest/using-the-rest-api/rate-limits-for-the-rest-api?apiVersion=2026-03-10#primary-rate-limit-for-authenticated-users) using personal access token.

Data flow from disk is faster than on network. And you can decouple raw data access from computation. So my idea is simple: participants can develop and test against a little and manageable archive similar to the real one. Then I’ll run the code on the full archive using my own resources.

Did I miss something?

---

<div class="post-metadata">

**Author:** ![Zebraman](https://sea2.discourse-cdn.com/zcash/user_avatar/forum.zcashcommunity.com/zebraman/32/43159_2.png) [@Zebraman](https://forum.zcashcommunity.com/u/Zebraman)\
**Post date:** [July 14, 2026, 8:09pm UTC](https://forum.zcashcommunity.com/t/codez-just-another-source-code-mirror/54977/16 "2026-07-14T20:09:04Z")

</div>

Yea, I suppose if you imagine it _only_ running on the same server as the forge, then going through the API would be convoluted.
