Skip to content

probe-rs/webpage

Repository files navigation

The new (new) probe.rs webpage

Goals

  • Create a more appealing frontpage that tells the visitor a bit better what we have to offer.
  • Provide simple installation instructions. Part of this initiative is building proper release artifacts in the pipeline (see #1721).
  • Make the entry into probe-rs usage even easier.
    • Explain how one uses probe-rs run properly.
    • How to troubleshoot
      • How to enable logs
      • What are common errors
        • Can we also add hints in our error messages
    • Clean up docs a lot and explain in more detail.
  • Add a searchable list of provided targets with information about each target.
  • Avoid maintenance issues of Deno & Lume.

Development

Install NodeJS which is the JS runtime to generate all webpage docs.

Alternatively, use Nix to fetch the development shell tools:

nix-shell

Fetch dependencies. Be patient, it may take a while on the first run.

npm install

Then locally serve the documentation from the root of this repository. Be patient, it may take a while on the first run.

npm run dev

When the documentation preview is ready and gets served, you will be greeted with something like:

> [email protected] dev
> astro dev

 astro  v5.5.2 ready in 1355 ms

┃ Local    http://localhost:4321/
┃ Network  use --host to expose

10:04:56 watching for file changes...

Building & Testing Static Site

To build the site, into the dist/ folder:

npm run build

And start a local static server with the contents of dist/, served at your configured base path:

npm run preview

And visit it, with your base path if set:

http://localhost:3000/probe.rs-astro/

Targets & Manufacturers Data Dependency

This repo currently pulls in targets & manufacturer data from https://github.com/probe-rs/probe-rs using NPM:

npm install https://github.com/probe-rs/probe-rs

The dependency gets updated automatically by .github/workflows/update-probe-rs-dep.yml, or can be updated manually with:

npm update probe-rs-targets

Changing URL

If changing the serving domain or path, update site and base in astro.config.mjs.

Icons

Find free / open source icons (https://iconify.design/), throw them in src/icons, and use an <Icon /> tag:

<Icon name="carbon--table-of-contents" class="text-green" />

Original Template

This website is a customzied version of Astro's blog template:

npm create astro@latest -- --template blog