Skip to content

feat(apps): scaffold register + validators-portal placeholder pages#91

Merged
github-actions[bot] merged 1 commit into
mainfrom
feat/register-validators-portal
May 31, 2026
Merged

feat(apps): scaffold register + validators-portal placeholder pages#91
github-actions[bot] merged 1 commit into
mainfrom
feat/register-validators-portal

Conversation

@satyakwok
Copy link
Copy Markdown
Member

@satyakwok satyakwok commented May 31, 2026

Summary

Replaces the silent `validators.sentrixchain.com` → landing-page redirect with a real placeholder app, and stands up the matching `register.sentrixchain.com` host promised by the validator onboarding docs.

Two new Next.js apps in the monorepo, both built on top of the existing `apps/landing` template (Next.js 15.5, App Router, Tailwind v4, dark theme, brand-consistent typography):

  • `apps/register` → `register.sentrixchain.com` (port 3012) — placeholder for the future self-service `StakingOp::RegisterValidator` wizard. Lists hardware spec, stake requirement, mainnet status, links to the deep onboarding guide and waitlist email.
  • `apps/validators-portal` → `validators.sentrixchain.com` (port 3011) — placeholder for the future validator directory + delegate flow. Lists planned features, points readers to the read-only validator list on Scan.

Both pages have CTAs (docs link, mailto: waitlist, cross-link to the other app) and footer with the shared social/contact set.

Infra (applied outside this PR, on vps4 directly)

  • `/etc/systemd/system/sentrix-register.service` + `sentrix-validators-portal.service` installed, enabled, started.
  • Caddyfile: replaced `validators.sentrixchain.com` entry in the placeholder block with a real `reverse_proxy 127.0.0.1:3011`, and added a matching `register.sentrixchain.com` → `127.0.0.1:3012` block. Other placeholder subdomains (`node`, `bridge`, `status`, etc.) still redirect to landing.

Test plan

Follow-up workstreams

These were scoped OUT of this PR:

  • Real validator directory (read `/staking/validators` API, render moniker / commission / uptime / total_stake table).
  • Per-validator profile pages + delegator pitch.
  • WalletConnect delegate / undelegate / claim flow.
  • Self-service register wizard (StakingOp::RegisterValidator via WalletConnect, optional in-browser keystore generation).
  • Moniker registration (on-chain tx vs off-chain signed payload — open design question).

Summary by CodeRabbit

Release Notes

  • New Features

    • Added register app: a Sentrix validator registration landing page with live mainnet stats.
    • Added validators-portal app: a dedicated validators portal with chain data and product listings.
  • Chores

    • Scaffolded Next.js 15 applications with React 19, Tailwind CSS, and dark theme support.
    • Configured SEO metadata, Open Graph images, sitemaps, and robots directives for both apps.

@github-actions github-actions Bot enabled auto-merge (squash) May 31, 2026 20:38
@github-actions github-actions Bot merged commit c6ee82b into main May 31, 2026
6 of 7 checks passed
@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented May 31, 2026

Review Change Stack

Caution

Review failed

Pull request was closed or merged during review

📝 Walkthrough

Walkthrough

This PR introduces two new Next.js 15 landing applications for SentrisCloud: apps/register (validator registration) and apps/validators-portal (validators directory). Both apps follow identical architectural patterns with Next.js 15 App Router, React 19, TypeScript, Tailwind CSS, and viem for on-chain data. Each app includes a root layout with metadata/viewport exports, a home page with ISR caching, a global design system with color tokens and reusable component classes, a library of client-side UI components (theme toggle, scroll reveal, semantic elements), content-driven data modules (navigation, products, site metadata), and utilities for font configuration, chain snapshot fetching, and class merging. Both apps expose Open Graph image endpoints, robots.txt, and sitemaps. Configuration includes ESLint flat configs (with React Hook rules disabled pending React 19/react-compiler refactoring), PostCSS with Tailwind, and TypeScript project setup extending a shared base config.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

Suggested labels

javascript

🚥 Pre-merge checks | ✅ 3 | ❌ 2

❌ Failed checks (2 warnings)

Check name Status Explanation Resolution
Description check ⚠️ Warning The PR description is comprehensive and well-structured but does not follow the repository's required template structure, which specifies distinct 'Summary', 'Test plan', and 'Related' sections. Reorganize the description to match the template format: move the summary to a dedicated Summary section, restructure the test plan as a bulleted checklist, and add a Related section for any linked issues or documentation.
Docstring Coverage ⚠️ Warning Docstring coverage is 12.50% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (3 passed)
Check name Status Explanation
Title check ✅ Passed The title clearly and concisely summarizes the main change: scaffolding two new Next.js apps (register and validators-portal placeholder pages) for the monorepo.
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.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch feat/register-validators-portal

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 and usage tips.

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