From dc20befb866278bf531e6f1815980962cfd31fa0 Mon Sep 17 00:00:00 2001 From: Prad Nukala Date: Wed, 23 Oct 2024 11:37:11 -0400 Subject: [PATCH] feat: add Hero section component with stats and buttons --- pkg/nebula/components/marketing/page_templ.go | 81 +++++++++++++++++++ 1 file changed, 81 insertions(+) diff --git a/pkg/nebula/components/marketing/page_templ.go b/pkg/nebula/components/marketing/page_templ.go index e7ad7bd2d..bbfc83a05 100644 --- a/pkg/nebula/components/marketing/page_templ.go +++ b/pkg/nebula/components/marketing/page_templ.go @@ -9,10 +9,91 @@ import "github.com/a-h/templ" import templruntime "github.com/a-h/templ/runtime" import ( + "github.com/labstack/echo/v4" + "github.com/onsonr/sonr/internal/ctx" + models "github.com/onsonr/sonr/internal/orm/marketing" "github.com/onsonr/sonr/pkg/nebula/components/marketing/sections" "github.com/onsonr/sonr/pkg/nebula/global/styles" + "log" ) +var hero = &models.Hero{ + TitleFirst: "Simplified", + TitleEmphasis: "self-custody", + TitleSecond: "for everyone", + Subtitle: "Sonr is a modern re-imagination of online user identity, empowering users to take ownership of their digital footprint and unlocking a new era of self-sovereignty.", + PrimaryButton: &models.Button{Text: "Get Started", Href: "/register"}, + SecondaryButton: &models.Button{Text: "Learn More", Href: "/about"}, + Image: &models.Image{ + Src: "https://cdn.sonr.id/img/hero-clipped.svg", + Width: "500", + Height: "500", + }, + Stats: []*models.Stat{ + {Value: "476", Label: "Assets packed with power beyond your imagiation.", Denom: "K"}, + {Value: "1.44", Label: "Assets packed with power beyond your imagination.", Denom: "K"}, + {Value: "1.5", Label: "Assets packed with power beyond your imagination.", Denom: "M+"}, + {Value: "750", Label: "Assets packed with power beyond your imagination.", Denom: "K"}, + }, +} + +var highlights = &models.Highlights{ + Heading: "The Internet Rebuilt for You", + Subtitle: "Sonr is a comprehensive system for Identity Management which proteects users across their digital personas while providing Developers a cost-effective solution for decentralized authentication.", + Features: []*models.Feature{ + { + Title: "∞-Factor Auth", + Desc: "Sonr is designed to work across all platforms and devices, building a encrypted and anonymous identity layer for each user on the internet.", + Icon: nil, + }, + { + Title: "Data Ownership", + Desc: "Sonr leverages advanced cryptography to permit facilitating Wallet Operations directly on-chain, without the need for a centralized server.", + Icon: nil, + }, + { + Title: "Everyday Transactions", + Desc: "Sonr follows the latest specifications from W3C, DIF, and ICF to essentially have an Interchain-Connected, Smart Account System - seamlessly authenticated with PassKeys.", + Icon: nil, + }, + { + Title: "Limitless Possibilities", + Desc: "Sonr is a proudly American Project which operates under the new Wyoming DUNA Legal Framework, ensuring the protection of your digital rights.", + Icon: nil, + }, + }, +} + +var mission = &models.Mission{ + Eyebrow: "L1 Blockchain", + Heading: "The Protocol for Decentralized Identity & Authentication", + Subtitle: "We're creating the Global Standard for Decentralized Identity. Authenticate users with PassKeys, Issue Crypto Wallets, Build Payment flows, Send Encrypted Messages - all on a single platform.", + Experience: &models.Feature{ + Title: "Less is More", + Desc: "Sonr is a comprehensive system for Identity Management which proteects users across their digital personas while providing Developers a cost-effective solution for decentralized authentication.", + Icon: nil, + }, + Compliance: &models.Feature{ + Title: "Works where there's Internet", + Desc: "Sonr is designed to work across all platforms and devices, building a encrypted and anonymous identity layer for each user on the internet.", + Icon: nil, + }, + Interoperability: &models.Feature{ + Title: "American Made DUNA", + Desc: "Sonr follows the latest specifications from W3C, DIF, and ICF to essentially have an Interchain-Connected, Smart Account System - seamlessly authenticated with PassKeys.", + Icon: nil, + }, +} + +func HomeRoute(c echo.Context) error { + s, err := ctx.GetHWAYContext(c) + if err != nil { + return err + } + log.Printf("Session ID: %s", s.ID()) + return ctx.RenderTempl(c, View()) +} + func View() templ.Component { return templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) { templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context