diff --git a/.vitepress/components/AnswerInput.vue b/.vitepress/components/AnswerInput.vue new file mode 100644 index 0000000..815f83e --- /dev/null +++ b/.vitepress/components/AnswerInput.vue @@ -0,0 +1,94 @@ + + + + + diff --git a/.vitepress/config.mjs b/.vitepress/config.mjs index c6fcdb0..c5cbe19 100644 --- a/.vitepress/config.mjs +++ b/.vitepress/config.mjs @@ -90,6 +90,10 @@ export default defineConfig({ { text: 'Glossary', link: '/glossary' + }, + { + text: 'Exercises', + link: '/exercises/' } ], @@ -98,7 +102,8 @@ export default defineConfig({ '/express/': sidebars.express, '/html-css/': sidebars.htmlCss, '/js/': sidebars.javascript, - '/sql/': sidebars.sql + '/sql/': sidebars.sql, + '/exercises/': sidebars.exercises }, socialLinks: [ diff --git a/.vitepress/sidebars/exercises.js b/.vitepress/sidebars/exercises.js new file mode 100644 index 0000000..a23b2be --- /dev/null +++ b/.vitepress/sidebars/exercises.js @@ -0,0 +1,8 @@ +const exerciseNum = i => String(i + 1).padStart(3, '0') + +export const exercises = new Array(3) + .fill(null) + .map((_, i) => ({ + text: `Exercise ${i + 1}`, + link: `/exercises/${exerciseNum(i)}` + })) diff --git a/.vitepress/sidebars/index.js b/.vitepress/sidebars/index.js index a809499..cb4a11c 100644 --- a/.vitepress/sidebars/index.js +++ b/.vitepress/sidebars/index.js @@ -3,3 +3,4 @@ export { express } from './express.js' export { htmlCss } from './html-css.js' export { javascript } from './javascript.js' export { sql } from './sql.js' +export { exercises } from './exercises.js' diff --git a/.vitepress/theme/index.js b/.vitepress/theme/index.js index 6607803..f122c5b 100644 --- a/.vitepress/theme/index.js +++ b/.vitepress/theme/index.js @@ -5,6 +5,7 @@ import './style.css' import Vimeo from '../components/Vimeo.vue' import Exercise from '../components/Exercise.vue' +import AnswerInput from '../components/AnswerInput.vue' import CodeMirror from '../components/CodeMirror.vue' /** @type {import('vitepress').Theme} */ @@ -19,5 +20,6 @@ export default { app.component('Vimeo', Vimeo) app.component('Exercise', Exercise) app.component('CodeMirror', CodeMirror) + app.component('AnswerInput', AnswerInput) } } diff --git a/src/exercises/001.md b/src/exercises/001.md new file mode 100644 index 0000000..08f7b9e --- /dev/null +++ b/src/exercises/001.md @@ -0,0 +1,12 @@ +--- +answer: 280408588055 +--- + +# Exercise 1 + +If `x = 402095` and `y = 697369`, use your code editor to find the value of `x` +multiplied by `y`. + +Print your answer to the console, then copy and paste it below. + + diff --git a/src/exercises/002.md b/src/exercises/002.md new file mode 100644 index 0000000..63bb727 --- /dev/null +++ b/src/exercises/002.md @@ -0,0 +1,12 @@ +--- +answer: 670517 +--- + +# Exercise 2 + +If `a = 267560421612` and `b = 399036`, use your code editor to find the value +of `a` divided by `b`. + +Print your answer to the console, then copy and paste it below. + + diff --git a/src/exercises/003.md b/src/exercises/003.md new file mode 100644 index 0000000..dfb9bb7 --- /dev/null +++ b/src/exercises/003.md @@ -0,0 +1,12 @@ +--- +answer: 370967703776 +--- + +# Exercise 3 + +Use your code editor to find the result when the number `206` is multipled by +itself `5` times. + +Print your answer to the console, then copy and paste it below. + + diff --git a/src/exercises/index.md b/src/exercises/index.md new file mode 100644 index 0000000..428e596 --- /dev/null +++ b/src/exercises/index.md @@ -0,0 +1,3 @@ +# Exercises + +Welcome to the exercises!