upub/web
2025-01-23 00:14:01 +01:00
..
assets chore: moved out of upub folder 2025-01-20 23:52:36 +01:00
src feat(web): better thread compression 2025-01-22 21:19:01 +01:00
Cargo.toml chore: bump versions 2025-01-22 04:20:02 +01:00
favicon.ico feat(web): build CSR with trunk and bundle 2025-01-22 01:14:14 +01:00
icon.png feat(web): build CSR with trunk and bundle 2025-01-22 01:14:14 +01:00
index.html chore(web): trunk index file 2025-01-22 01:19:08 +01:00
manifest.json feat(web): build CSR with trunk and bundle 2025-01-22 01:14:14 +01:00
README.md docs(web): document a bit how to deal with frontend 2025-01-23 00:14:01 +01:00
style.css feat(web): better thread compression 2025-01-22 21:19:01 +01:00

upub-web

this is μpub main frontend: it's a single wasm bundle doing clientside routing for faster navigation between objects

it has the drawback of not being search-engine friendly, but machines should process data for machines themselves (aka: the AP documents), so it's probably fine to have a "js"-heavy frontend

development

it's probably possible to get upub-web to build with just wasm-bindgen, but i recommend just using trunk to keep your sanity. by default upub-web sets the "offline" option, so you'll still need to download wasm-bindgen yourself (or run with TRUNK_OFFLINE=false and let trunk download it itself once)

$ UPUB_BASE_URL=https://dev.upub.social trunk serve

will give you a local development server with auto-reload pointing to dev.upub.social, so you don't even need to spin up a local instance (omit UPUB_BASE_URL env variable to make frontend point to localhost instead)

building

just run

$ trunk build --release

to generate the ./web/dist folder containing all necessary assets

either serve these yourself, or compile main upub with web feature enable to have it bundle these freshly built frontend files