Skip to content

docs: add getting started (alternative to #5519) - #5592

Merged
alexiscolin merged 42 commits into
gnolang:masterfrom
davd-gzl:docs/rewrite-getting-started
May 20, 2026
Merged

docs: add getting started (alternative to #5519)#5592
alexiscolin merged 42 commits into
gnolang:masterfrom
davd-gzl:docs/rewrite-getting-started

Conversation

@davd-gzl

@davd-gzl davd-gzl commented Apr 24, 2026

Copy link
Copy Markdown
Member

Simple getting started documentation + quickstart to install and bootstrap a local environment, to the creation of a transaction on chain.
There's duplicate content from other documentation, I clean them in a follow-up -> #5656

Alternative to #5519

@Gno2D2

Gno2D2 commented Apr 24, 2026

Copy link
Copy Markdown
Collaborator

🛠 PR Checks Summary

All Automated Checks passed. ✅

Manual Checks (for Reviewers):
  • IGNORE the bot requirements for this PR (force green CI check)
Read More

🤖 This bot helps streamline PR reviews by verifying automated checks and providing guidance for contributors and reviewers.

✅ Automated Checks (for Contributors):

🟢 Maintainers must be able to edit this pull request (more info)
🟢 Pending initial approval by a review team member, or review from tech-staff

☑️ Contributor Actions:
  1. Fix any issues flagged by automated checks.
  2. Follow the Contributor Checklist to ensure your PR is ready for review.
    • Add new tests, or document why they are unnecessary.
    • Provide clear examples/screenshots, if necessary.
    • Update documentation, if required.
    • Ensure no breaking changes, or include BREAKING CHANGE notes.
    • Link related issues/PRs, where applicable.
☑️ Reviewer Actions:
  1. Complete manual checks for the PR, including the guidelines and additional checks if applicable.
📚 Resources:
Debug
Automated Checks
Maintainers must be able to edit this pull request (more info)

If

🟢 Condition met
└── 🟢 And
    ├── 🟢 The base branch matches this pattern: ^master$
    └── 🟢 The pull request was created from a fork (head branch repo: davd-gzl/gno)

Then

🟢 Requirement satisfied
└── 🟢 Maintainer can modify this pull request

Pending initial approval by a review team member, or review from tech-staff

If

🟢 Condition met
└── 🟢 And
    ├── 🟢 The base branch matches this pattern: ^master$
    └── 🟢 Not (🔴 Pull request author is a member of the team: tech-staff)

Then

🟢 Requirement satisfied
└── 🟢 If
    ├── 🟢 Condition
    │   └── 🟢 Or
    │       ├── 🔴 At least one of these user(s) reviewed the pull request: [aronpark1007 davd-gzl jefft0 notJoon omarsy MikaelVallenet] (with state "APPROVED")
    │       ├── 🟢 At least 1 user(s) of the team tech-staff reviewed pull request
    │       └── 🔴 This pull request is a draft
    └── 🟢 Then
        └── 🟢 Not (🔴 This label is applied to pull request: review/triage-pending)

Manual Checks
**IGNORE** the bot requirements for this PR (force green CI check)

If

🟢 Condition met
└── 🟢 On every pull request

Can be checked by

  • Any user with comment edit permission

@alexiscolin

alexiscolin commented Apr 27, 2026

Copy link
Copy Markdown
Member

👍 Architecture LGTM. The funnel layering (Try first → TL;DR → Install → Build → Deploy) and the satellite split (#5551, #5552, #5553) is a good pattern.

A few UX points from #5519 that I think are worth carrying over before this lands, mostly newcomer-checkpoint stuff:

  1. Verify step after install. gno version / gnokey version / gnodev --help (gnodev has no version subcommand) is the moment a newcomer confirms the toolchain is wired correctly. Without it, any error 5 minutes later leaves them unsure whether install actually succeeded.
  2. Inline PATH warning. Currently delegated to install.md (docs: add dedicated installation page #5552), but the vast majority of "command not found" issues come from $(go env GOPATH)/bin (or $HOME/.gno/bin for the one-liner) not being on PATH. Worth a one-line :::info in the funnel itself: users who hit it won't be on the install page yet.
  3. gnodev actionable instruction. "banner + http://localhost:8888" tells the user the binary runs, but not what to do next. Worth mentionning r/docs again?
  4. Visual break before "Deploy to a shared network". A lot of newcomers stop at gnodev (and that's fine for a first session). A clear separator like --- + a "Ready to go live?" line gives them an explicit choice point.

I'll close #5519 as soon as this one comes out of DRAFT.

It might also be interesting to explore how to write for AI browsing (GEO) BTW (to keep in mind)

@alexiscolin

Copy link
Copy Markdown
Member

You should mention your three other documents related to the PR, as they need to be merged to make sense. Otherwise, we will lose valuable knowledge.

@davd-gzl
davd-gzl marked this pull request as ready for review May 5, 2026 09:50
@Gno2D2 Gno2D2 added the review/triage-pending PRs opened by external contributors that are waiting for the 1st review label May 5, 2026
@codecov

codecov Bot commented May 5, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

@davd-gzl

davd-gzl commented May 5, 2026

Copy link
Copy Markdown
Member Author

To answer #5592 (comment):

  1. I'm waiting gnodev version to be merged, it is ready to be reviewed
  2. Added. I consider installer.sh to install in $GOPATH/bin instead of .gno/bin to avoid shadowing binaries.
  3. Added
  4. Added

I think overall style can still be improved (some part don't looks very human friendly), but I'm open for first reviews @alexiscolin

About GEO I will do a deeper tour.

@davd-gzl davd-gzl left a comment

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

I think I still need to make it more human friendly

Comment thread docs/builders/getting-started.md
Comment thread docs/builders/getting-started.md Outdated
Comment thread docs/builders/getting-started.md
Comment thread docs/builders/getting-started.md Outdated
Comment thread docs/builders/getting-started.md Outdated
Comment thread docs/builders/getting-started.md Outdated
@davd-gzl
davd-gzl requested a review from alexiscolin May 15, 2026 13:09
@github-actions github-actions Bot added 📦 🤖 gnovm Issues or PRs gnovm related 🛠️ gnodev labels May 15, 2026

@alexiscolin alexiscolin left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

This is the strongest narrative onboarding doc the repo has had, and the dual-page structure (long-form getting-started + commands-only quickstart) is the right structural choice for UX-4 (#5462). Before merge, six blockers: four break the copy-paste promise, two make the contribution invisible/incoherent in production

Comment thread docs/builders/getting-started.md
Comment thread docs/README.md
Comment thread docs/builders/getting-started.md Outdated
Comment thread docs/builders/getting-started.md Outdated
Comment thread docs/builders/getting-started.md Outdated
Comment thread docs/builders/getting-started.md
Comment thread docs/builders/quickstart.md Outdated
Comment thread docs/builders/quickstart.md Outdated
Comment thread docs/builders/quickstart.md Outdated
Comment thread docs/builders/quickstart.md Outdated
@Gno2D2 Gno2D2 removed the review/triage-pending PRs opened by external contributors that are waiting for the 1st review label May 18, 2026
davd-gzl added a commit to davd-gzl/gno that referenced this pull request May 18, 2026
- README: add Getting started + Quick Start to Build index, reorder so they
  lead the section; intro now points to Installation for non-default paths.
- sidebar.json: regenerated; new pages no longer orphans.
- getting-started: align counter signature with canonical r/demo/counter
  (no n int arg); swap "Create a key" before "Run a local chain" so the
  auto-funded keybase claim is true for alice; drop the broken local
  r/docs reference (precompiled binary bakes _GNOROOT=/gnoroot, examples
  don't load on the install.sh path); align PATH hint with install.md;
  wrap --version <tag> in backticks for the linter.
- quickstart: align embedded counter with canonical signature; drop CLA
  warning (enforcement disabled in r/sys/cla); replace fragile autolink
  with a bold code span.
@davd-gzl
davd-gzl requested review from alexiscolin and gfanton May 18, 2026 14:35
davd-gzl added 3 commits May 18, 2026 17:19
- Move docs/getting-started.md to docs/builders/getting-started.md
- Replace `gno init` (unmerged) with `gno mod init`
- Tighten copy across TL;DR, Build, Next steps, Troubleshooting
- Annotate every code block with a short purpose comment
- Link out to docs/troubleshooting.md (separate PR) for the full list
davd-gzl and others added 8 commits May 18, 2026 17:22
Co-authored-by: Alexis Colin <alexis@jaunebleu.co>
Co-authored-by: Alexis Colin <alexis@jaunebleu.co>
Co-authored-by: Alexis Colin <alexis@jaunebleu.co>
- README: add Getting started + Quick Start to Build index, reorder so they
  lead the section; intro now points to Installation for non-default paths.
- sidebar.json: regenerated; new pages no longer orphans.
- getting-started: align counter signature with canonical r/demo/counter
  (no n int arg); swap "Create a key" before "Run a local chain" so the
  auto-funded keybase claim is true for alice; drop the broken local
  r/docs reference (precompiled binary bakes _GNOROOT=/gnoroot, examples
  don't load on the install.sh path); align PATH hint with install.md;
  wrap --version <tag> in backticks for the linter.
- quickstart: align embedded counter with canonical signature; drop CLA
  warning (enforcement disabled in r/sys/cla); replace fragile autolink
  with a bold code span.
- getting-started: split the testnet -remote URL across two code spans
  with a zero-width space so xurls.Strict can't extract `https://rpc`
  from the `<testN>` placeholder; keeps the placeholder rendered.
- Both files: point `r/docs` at staging.gno.land — gnoweb returns 404
  even when rendering on mainnet paths, so the linter rejects them;
  staging.gno.land is whitelisted and serves the same realm.
@davd-gzl
davd-gzl force-pushed the docs/rewrite-getting-started branch from 0721d1a to 54b803d Compare May 18, 2026 15:23
@davd-gzl

Copy link
Copy Markdown
Member Author

I removed the dependency to gnodev version for simpler merging

@davd-gzl davd-gzl removed 📦 🤖 gnovm Issues or PRs gnovm related 🛠️ gnodev labels May 18, 2026
@alexiscolin

Copy link
Copy Markdown
Member

Last factual cleanup before merge: CLA enforcement is disabled on all networks today. Reader hits this section, can't tell whether to expect the error. One-line :::info keeps the doc accurate without removing the section (so when CLA reactivates, the rest stays useful).

@alexiscolin

Copy link
Copy Markdown
Member

Should we put something like :

  **CLA.** Some networks require contributors to acknowledge a
  [Contributor License Agreement](https://github.com/gnolang/gno/blob/master/CLA.md)
  before deploying. If `addpkg` fails with `has not signed the required CLA`,
  sign once at [`r/sys/cla`](https://gno.land/r/sys/cla) and retry.

  :::info
  CLA enforcement is currently **disabled** on all networks (`requiredHash == ""`). You only need this section
  if you actually see the error.
  :::

??

@alexiscolin alexiscolin left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Last factual cleanup before merge: CLA enforcement is disabled on all networks today. Reader hits this section, can't tell whether to expect the error. One-line :::info keeps the doc accurate without removing the section (so when CLA reactivates, the rest stays useful). See above

@davd-gzl

davd-gzl commented May 19, 2026

Copy link
Copy Markdown
Member Author

Good idea @alexiscolin , fix: 8a96d09 + 294057e
Thank you so much! :)

@alexiscolin
alexiscolin merged commit 64c945f into gnolang:master May 20, 2026
78 checks passed
@github-project-automation github-project-automation Bot moved this from In Progress to Done in 💪 Bounties & Worx May 20, 2026
alexiscolin added a commit that referenced this pull request May 28, 2026
Changes can be seen at:
https://github.com/gnolang/gno/pull/5553/changes/0721d1a56c82bd9990150fe55353f1c8bb8408bd..01d038b35ae95533873b58a6e49e54412a43a24a

Depends on (must be merged before):
- #5592 (editor setup page linked from this guide)

---------

Co-authored-by: Alexis Colin <alexis@jaunebleu.co>
Co-authored-by: Jeff Thompson <jeff@berty.tech>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

📖 documentation Improvements or additions to documentation

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

3 participants