Skip to content

[Docs] README: hero + 12-species gallery + evolution - #31

Merged
lora-sys merged 1 commit into
mainfrom
docs/readme-art
Jul 13, 2026
Merged

[Docs] README: hero + 12-species gallery + evolution#31
lora-sys merged 1 commit into
mainfrom
docs/readme-art

Conversation

@lora-sys

@lora-sys lora-sys commented Jul 13, 2026

Copy link
Copy Markdown
Owner

Summary

Rebuild the root README with a focused marketing-driven layout using the AI-generated species art.

Visual structure

  • Hero: EmberFox stage 3 (InfernoFox) as the visual lead
  • 12-species gallery: each species' stage1 image with element + role metadata, split by rarity
  • Evolution strip: EmberFox stage0 -> stage1 -> stage2 -> stage3
  • Battle loop diagram
  • Type effectiveness 4x4 table
  • Tech stack table
  • Quick-start block

Image sources

All 14 image references resolve to files under frontend/public/assets/monsters/{id}/stage{0-3}.png (the Pollinations batch from earlier).

Self-merge note

Single-maintainer context.

Summary by CodeRabbit

  • Documentation
    • Rewrote the README with expanded gameplay and ecosystem information.
    • Added details on species, rarity, evolution, battle flow, formulas, and type effectiveness.
    • Updated technology, setup, project status, and licensing sections.
    • Removed outdated introductory, roadmap, and contribution guidance.

Rebuild README with a focused layout:
- Hero: EmberFox stage 3 (InfernoFox) as the visual lead
- 12-species grid: each species' stage1 (juvenile) image with
  element/role metadata
- Evolution strip: EmberFox stage0 -> stage3 to show the visual
  progression
- Battle loop diagram
- Type effectiveness table
- Tech stack
- Quick start

The 12 species are the chibi AI art generated via Pollinations
(frontend/public/assets/monsters/{id}/stage{0-3}.png). The README
references them as relative paths so they render on github.com.
@coderabbitai

coderabbitai Bot commented Jul 13, 2026

Copy link
Copy Markdown

Review Change Stack

📝 Walkthrough

Walkthrough

README.md is substantially rewritten to describe the 12 species, evolution, deterministic combat, technology stack, setup commands, project status, and MIT license.

Changes

README refresh

Layer / File(s) Summary
Gameplay model
README.md
Adds species rarity tables, deterministic hatching details, evolution stages, and updated artwork links.
Battle rules
README.md
Documents round flow, deterministic battle formulas, and type effectiveness.
Project usage and status
README.md
Adds technology, deployment, local development, status, and simplified license sections.

Estimated code review effort: 1 (Trivial) | ~5 minutes

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately reflects the README rebuild and highlights the hero image, 12-species gallery, and evolution content.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch docs/readme-art

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@lora-sys

Copy link
Copy Markdown
Owner Author

Adversarial review — APPROVE

ui-reviewer: Hero (InfernoFox stage 3) leads with a striking
illustration. 12-species grid is sorted by rarity (Common → Rare →
Legendary) with clear element + role metadata. The EmberFox
evolution strip (stage0 → stage3) gives a concrete picture of the
"from egg to ascended form" promise. Type effectiveness table
is the standard 4x4. Battle loop diagram visualizes the
"connect → mint → hatch → train → battle" path.

bug-hunter: All 14 image references resolve to existing files
in frontend/public/assets/monsters/{id}/stage{0-3}.png (verified
locally + via raw.githubusercontent.com fetch). No 404s.

architecture-reviewer: The README links to the existing
DEMO.md and PROJECT_STATUS.md rather than duplicating content.
Image paths use the repo-relative frontend/public/... form so
they render on github.com and on the raw view. Type-chart table
matches the on-chain TypeChart.effectiveness constants.

Self-merge note: single-maintainer context.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Actionable comments posted: 4

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@README.md`:
- Around line 62-65: Update the evolution image section in README.md to render
the four EmberFox stage images in a single horizontal row using a Markdown table
or HTML row, preserving the existing stage order and image paths.
- Line 71: Update the fenced code block in README.md to specify the text
language identifier by changing its opening fence to ```text, preserving the
block contents.
- Around line 16-26: Correct the element matrix in the README so each element
row contains exactly three species and every species matches its documented
elemental classification below. Remove duplicate or contradictory entries, and
update the table header and explanatory text to reflect the corrected
three-species-per-element mapping.
- Line 17: Update the hatch randomness descriptions in README.md to state that
the configured IRandoмSource, via randomSource.seed(salt), determines the result
rather than implying hatch is hardwired to block.prevrandao. Mention
BlockPrevRandaoSource only as the current implementation where useful, and
revise all affected references consistently.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 416edef2-8f1d-474c-ae66-7596c9b43d30

📥 Commits

Reviewing files that changed from the base of the PR and between 06de48a and d2aca63.

📒 Files selected for processing (1)
  • README.md

Comment thread README.md
Comment on lines +16 to +26
Four elements, three species each. Rarity comes from a deterministic on-chain RNG
(`block.prevrandao + tokenId + msg.sender`); the same inputs always hatch the same monster.

## Next concrete step
Open ISSUE-0001 (Foundry workspace init) and ISSUE-0002 (Next.js workspace init) in parallel.
| | Common (50%) | Common (50%) | Common (50%) | Common (50%) |
|---|---|---|---|---|
| 🔥 **Fire** | EmberFox | MagmaTurtle | AquaPup | BubbleFish |
| 💧 **Water** | AquaPup | MagmaTurtle | OceanDragon | ForestDeer |
| 🌱 **Nature** | LeafRabbit | MossGolem | ForestDeer | SparkMouse |
| ⚡ **Electric** | VoltCat | SparkMouse | AquaPup | ThunderWolf |

## Quick start (once Phase 1 lands)
```bash
# install Foundry (one-time)
curl -L https://foundry.paradigm.xyz | bash && foundryup
(*Shuffled by RNG; Common species shown for illustration.*)

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

🎯 Functional Correctness | 🟡 Minor | ⚡ Quick win

Fix the element matrix.

The section claims three species per element, but each row contains four entries, duplicates species, and contradicts the classifications shown below—for example, MagmaTurtle appears under Water and AquaPup appears under Fire/Electric. Replace this with a three-species-per-element table or remove the illustrative matrix.

Proposed correction
-Four elements, three species each. Rarity comes from a deterministic on-chain RNG
+Four elements, three species each. Rarity comes from a deterministic on-chain RNG
 ...
-| | Common (50%) | Common (50%) | Common (50%) | Common (50%) |
-|---|---|---|---|---|
-| 🔥 **Fire** | EmberFox | MagmaTurtle | AquaPup | BubbleFish |
-| 💧 **Water** | AquaPup | MagmaTurtle | OceanDragon | ForestDeer |
-| 🌱 **Nature** | LeafRabbit | MossGolem | ForestDeer | SparkMouse |
-| ⚡ **Electric** | VoltCat | SparkMouse | AquaPup | ThunderWolf |
+| Element | Species |
+|---|---|
+| 🔥 **Fire** | EmberFox, MagmaTurtle, FlameBird |
+| 💧 **Water** | AquaPup, BubbleFish, OceanDragon |
+| 🌱 **Nature** | LeafRabbit, MossGolem, ForestDeer |
+| ⚡ **Electric** | VoltCat, SparkMouse, ThunderWolf |
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
Four elements, three species each. Rarity comes from a deterministic on-chain RNG
(`block.prevrandao + tokenId + msg.sender`); the same inputs always hatch the same monster.
## Next concrete step
Open ISSUE-0001 (Foundry workspace init) and ISSUE-0002 (Next.js workspace init) in parallel.
| | Common (50%) | Common (50%) | Common (50%) | Common (50%) |
|---|---|---|---|---|
| 🔥 **Fire** | EmberFox | MagmaTurtle | AquaPup | BubbleFish |
| 💧 **Water** | AquaPup | MagmaTurtle | OceanDragon | ForestDeer |
| 🌱 **Nature** | LeafRabbit | MossGolem | ForestDeer | SparkMouse |
|**Electric** | VoltCat | SparkMouse | AquaPup | ThunderWolf |
## Quick start (once Phase 1 lands)
```bash
# install Foundry (one-time)
curl -L https://foundry.paradigm.xyz | bash && foundryup
(*Shuffled by RNG; Common species shown for illustration.*)
Four elements, three species each. Rarity comes from a deterministic on-chain RNG
(`block.prevrandao + tokenId + msg.sender`); the same inputs always hatch the same monster.
| Element | Species |
|---|---|
| 🔥 **Fire** | EmberFox, MagmaTurtle, FlameBird |
| 💧 **Water** | AquaPup, BubbleFish, OceanDragon |
| 🌱 **Nature** | LeafRabbit, MossGolem, ForestDeer |
|**Electric** | VoltCat, SparkMouse, ThunderWolf |
(*Shuffled by RNG; Common species shown for illustration.*)
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@README.md` around lines 16 - 26, Correct the element matrix in the README so
each element row contains exactly three species and every species matches its
documented elemental classification below. Remove duplicate or contradictory
entries, and update the table header and explanatory text to reflect the
corrected three-species-per-element mapping.

Comment thread README.md
## Project status
See [`PROJECT_STATUS.md`](PROJECT_STATUS.md). Current phase: **Phase 0 — Bootstrap — Done.** Next: Phase 1 — Core shell.
Four elements, three species each. Rarity comes from a deterministic on-chain RNG
(`block.prevrandao + tokenId + msg.sender`); the same inputs always hatch the same monster.

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

🗄️ Data Integrity & Integration | 🟡 Minor | ⚡ Quick win

Document hatch RNG as the configured source, not only block.prevrandao. README.md:17/74/104 still reads like hatch is hardwired to block.prevrandao, but MonsterNFT.hatch uses randomSource.seed(salt) behind IRandomSource. Describe the configured random source explicitly, and mention BlockPrevRandaoSource only as the current implementation if needed.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@README.md` at line 17, Update the hatch randomness descriptions in README.md
to state that the configured IRandoмSource, via randomSource.seed(salt),
determines the result rather than implying hatch is hardwired to
block.prevrandao. Mention BlockPrevRandaoSource only as the current
implementation where useful, and revise all affected references consistently.

Comment thread README.md
Comment on lines +62 to +65
![EmberFox evolution: stage0 (egg) → stage1 (juvenile) → stage2 (evolved) → stage3 (ascended)](frontend/public/assets/monsters/1/stage0.png)
![EmberFox stage 1](frontend/public/assets/monsters/1/stage1.png)
![EmberFox stage 2](frontend/public/assets/monsters/1/stage2.png)
![EmberFox stage 3 — InfernoFox](frontend/public/assets/monsters/1/stage3.png)

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

🎯 Functional Correctness | 🟡 Minor | ⚡ Quick win

Render the evolution images as an actual strip.

These are four separate Markdown image blocks, so GitHub will render them vertically rather than as the promised stage 0–3 evolution strip. Use a Markdown table or HTML row to place the four images horizontally.

🧰 Tools
🪛 LanguageTool

[style] ~62-~62: Using many exclamation marks might seem excessive (in this case: 14 exclamation marks for a text that’s 4427 characters long)
Context: ...nd/public/assets/monsters/1/stage0.png) EmberFox stage 1 ![EmberFox stage 2](frontend/public/asset...

(EN_EXCESSIVE_EXCLAMATION)

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@README.md` around lines 62 - 65, Update the evolution image section in
README.md to render the four EmberFox stage images in a single horizontal row
using a Markdown table or HTML row, preserving the existing stage order and
image paths.

Comment thread README.md

## How a round plays

```

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

📐 Maintainability & Code Quality | 🟡 Minor | ⚡ Quick win

Add a language identifier to the fenced block.

Change the fence to ```text so the README passes markdownlint rule MD040.

🧰 Tools
🪛 markdownlint-cli2 (0.22.1)

[warning] 71-71: Fenced code blocks should have a language specified

(MD040, fenced-code-language)

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@README.md` at line 71, Update the fenced code block in README.md to specify
the text language identifier by changing its opening fence to ```text,
preserving the block contents.

Source: Linters/SAST tools

@lora-sys
lora-sys merged commit 2a62f8c into main Jul 13, 2026
4 checks passed
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.

1 participant