Decentralized GitHub alternative on Nostr with a Discord-like UI. SolidJS web app.
  • Rust 51.3%
  • TypeScript 47.7%
  • CSS 0.6%
  • HTML 0.4%
Find a file
2026-03-25 19:31:05 +08:00
.helix feat: improve login process and wasm-core architectural rules 2026-03-10 18:27:28 +08:00
public Update application icons to darker amber 'GP' design 2026-03-23 14:26:58 +08:00
src feat: hide time in RepoCard on mobile 2026-03-25 18:17:37 +08:00
wasm-core feat: Connect to nip65 events 2026-03-25 19:31:05 +08:00
.gitignore chore: correctly ignore rust target directories 2026-02-25 09:55:39 +08:00
.ignore Init SolidJS project with example rust crate 2026-02-24 14:27:10 +08:00
AGENTS.md Move X icon to Icons.tsx and sorting fix 2026-03-09 12:09:00 +08:00
bun.lock feat: make app a fully installable PWA with custom icons and manifest 2026-03-03 18:35:34 +08:00
index.html feat(pwa): add reload prompt and update app color theme 2026-03-11 14:41:59 +08:00
LICENSE Add MIT license and update Cargo.toml metadata 2026-03-01 13:23:24 +08:00
package.json feat: make app a fully installable PWA with custom icons and manifest 2026-03-03 18:35:34 +08:00
pnpm-lock.yaml Init SolidJS project with example rust crate 2026-02-24 14:27:10 +08:00
postcss.config.js chore: reorganize agent rules and update frontend components 2026-03-01 10:12:10 +08:00
README.md docs: add wasm unit testing instructions to README and AGENTS.md 2026-03-24 08:44:27 +08:00
tsconfig.json feat(pwa): add reload prompt and update app color theme 2026-03-11 14:41:59 +08:00
vite.config.ts feat(pwa): add reload prompt and update app color theme 2026-03-11 14:41:59 +08:00

Gitplaza

Rust Nostr License: MIT SolidJS WebAssembly Tailwind CSS Bun Codeberg

A decentralized GitHub alternative with a Discord-like UI, built on the Nostr protocol.

This project leverages SolidJS for a highly reactive and performant frontend, and Rust (compiled to WebAssembly via wasm-bindgen) to handle complex business logic and data processing.

🚀 Features

  • Decentralized Infrastructure: Built on top of the Nostr protocol, ensuring censorship resistance and user ownership.
  • Discord-like UI: A modern, familiar interface for a seamless developer experience.
  • WASM-powered Performance: Core logic implemented in Rust for efficiency and type-safety across the stack.
  • Lightweight & Fast: Powered by SolidJS, delivering a smooth, low-latency user experience.

🛠️ Tech Stack

🔧 Development

Prerequisites

Getting Started

  1. Install dependencies:

    bun install
    
  2. Build the WASM core:

    cd wasm-core && wasm-pack build --target web && cd ..
    
  3. Run WASM unit tests:

    cd wasm-core && wasm-pack test --headless --firefox && cd ..
    
  4. Start the development server:

    bun run dev
    

    The app will be available at http://localhost:3000.

Project Structure

  • src/: SolidJS frontend components, routes, and utilities.
  • wasm-core/: Rust implementation of the business logic.
  • pkg/: (Auto-generated) Compiled WASM and TypeScript bindings.

🔌 Nostr Integration

Gitplaza Web implements the following NIPs (Nostr Implementation Possibilities):

NIP Description
NIP-22 Comments (incl. repo chat)
NIP-34 Git stuff
kind 30063 Releases
kind 10018 Starred repository list
  • Profile names are read from the name tag of the profile event, NOT by parsing its JSON content.

🤝 Contributing

We welcome contributions in form of patches, bug reports and other issues submitted over Nostr.

📜 License

MIT