Skip to content

Repository files navigation

Pastor Web (Preview) · apps.parchlinux.com

A statically generated (zero-SSR) showcase of the native applications the Parch Linux team builds and ships in the official repositories.

English: Pastor Web (Preview) · فارسی: پارچ استور وب (پیش‌نمایش)

What it does

  • Lists official Parch applications detected from ~/parch/repos/worldhubb/ (package metadata from world.db, icons extracted from the .pkg.tar.zst files).
  • Every Install action points at the native app through the pastor:// and appstream:// URI schemes Pastor registers — the protocol is the plumbing, not the product, so it stays out of the UI.
  • Fully bilingual (EN / فارسی) with automatic RTL, dark/light themes, live search and category filtering.

Stack

  • React 19 + Vite 6 (static export, no server-side rendering)
  • Tailwind CSS v4 + custom design system (Parch brand gradient, frosted-glass surfaces, Estedad typeface bundled from parchlinux.com)
  • Built with Bun, served by Nginx (multi-stage Dockerfile)

Development

bun install
bun run dev        # local dev server on :3000
bun run build      # typecheck + static build → dist/
bun run preview    # serve the built site

If your network uses a broken SOCKS proxy, bypass it for the registry: env -u http_proxy -u https_proxy -u HTTP_PROXY -u HTTPS_PROXY bun install

Docker

docker build -t pastor-web-preview .
docker run -p 8080:80 pastor-web-preview
# → http://localhost:8080

Multi-stage build: oven/bun:1-alpine (builder) → nginx:1.27-alpine (static server with gzip, caching and security headers).

Regenerating the app catalogue / icons

Icons can be re-extracted from the repository at any time:

bash scripts/extract-icons.sh /home/sohi/parch/repos/worldhubb/x86_64

The app list lives in src/data/apps.ts; package metadata is sourced from worldhubb/x86_64/world.db (a gzip-compressed tar of per-package desc files, Arch sync-db format).

Layout

apps.parchlinux.com/
├── Dockerfile
├── nginx.conf
├── index.html
├── public/
│   ├── fonts/      Estedad (bundled from parchlinux.com)
│   ├── icons/      official app icons extracted from packages
│   └── images/     shared Parch imagery
└── src/
    ├── App.tsx              state + layout shell
    ├── data/apps.ts         app catalogue (from worldhubb)
    ├── i18n.tsx             EN/FA dictionaries + context
    ├── styles/index.css     design system & motion
    └── components/          Header · Hero · CategoryFilter ·
                             AppCard · AppSheet · Footer

About

No description, website, or topics provided.

Resources

Code of conduct

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages