Skip to content

Commit a72852b

Browse files
authored
feat: add sample app to node.js finish page (#4844)
* feat: add sample app to node.js finish page * fix: prettier * feat: add boiler plate to node.js
1 parent 14f1a15 commit a72852b

File tree

1 file changed

+81
-33
lines changed

1 file changed

+81
-33
lines changed

src/homepageExperience/components/steps/Finish.tsx

Lines changed: 81 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ import {
33
AlignItems,
44
ComponentSize,
55
FlexBox,
6+
FlexDirection,
67
ResourceCard,
78
} from '@influxdata/clockface'
89

@@ -79,7 +80,15 @@ export const Finish = (props: OwnProps) => {
7980
}
8081
}, [])
8182

82-
const showSampleApp = props.wizardEventName === 'pythonWizard'
83+
const showSampleApp =
84+
props.wizardEventName === 'pythonWizard' ||
85+
props.wizardEventName === 'nodejsWizard'
86+
const sampleAppLink =
87+
props.wizardEventName === 'pythonWizard'
88+
? 'https://github.com/InfluxCommunity/sample-flask/blob/main/app.py'
89+
: 'https://github.com/influxdata/iot-api-js'
90+
const showBoilerplate = props.wizardEventName === 'nodejsWizard'
91+
8392
return (
8493
<>
8594
<h1>Congrats!</h1>
@@ -92,48 +101,87 @@ export const Finish = (props: OwnProps) => {
92101
<p style={{marginTop: '80px'}}>
93102
Curious to learn more? Try these next steps!
94103
</p>
95-
<FlexBox margin={ComponentSize.Medium} alignItems={AlignItems.Stretch}>
96-
{showSampleApp && (
104+
<FlexBox
105+
margin={ComponentSize.Large}
106+
direction={FlexDirection.Column}
107+
alignItems={AlignItems.FlexStart}
108+
>
109+
<FlexBox
110+
margin={ComponentSize.Large}
111+
alignItems={AlignItems.Stretch}
112+
direction={FlexDirection.Row}
113+
>
97114
<ResourceCard
98115
className="homepage-wizard-next-steps"
99116
onClick={() =>
100-
handleNextStepEvent(props.wizardEventName, 'sampleApp')
117+
handleNextStepEvent(props.wizardEventName, 'keyConcepts')
101118
}
102119
>
103-
<SafeBlankLink href="https://github.com/InfluxCommunity/sample-flask/blob/main/app.py">
104-
<h4>{CodeTerminalIcon}Sample App</h4>
120+
<SafeBlankLink href="https://docs.influxdata.com/influxdb/v2.2/reference/key-concepts/">
121+
<h4>{BookIcon}Key Concepts</h4>
122+
</SafeBlankLink>
123+
<p>Learn about important concepts for writing time-series data.</p>
124+
</ResourceCard>
125+
<ResourceCard
126+
className="homepage-wizard-next-steps"
127+
onClick={() =>
128+
handleNextStepEvent(props.wizardEventName, 'influxUniversity')
129+
}
130+
>
131+
<SafeBlankLink href="https://influxdbu.com/">
132+
<h4>{CodeTerminalIcon}InfluxDB University</h4>
105133
</SafeBlankLink>
106134
<p>
107-
Play around with our template code of sample app to streamline
108-
your own data into InfluxData.
135+
Our free hands-on courses teach you the technical skills and best
136+
practices to get the most out of your real-time data with
137+
InfluxDB.
109138
</p>
110139
</ResourceCard>
111-
)}
112-
<ResourceCard
113-
className="homepage-wizard-next-steps"
114-
onClick={() =>
115-
handleNextStepEvent(props.wizardEventName, 'keyConcepts')
116-
}
140+
</FlexBox>
141+
<FlexBox
142+
margin={ComponentSize.Large}
143+
alignItems={AlignItems.Stretch}
144+
direction={FlexDirection.Row}
117145
>
118-
<SafeBlankLink href="https://docs.influxdata.com/influxdb/v2.2/reference/key-concepts/">
119-
<h4>{BookIcon}Key Concepts</h4>
120-
</SafeBlankLink>
121-
<p>Learn about important concepts for writing time-series data.</p>
122-
</ResourceCard>
123-
<ResourceCard
124-
className="homepage-wizard-next-steps"
125-
onClick={() =>
126-
handleNextStepEvent(props.wizardEventName, 'influxUniversity')
127-
}
128-
>
129-
<SafeBlankLink href="https://influxdbu.com/">
130-
<h4>{CodeTerminalIcon}InfluxDB University</h4>
131-
</SafeBlankLink>
132-
<p>
133-
Our free hands-on courses teach you the technical skills and best
134-
practices to get the most out of your real-time data with InfluxDB.
135-
</p>
136-
</ResourceCard>
146+
{showSampleApp && (
147+
<ResourceCard
148+
className="homepage-wizard-next-steps"
149+
onClick={() =>
150+
handleNextStepEvent(props.wizardEventName, 'sampleApp')
151+
}
152+
>
153+
<SafeBlankLink href={sampleAppLink}>
154+
<h4>{CodeTerminalIcon}Sample App</h4>
155+
</SafeBlankLink>
156+
{props.wizardEventName === 'pythonWizard' ? (
157+
<p>
158+
Play around with our template code of sample app to streamline
159+
your own data into InfluxData.
160+
</p>
161+
) : (
162+
// nodejs sample app
163+
<p>View an IoT sample application written in Node.js.</p>
164+
)}
165+
</ResourceCard>
166+
)}
167+
{showBoilerplate && (
168+
<ResourceCard
169+
className="homepage-wizard-next-steps"
170+
onClick={() =>
171+
handleNextStepEvent(props.wizardEventName, 'Boilerplate')
172+
}
173+
>
174+
<SafeBlankLink href="https://github.com/influxdata/nodejs-samples/">
175+
<h4>{CodeTerminalIcon}Boilerplate Snippets</h4>
176+
</SafeBlankLink>
177+
178+
<p>
179+
Get started writing and querying your own data using our code
180+
snippets.
181+
</p>
182+
</ResourceCard>
183+
)}
184+
</FlexBox>
137185
</FlexBox>
138186
</>
139187
)

0 commit comments

Comments
 (0)