Skip to content

Commit

Permalink
feat(web): switch to starlight
Browse files Browse the repository at this point in the history
  • Loading branch information
justmoon committed Sep 1, 2024
1 parent d922f68 commit 7207b6a
Show file tree
Hide file tree
Showing 19 changed files with 3,700 additions and 780 deletions.
2 changes: 1 addition & 1 deletion .meta-updater/main.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ export default createUpdateOptions(async (workspaceDir) => {
engines: {
node:
manifest.name === "@dassie/app-website" ?
"18.x"
"20.x"
: `=${NODE_VERSION}`,
},
}
Expand Down
23 changes: 21 additions & 2 deletions packages/app-website/.gitignore
Original file line number Diff line number Diff line change
@@ -1,2 +1,21 @@
/.next/
/.next-env.d.ts
# build output
dist/
# generated types
.astro/

# dependencies
node_modules/

# logs
npm-debug.log*
yarn-debug.log*
yarn-error.log*
pnpm-debug.log*


# environment variables
.env
.env.production

# macOS-specific files
.DS_Store
14 changes: 3 additions & 11 deletions packages/app-website/README.md
Original file line number Diff line number Diff line change
@@ -1,13 +1,5 @@
# Dassie.land
# [Dassie.land](https://dassie.land)

This is the code that powers [Dassieland](https://dassie.land).
[![Built with Starlight](https://astro.badg.es/v2/built-with-starlight/tiny.svg)](https://starlight.astro.build)

## Local Development

First, run `pnpm i` to install the dependencies.

Then, run `pnpm web` to start the development server and visit localhost:3000.

## License

This project is licensed under the Apache 2.0 license.
This is the source code for the [dassie.land](https://dassie.land) website.
25 changes: 25 additions & 0 deletions packages/app-website/astro.config.mjs
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
import starlight from "@astrojs/starlight"
import { defineConfig } from "astro/config"

// https://astro.build/config
export default defineConfig({
site: "https://dassie.land",
integrations: [
starlight({
title: "Dassie",
social: {
github: "https://github.com/justmoon/dassie",
discord: "https://discord.gg/HqdGNfs9kq",
},
sidebar: [
{
label: "Guides",
items: [{ label: "Quick Start", slug: "guides/quick-start" }],
},
],
expressiveCode: {
themes: ["dracula", "github-light"],
},
}),
],
})
5 changes: 0 additions & 5 deletions packages/app-website/next-env.d.ts

This file was deleted.

6 changes: 0 additions & 6 deletions packages/app-website/next.config.js

This file was deleted.

38 changes: 14 additions & 24 deletions packages/app-website/package.json
Original file line number Diff line number Diff line change
@@ -1,34 +1,24 @@
{
"name": "@dassie/app-website",
"version": "0.1.0",
"version": "0.0.1",
"description": "Dassie.land website",
"type": "module",
"scripts": {
"dev": "NEXT_TELEMETRY_DISABLED=1 next dev",
"start": "NEXT_TELEMETRY_DISABLED=1 next start",
"build": "NEXT_TELEMETRY_DISABLED=1 next build",
"typecheck": "tsc --pretty"
"dev": "astro dev",
"start": "astro dev",
"build": "astro check && astro build",
"preview": "astro preview",
"astro": "astro"
},
"author": "Stefan Thomas <justmoon@members.fsf.org>",
"license": "Apache-2.0",
"repository": {
"type": "git",
"url": "git+https://github.com/justmoon/dassie.git"
},
"bugs": {
"url": "https://github.com/justmoon/dassie/issues"
},
"homepage": "https://dassie.land",
"dependencies": {
"next": "^14.2.6",
"nextra": "^2.13.2",
"nextra-theme-docs": "^2.13.2",
"react": "^18.3.1",
"react-dom": "^18.3.1"
},
"devDependencies": {
"@dassie/meta-tsconfig": "workspace:^"
"@astrojs/check": "^0.9.3",
"@astrojs/starlight": "^0.26.1",
"astro": "^4.10.2",
"sharp": "^0.33.5",
"typescript": "^5.5.4"
},
"author": "Stefan Thomas <justmoon@members.fsf.org>",
"engines": {
"node": "18.x"
"node": "20.x"
}
}
4 changes: 0 additions & 4 deletions packages/app-website/pages/_meta.json

This file was deleted.

23 changes: 0 additions & 23 deletions packages/app-website/pages/index.mdx

This file was deleted.

1 change: 1 addition & 0 deletions packages/app-website/public/favicon.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added packages/app-website/src/assets/dassie.webp
Binary file not shown.
6 changes: 6 additions & 0 deletions packages/app-website/src/content/config.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
import { defineCollection } from 'astro:content';
import { docsSchema } from '@astrojs/starlight/schema';

export const collections = {
docs: defineCollection({ schema: docsSchema() }),
};
Original file line number Diff line number Diff line change
@@ -1,18 +1,21 @@
# Quick Start
---
title: Quick Start
description: Get up and running quickly with Dassie.
---

So you want to try out Dassie. First, let me congratulate you on your bravery. Second, let me warn you that Dassie is still in the early stages of development and is not yet ready for production use. If you're still interested, read on.

## Prerequisites

You will need a server (or virtual machine) with the following:

* Linux
* Must be a recent distribution (we did all our testing on Debian Bullseye)
* Must use systemd
* Curl
* A publicly accessible IP address
* A domain name that points to that IP address
* TCP ports 80 and 443 open to the world
- Linux
- Must be a recent distribution (we did all our testing on Debian Bullseye)
- Must use systemd
- Curl
- A publicly accessible IP address
- A domain name that points to that IP address
- TCP ports 80 and 443 open to the world

## Installation

Expand Down Expand Up @@ -52,7 +55,6 @@ To manually trigger an update, run the following command on your server:
sudo dassie update
```


## Deinstallation

If you ever need to uninstall Dassie, you can run the following command on your server:
Expand Down
41 changes: 41 additions & 0 deletions packages/app-website/src/content/docs/index.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
---
title: What is Dassie?
description: Get started building your docs site with Starlight.
template: splash
hero:
tagline: A peer-to-peer network which can transfer tiny amounts of money quickly and cheaply.

image:
file: ../../assets/dassie.webp
actions:
- text: Get Started
link: /guides/quick-start/
icon: right-arrow
- text: See the code
link: https://github.com/justmoon/dassie
icon: external
variant: minimal
---

import { Aside, Card, CardGrid } from '@astrojs/starlight/components';

<Aside type="tip">
Dassie is not a blockchain - payments are routed like packets through the network and are not stored. The only shared state is the link state used for routing.
</Aside>

## Next steps

<CardGrid stagger>
<Card title="Scalable" icon="rocket">
Dassie can handle very large amounts of very small payments and scales horizontally meaning its throughput capacity increases as more nodes join the network.
</Card>
<Card title="Currency-neutral" icon="seti:shell">
Dassie automatically handles currency exchange and routing. You can use any (supported) currency you like and still transact with everyone else on the Dassie network.
</Card>
<Card title="Ledger-neutral" icon="document">
The current implementation uses various cryptocurrencies as the underlying value transfer systems, but Dassie is based on [Interledger](https://interledger.org/), which means that it can be used with any payments system with an open API.
</Card>
<Card title="Under development" icon="setting">
Dassie is still in the early stages of development and is not yet ready for production use. If you're still interested, [give it a try](/guides/quick-start/).
</Card>
</CardGrid>
2 changes: 2 additions & 0 deletions packages/app-website/src/env.d.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
/// <reference path="../.astro/types.d.ts" />
/// <reference types="astro/client" />
23 changes: 0 additions & 23 deletions packages/app-website/theme.config.tsx

This file was deleted.

17 changes: 4 additions & 13 deletions packages/app-website/tsconfig.json
Original file line number Diff line number Diff line change
@@ -1,16 +1,7 @@
{
"extends": "@dassie/meta-tsconfig/nextjs.json",
"include": [
"next-env.d.ts",
"**/*.ts",
"**/*.tsx"
],
"exclude": [
"next.config.js",
"dist"
],
"extends": "astro/tsconfigs/strictest",
"references": [],
"compilerOptions": {
"outDir": "dist"
},
"references": []
}
}
}
11 changes: 0 additions & 11 deletions packages/meta-tsconfig/nextjs.json

This file was deleted.

Loading

0 comments on commit 7207b6a

Please sign in to comment.