-
Notifications
You must be signed in to change notification settings - Fork 283
docs homepage and components #4083
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
8e9983e
1e4e803
c09fad3
685d00f
aba53c6
7dc39bf
a51a19a
c06c677
1aecdce
a13c6c4
5045097
dfc8a6c
fa989eb
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,14 +1,11 @@ | ||
| --- | ||
| id: index | ||
| title: Temporal Platform Documentation | ||
| sidebar_label: Documentation Home | ||
| description: Explore Temporal's comprehensive documentation to build, scale, and manage reliable, fault-tolerant workflows with Workflow-as-Code solutions. | ||
| title: Temporal Docs | ||
| sidebar_label: Home | ||
| hide_table_of_contents: true | ||
| hide_title: true | ||
| --- | ||
|
|
||
| <head> | ||
| <title>Temporal Platform Documentation</title> | ||
| </head> | ||
| import HomePageHero from '@site/src/components/elements/HomePageHero'; | ||
|
|
||
| import { Intro } from '@site/src/components'; | ||
|
|
||
| <Intro /> | ||
| <HomePageHero /> |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,166 @@ | ||
| import React from 'react'; | ||
| import useBaseUrl from '@docusaurus/useBaseUrl'; | ||
| import { SdkLogosAsBlocks } from './SdkLogosAsBlocks'; | ||
| import '../../css/homepage-hero.css'; | ||
|
|
||
| const Icon = ({ src, alt, className, width, height }) => { | ||
| const darkSrc = src; | ||
| const lightSrc = src.replace('.svg', '-dark.svg'); | ||
|
|
||
| return ( | ||
| <> | ||
| <img | ||
| src={useBaseUrl(darkSrc)} | ||
| alt={alt} | ||
| className={`icon-dark-mode ${className || ''}`} | ||
| width={width} | ||
| height={height} | ||
| /> | ||
| <img | ||
| src={useBaseUrl(lightSrc)} | ||
| alt={alt} | ||
| className={`icon-light-mode ${className || ''}`} | ||
| width={width} | ||
| height={height} | ||
| /> | ||
| </> | ||
| ); | ||
| }; | ||
|
|
||
| const HomePageHero = () => { | ||
| const quickstartLinks = [ | ||
| { | ||
| path: '/develop/go/set-up-your-local-go', | ||
| name: 'Go Quickstart', | ||
| }, | ||
| { | ||
| path: '/develop/java/set-up-your-local-java', | ||
| name: 'Java Quickstart', | ||
| }, | ||
| { | ||
| path: '/develop/python/set-up-your-local-python', | ||
| name: 'Python Quickstart', | ||
| }, | ||
| { | ||
| path: '/develop/typescript/set-up-your-local-typescript', | ||
| name: 'TypeScript Quickstart', | ||
| }, | ||
| { | ||
| path: '/develop/dotnet/set-up-your-local-dotnet', | ||
| name: '.NET Quickstart', | ||
| }, | ||
| { | ||
| path: '/develop/ruby/set-up-local-ruby', | ||
| name: 'Ruby Quickstart', | ||
| }, | ||
| ]; | ||
|
|
||
| const actionCards = [ | ||
| { | ||
| href: '/quickstarts', | ||
| icon: <Icon src="/img/icons/Lightning.svg" alt="Lightning icon" />, | ||
| title: 'Quickstart', | ||
| description: 'Setup your local and run a Hello World workflow.', | ||
| }, | ||
| { | ||
| href: '/develop', | ||
| icon: <Icon src="/img/icons/Code.svg" alt="Code icon" />, | ||
| title: 'Developer Guide', | ||
| description: 'Dive into everything you need to know about building Temporal workflows.', | ||
| }, | ||
| { | ||
| href: '/production-deployment', | ||
| icon: <Icon src="/img/icons/Rocket.svg" alt="Rocket icon" />, | ||
| title: 'Deploy your Workflows', | ||
| description: | ||
| 'Deploy your Temporal Application to your environment. Self-Host the Temporal Service or use Temporal Cloud.', | ||
| }, | ||
| { | ||
| href: 'https://temporal.io/cloud', | ||
| icon: <Icon src="/img/icons/Cloud.svg" alt="Cloud icon" />, | ||
| title: 'Get started for free with $1000 in credits', | ||
| description: | ||
| '<span class="linkify">Sign up for Temporal Cloud</span> and let us host the Temporal Service for you.', | ||
| }, | ||
| ]; | ||
|
|
||
| const communityCards = [ | ||
| { | ||
| href: 'https://temporal.io/slack', | ||
| icon: <Icon src="/img/icons/Slack.svg" alt="Slack" />, | ||
| title: 'Slack Community', | ||
| description: | ||
| 'Join us on <a href="https://temporal.io/slack">temporal.io/slack</a> and say hi or ask us a question.', | ||
| }, | ||
| { | ||
| href: 'https://community.temporal.io', | ||
| icon: <Icon src="/img/icons/Message.svg" alt="Message" />, | ||
| title: 'Developer Forum', | ||
| description: '<a href="https://community.temporal.io">Find out</a> if your question has already been asked.', | ||
| }, | ||
| { | ||
| href: 'https://learn.temporal.io/courses/', | ||
| icon: <Icon src="/img/icons/Education.svg" alt="Education" />, | ||
| title: 'Learn it all', | ||
| description: '<a href="https://learn.temporal.io/courses/">Master Temporal</a> with our courses and tutorials.', | ||
| }, | ||
| ]; | ||
|
|
||
| return ( | ||
| <div className="homepage-hero-wrapper"> | ||
| <div className="hero-main-title-container"> | ||
| <header className="hero-main-title">Temporal Docs</header> | ||
|
|
||
| <div className="quickstart-links">{SdkLogosAsBlocks()}</div> | ||
| </div> | ||
|
|
||
| <div className="hero-section"> | ||
| <div className="hero-content"> | ||
| <h1>Build applications that never fail</h1> | ||
| <p> | ||
| Temporal is an open-source platform for building reliable applications. Temporal delivers crash-proof | ||
| execution by guaranteeing that applications resume exactly where they left off after crashes, network | ||
| failures, or infrastructure outages, whether that happens seconds, days, or even years later. | ||
| </p> | ||
| <p> | ||
| Temporal enables developers to focus on building features that drive the business while ensuring that | ||
| mission-critical processes such as order fulfillment, customer onboarding, and payment processing never fail | ||
| or disappear, regardless of what goes wrong. | ||
| </p> | ||
| <a href="/quickstarts" className="hero-cta"> | ||
| Quickstart | ||
| <svg fill="none" height="18" viewBox="0 0 21 18" width="21" xmlns="http://www.w3.org/2000/svg"> | ||
| <path d="m20.1094 9.5625-7.1719 7.2187-.7969.7969-1.5937-1.5937.7969-.7969 5.25-5.29688h-15.4688-1.125v-2.25h1.125 15.4688l-5.25-5.25-.7969-.79687 1.5937-1.59375.7969.796875 7.1719 7.171875.7968.79687z" /> | ||
| </svg> | ||
| </a> | ||
| </div> | ||
|
|
||
| <div className="hero-actions"> | ||
| {actionCards.map((card, index) => ( | ||
| <div key={index} className="border-container"> | ||
| <a href={card.href} className="action-card"> | ||
| <div className="action-icon">{card.icon}</div> | ||
| <div className="action-content"> | ||
| <h3>{card.title}</h3> | ||
| <p dangerouslySetInnerHTML={{ __html: card.description }}></p> | ||
|
||
| </div> | ||
| </a> | ||
| </div> | ||
| ))} | ||
| </div> | ||
| </div> | ||
|
|
||
| <div className="community-cards"> | ||
| {communityCards.map((card, index) => ( | ||
| <div key={index} className="community-card"> | ||
| <div className="community-icon">{card.icon}</div> | ||
| <h3>{card.title}</h3> | ||
| <p dangerouslySetInnerHTML={{ __html: card.description }}></p> | ||
|
||
| </div> | ||
| ))} | ||
| </div> | ||
| </div> | ||
| ); | ||
| }; | ||
|
|
||
| export default HomePageHero; | ||
| Original file line number | Diff line number | Diff line change | ||||
|---|---|---|---|---|---|---|
| @@ -1,47 +1,47 @@ | ||||||
| import React from "react"; | ||||||
| import React from 'react'; | ||||||
|
|
||||||
| const supportedTech = [ | ||||||
| { | ||||||
| link: "/develop/go", | ||||||
| image: "/img/sdks/svgs/golang.svg", | ||||||
| alt: "Go lang logo", | ||||||
| class: "w-10 h-8", | ||||||
| link: '/develop/go', | ||||||
| image: '/img/sdks/svgs/golang-block.svg', | ||||||
|
||||||
| image: '/img/sdks/svgs/golang-block.svg', | |
| image: '/img/sdks/svgs/golang.svg', |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,59 @@ | ||
| import React from 'react'; | ||
|
|
||
| const supportedTech = [ | ||
| { | ||
| link: '/develop/go', | ||
| image: '/img/sdks/svgs/golang-block.svg', | ||
| alt: 'Go lang logo', | ||
| }, | ||
| { | ||
| link: '/develop/java', | ||
| image: '/img/sdks/svgs/java-block.svg', | ||
| alt: 'Java logo', | ||
| }, | ||
| { | ||
| link: '/develop/python', | ||
| image: '/img/sdks/svgs/python-block.svg', | ||
| alt: 'Python logo', | ||
| }, | ||
| { | ||
| link: '/develop/typescript', | ||
| image: '/img/sdks/svgs/typescript-block.svg', | ||
| alt: 'TypeScript logo', | ||
| }, | ||
| { | ||
| link: '/develop/php', | ||
| image: '/img/sdks/svgs/php-block.svg', | ||
| alt: 'php logo', | ||
| }, | ||
| { | ||
| link: '/develop/dotnet', | ||
| image: '/img/sdks/svgs/dotnet-block.svg', | ||
| alt: '.Net logo', | ||
| }, | ||
| { | ||
| link: '/develop/ruby', | ||
| image: '/img/sdks/svgs/ruby-block.svg', | ||
| alt: 'Ruby logo', | ||
| }, | ||
| ]; | ||
|
|
||
| const displayTechListItems = () => { | ||
| return supportedTech.map((tech) => { | ||
| return ( | ||
| <li className="sdk-logo" key={tech.alt}> | ||
| <a href={tech.link}> | ||
| <img src={tech.image} alt={tech.alt} /> | ||
| </a> | ||
| </li> | ||
| ); | ||
| }); | ||
| }; | ||
|
|
||
| export const SdkLogosAsBlocks = () => { | ||
| return ( | ||
| <div className="supported-tech"> | ||
| <ul className="sdk-logos-list">{displayTechListItems()}</ul> | ||
| </div> | ||
| ); | ||
| }; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The quickstartLinks array is defined but never used in the component. This creates dead code that should either be removed or implemented in the UI if intended for future use.