Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
82 commits
Select commit Hold shift + click to select a range
6bcb40b
update dependencies
LyonSyonII Oct 31, 2024
8b33d54
small performance adjustements
LyonSyonII Nov 16, 2024
0bfa7ed
fix big layout shift in index.html on desktop
LyonSyonII Nov 16, 2024
3ce996c
WIP
LyonSyonII Nov 17, 2024
3e16a76
works, but small fixes are needed
LyonSyonII Nov 17, 2024
2c442a7
Completely implemented, more testing needed
LyonSyonII Nov 17, 2024
89dd7e6
handle copy and cut
LyonSyonII Nov 17, 2024
c3c791a
merge main
LyonSyonII Nov 17, 2024
d5a707c
fix: make images more blurred in disabled checkpoints to avoid spoilers
LyonSyonII Nov 17, 2024
617b900
fix: RESET now properly resets the chapter/codeblock
LyonSyonII Nov 17, 2024
40d6897
feat: add readonly ranges to chapters 2 and 3
LyonSyonII Nov 17, 2024
d24d752
feat: add readonly ranges to chapter 4
LyonSyonII Nov 17, 2024
518718d
feat: multiple style adjustements
LyonSyonII Nov 17, 2024
f6a8132
fix: manually implemented CodeBlock vertical navigation for a much sm…
LyonSyonII Nov 17, 2024
e6db47b
feat: enable protectedRanges only if code is protected
LyonSyonII Nov 17, 2024
044a2af
prettier
LyonSyonII Nov 17, 2024
d4e89ca
fix: fixed multiline jumps when a line does not have a modifiable block
LyonSyonII Nov 17, 2024
67893f6
a bit of cleanup
LyonSyonII Nov 18, 2024
468d06d
feat: line end will not be focused, instead selection travels to near…
LyonSyonII Nov 18, 2024
21c3214
feat: line end will not be focused, instead selection travels to near…
LyonSyonII Nov 18, 2024
ed4b1e6
fix: fixed corner case where a line doesn't have a modifiable section
LyonSyonII Nov 18, 2024
96835e2
fix: no return allowed on script tags
LyonSyonII Nov 19, 2024
fdc0403
remove unnecessary log
LyonSyonII Nov 19, 2024
2d443a1
prettier
LyonSyonII Nov 19, 2024
ce05fa2
feat: add debug console if ?dbg is present
LyonSyonII Nov 19, 2024
cbcbc13
other: show "interpreter downloaded" only once per session
LyonSyonII Nov 20, 2024
f4e16bf
internal: change protected ranges getters for clarity
LyonSyonII Nov 20, 2024
82319d7
add protected ranges
LyonSyonII Nov 20, 2024
12d718c
fix: rewrite navigationExtension logic to make it much simpler and co…
LyonSyonII Nov 20, 2024
1a9576f
pnpm fmt
LyonSyonII Nov 21, 2024
98db87c
fix: [1] small change
LyonSyonII Nov 23, 2024
2b698e0
dev-prev
LyonSyonII Nov 23, 2024
dd7f7b7
merged
LyonSyonII Nov 23, 2024
00173bf
merge
LyonSyonII Nov 23, 2024
c9491ec
update to latest astro
LyonSyonII Dec 24, 2024
12c2c63
pnpm biome
LyonSyonII Dec 24, 2024
2692ff1
feat: add underline when modifiable region is empty
LyonSyonII Dec 24, 2024
29d57b1
fix: empty modifiable section setting caret to right instead of left
LyonSyonII Dec 24, 2024
ab8d311
small annotations
LyonSyonII Dec 24, 2024
a5747e1
[6] changed first exercise to freshness instead of temperature
LyonSyonII Dec 24, 2024
b609fb7
fix: replace deprecated Astro.glob with Vite import.meta.glob
LyonSyonII Jan 7, 2025
cb08f12
pnpm up
LyonSyonII Jan 7, 2025
a9dea48
update nix dependencies
LyonSyonII Jan 7, 2025
edacff7
feat: re-add shift+enter shortcut
LyonSyonII Jan 7, 2025
d197f0c
remove bundle analyzers
LyonSyonII Jan 7, 2025
c8b3ccd
inline stylesheets to avoid large css files
LyonSyonII Jan 7, 2025
08c7b07
remove unneeded imports
LyonSyonII Jan 7, 2025
bb0a577
move Prec import to dynamic
LyonSyonII Jan 7, 2025
d2081bd
improve placeholder codeblock when loading page
LyonSyonII Jan 7, 2025
95a354b
update nix shell
LyonSyonII Jan 29, 2025
ca9053d
Merge branch 'main' into dev
LyonSyonII Jan 29, 2025
b55ae8c
add action to deploy development branch to other repo
LyonSyonII Jan 29, 2025
f4f4021
add action to deploy development branch to other repo
LyonSyonII Jan 29, 2025
4667cb6
fix: make images invisible when in a blurred checkpoint to avoid spoi…
LyonSyonII Jan 29, 2025
a074ba5
pnpm up
LyonSyonII Mar 8, 2025
e108c88
pnpm up
LyonSyonII Mar 8, 2025
7417d6e
pnpm up
LyonSyonII Mar 8, 2025
dd27ca5
fix: hints ignore 'visible' state and are always shown
LyonSyonII Mar 8, 2025
0931fc6
small fixes
LyonSyonII Mar 9, 2025
0286716
WIP: Improve introduction
LyonSyonII Mar 9, 2025
1e43392
Convert Run and Reset buttons svg into components
LyonSyonII Jun 24, 2025
20ae0d9
small edits
LyonSyonII Jun 24, 2025
8cafc9e
fix: wait for board to be reset before running again
LyonSyonII Jun 24, 2025
8b1c5e7
chore: remove eruda
LyonSyonII Jun 24, 2025
dadbc65
fix: confettis package has been removed from npmjs, replace with canv…
LyonSyonII Jun 24, 2025
243c2d6
fix: change amount of confetti
LyonSyonII Jun 24, 2025
4391d6a
update dependencies
LyonSyonII Jun 24, 2025
729f86c
add permissions to workflows
LyonSyonII Jun 24, 2025
066a960
update dependencies
LyonSyonII Jun 24, 2025
d98748a
style: add margin to the Portrait cards
LyonSyonII Jun 25, 2025
15f5c17
chore: add WIP message to all pages
LyonSyonII Jun 25, 2025
c9619f2
Rewrite first lines of introductions
LyonSyonII Jun 25, 2025
0162c4e
update README with author of charater portraits style.
LyonSyonII Jun 25, 2025
46f4221
doc: add note explaining the double equal sign
LyonSyonII Jun 25, 2025
b023757
chore: update dependencies
LyonSyonII Jun 25, 2025
e8fb297
add extra credits to README
LyonSyonII Jun 25, 2025
bea6ec0
feat: add colored output to compilation errors, and show them instead…
LyonSyonII Jun 25, 2025
7981a24
add extra thanks
LyonSyonII Jun 25, 2025
31b87e9
fix: add margin to hint
LyonSyonII Jun 25, 2025
8de3f33
add README.html
LyonSyonII Jun 25, 2025
62c6acf
improve introduction
LyonSyonII Jun 25, 2025
4f7a2cd
multiple small fixes
LyonSyonII Jun 25, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions 4 .github/workflows/changelog.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,10 @@ on:
tags:
- v[0-9]+.[0-9]+.[0-9]+

permissions:
contents: write
pull-requests: write

jobs:
deploy:
runs-on: ubuntu-latest
Expand Down
9 changes: 3 additions & 6 deletions 9 .github/workflows/deploy-dev.yml
Original file line number Diff line number Diff line change
Expand Up @@ -23,14 +23,11 @@ jobs:
with:
path: "frontend"
package-manager: pnpm@latest

deploy:
needs: build
runs-on: ubuntu-latest
steps:
- name: Deploy
- name: Deploy to dev.rust-quest
uses: peaceiris/actions-gh-pages@v4
with:
personal_token: ${{ secrets.DEV_DEPLOY_TOKEN }}
external_repository: lyonsyonii/dev.rust-quest
publish_branch: gh-pages # default: gh-pages
publish_dir: ./frontend/dist
cname: dev.rust-quest.com
4 changes: 4 additions & 0 deletions 4 .github/workflows/pr-description.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,10 @@ on:
- opened
- reopened
- synchronize

permissions:
contents: read
pull-requests: write

jobs:
update-pr-description:
Expand Down
2 changes: 2 additions & 0 deletions 2 .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -23,3 +23,5 @@ stats.html

**/target/
**/.direnv

README.html
14 changes: 10 additions & 4 deletions 14 README.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,15 +19,21 @@ Well, my mission here is to demonstrate the opposite!

## Contributing

Feel free to open a PR if you find any error!
Translations are also welcome.
Feel free to open an Issue or PR if you find an error!

## Tooling
The book is still in a very early stage of development, and translations aren't supported yet.
I'd really apreciate any proofreading though!

## Thanks

This book has been made possible thanks to [Astro](https://astro.build/), [Starlight](https://starlight.astro.build/), the [Rust Playground](https://play.rust-lang.org/) and [Godbolt's Compiler Explorer](https://godbolt.org/).

The character portraits have been created with the [DiceBear](https://editor.dicebear.com/) tool, specifically in the [Lorelei](https://www.figma.com/community/file/1198749693280469639/lorelei-dicebear) style by [Lisa Wischofsky](https://www.instagram.com/lischi_art/).

Special thanks to my friend Sofi for her drawings ❤️.

## License

Rust Quest is licensed under CC BY-NC-SA 4.0.
It allows redistribution and modification for noncommercial use.
To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/
To view a copy of this license, visit https://creativecommons.org/licenses/by-nc-sa/4.0/
15 changes: 9 additions & 6 deletions 15 frontend/astro.config.mjs
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
import starlight from "@astrojs/starlight";
import compress from "astro-compress";
import compressor from "astro-compressor";
import purgecss from "astro-purgecss";
import robotsTxt from "astro-robots-txt";
import { defineConfig, sharpImageService } from "astro/config";
import { MagicRegExpTransformPlugin } from "magic-regexp/transform";
import { visualizer } from "rollup-plugin-visualizer";

// https://astro.build/config
export default defineConfig({
Expand All @@ -17,9 +17,10 @@ export default defineConfig({
logo: {
src: "./src/assets/ferris.svg",
},
social: {
github: "https://github.com/lyonsyonii/rust-quest",
},
favicon: "/favicon.svg",
social: [
{ icon: "github", label: "Github", href: "https://github.com/lyonsyonii/rust-quest", },
],
sidebar: [
{
label: "First Steps",
Expand Down Expand Up @@ -48,8 +49,10 @@ export default defineConfig({
},
*/
},
expressiveCode: false,
}),
robotsTxt(),
purgecss(),
compress(),
compressor(),
],
Expand All @@ -60,7 +63,7 @@ export default defineConfig({
inlineStylesheets: "auto",
},
vite: {
plugins: [visualizer(), MagicRegExpTransformPlugin.vite()],
plugins: [MagicRegExpTransformPlugin.vite()],
},
markdown: {
remarkPlugins: [],
Expand All @@ -71,6 +74,6 @@ export default defineConfig({
},
experimental: {
clientPrerender: true,
contentCollectionCache: false,
contentIntellisense: true,
},
});
2 changes: 1 addition & 1 deletion 2 frontend/biome.json
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@
"indentStyle": "space",
"indentWidth": 2,
"lineEnding": "lf",
"lineWidth": 80,
"lineWidth": 100,
"attributePosition": "auto"
},
"linter": {
Expand Down
6 changes: 3 additions & 3 deletions 6 frontend/flake.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

54 changes: 28 additions & 26 deletions 54 frontend/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -13,35 +13,37 @@
"analyze": "source-map-explorer 'dist/_astro/*.js'"
},
"dependencies": {
"@codemirror/autocomplete": "^6.18.3",
"@codemirror/commands": "^6.7.1",
"@codemirror/lang-rust": "^6.0.1",
"@codemirror/language": "^6.10.3",
"@codemirror/search": "^6.5.7",
"@codemirror/state": "^6.4.1",
"@codemirror/view": "^6.34.3",
"@codemirror/autocomplete": "^6.18.6",
"@codemirror/commands": "^6.8.1",
"@codemirror/lang-rust": "^6.0.2",
"@codemirror/language": "^6.11.1",
"@codemirror/search": "^6.5.11",
"@codemirror/state": "^6.5.2",
"@codemirror/view": "^6.37.2",
"@lezer/highlight": "^1.2.1",
"@sweetalert2/theme-dark": "^5.0.18",
"appwrite": "^16.0.2",
"confettis": "^0.3.7",
"idb-keyval": "^6.2.1",
"ansi_up": "^6.0.6",
"canvas-confetti": "^1.9.3",
"idb-keyval": "^6.2.2",
"lz-string": "^1.5.0",
"magic-regexp": "^0.8.0",
"purgecss": "^6.0.0",
"sweetalert2": "^11.14.5"
"magic-regexp": "^0.9.0",
"sweetalert2": "^11.22.1"
},
"purgecss": "^7.0.2",
"devDependencies": {
"@astrojs/check": "^0.9.4",
"@astrojs/starlight": "^0.28.6",
"@biomejs/biome": "1.8.3",
"astro": "^4.16.13",
"astro-compress": "^2.3.5",
"astro-compressor": "^0.4.1",
"astro-purgecss": "^4.8.0",
"@astrojs/starlight": "^0.34.4",
"@biomejs/biome": "2.0.5",
"@types/canvas-confetti": "^1.9.0",
"astro": "^5.10.1",
"astro-compress": "^2.3.8",
"astro-compressor": "^1.0.0",
"astro-purgecss": "^5.2.3",
"astro-robots-txt": "^1.0.0",
"rollup-plugin-visualizer": "^5.12.0",
"sharp": "^0.33.5",
"typescript": "^5.6.3",
"vite-bundle-analyzer": "^0.10.6"
}
}
"sharp": "^0.34.2",
"typescript": "^5.8.3"
},
"pnpm.onlyBuiltDependencies": [
"sharp",
"esbuild"
]
}
Loading
Morty Proxy This is a proxified and sanitized view of the page, visit original site.