upryzing / lavender

Upryzing's web app, built with Solid

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Upryzing's Web App (Lavender)

This repository houses the source code for Lavender, Upryzing's web app, built with Solid.js.

Development Guide

Before contributing, make yourself familiar with our contribution guidelines, the code style guidelines, and the technical documentation for this project.

Before getting started, you'll want to install:

  • Git,
  • Node.js (v18+), and
  • pnpm (run corepack enable).

Then proceed to setup:

# clone the repository
git clone --recursive https://github.com/upryzing/lavender lavender
cd lavender

# update submodules if you pull new changes
# git submodule init && git submodule update

# install all packages
pnpm i

# build deps:
pnpm build:deps

# ...or build a specific dep (e.g. revolt.js updates):
# pnpm --filter revolt.js run build

# run dev server
pnpm dev:web

Finally, navigate to http://local.revolt.chat:5173.

Faster iteration with Revolt.js

To make it easier to work with revolt.js, you may want to temporarily make this change:

# packages/revolt.js/package.json
-  "module": "lib/esm/index.js",
+  "module": "src/index.ts",

Any edits to the revolt.js codebase will immediately be reflected while developing.

Deployment Guide

Build the app

# install packages
pnpm i

# build dependencies
pnpm build:deps

# build for web
pnpm build:web

# ... when building for production, use this instead of :web
pnpm build:prod

You can now deploy the directory packages/client/dist.

Routing Information

The app currently needs the following routes:

  • /login
  • /pwa
  • /dev
  • /settings
  • /friends
  • /server
  • /channel

This corresponds to Content.tsx#L33.

About

Upryzing's web app, built with Solid

License:GNU Affero General Public License v3.0


Languages

Language:TypeScript 99.0%Language:CSS 0.3%Language:Rust 0.3%Language:JavaScript 0.3%Language:HTML 0.1%Language:Nix 0.1%