npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

git-hirys

v0.1.1

Published

분산 Git 호스팅 플랫폼 - Irys 네트워크 기반

Downloads

17

Readme

GitHirys - Irys-based Git-like Service

A decentralized Git-like repository service utilizing Solana blockchain and Irys network.

🚀 Quick Start

1. Prerequisites

  • Node.js 16.8 or higher
  • Solana Wallet (Phantom, Solflare, etc.)
  • Internet connection

2. Installation and Setup

# Install dependencies
npm install

# Run development server
npm run dev

Open http://localhost:3000 in your browser to view the application.

📋 Current Features

✅ Implemented Features

  • 🔗 Solana Wallet Connection

    • Support for Phantom, Solflare wallets
    • Easy connection through wallet modal UI
    • Connection/disconnection state management
  • 📂 Repository Exploration

    • Search Irys transactions for connected wallet address
    • Display only actually uploaded repositories
    • Clear guidance when no repositories exist
  • 📄 Repository Details

    • Display CID for each repository
    • Generate and copy clone commands
    • Display file list (ZIP file support)
  • 🎨 Modern UI

    • Responsive design
    • Loading state indicators
    • Error messages and guidance

🔧 Technical Features

  • Complete Decentralization: Direct use of Irys network without central server
  • Real-time Search: Real-time repository search upon wallet connection
  • Type Safety: Safe code written in TypeScript
  • Error Handling: Robust handling of network errors and API failures

🛠 Tech Stack

Frontend

  • Next.js 14 - React framework
  • React 18 - UI library
  • TypeScript - Type safety

Blockchain

  • Solana - Main blockchain
  • Solana Wallet Adapter - Wallet integration
  • Irys SDK - Distributed storage access

Utilities

  • JSZip - ZIP file processing
  • CSS Modules - Styling

📁 Project Structure

GitHirys/
├── components/           # React components
│   ├── ConnectWallet.tsx # Wallet connection interface
│   ├── RepoList.tsx      # Repository list display
│   └── RepoDetail.tsx    # Repository detail information
├── lib/                 # Core libraries
│   └── irys.ts          # Irys client configuration
├── pages/               # Next.js routing
│   ├── _app.tsx         # App root (wallet provider setup)
│   ├── index.tsx        # Main page
│   └── [repo].tsx       # Dynamic repository page
├── styles/              # Global styles
│   └── globals.css      # CSS style definitions
└── public/              # Static files

🎯 How to Use

Step 1: Connect Wallet

  1. Access the application
  2. Click "Connect Solana Wallet" button
  3. Select desired wallet from wallet modal (Phantom, Solflare, etc.)
  4. Approve connection in wallet

Step 2: Explore Repositories

  • Repository search starts automatically after wallet connection
  • Only displays repositories uploaded to Irys with that wallet
  • Shows clear guidance message when no repositories exist

Step 3: View Repository Details

  1. Click repository name
  2. Check CID and file list
  3. Copy clone command for use

📊 Current Status

✅ Completed

  • Solana wallet integration complete
  • Irys SDK integration complete
  • Basic UI/UX implementation complete
  • Error handling and logging complete

🚧 In Development

  • Complete Irys API implementation
  • Repository upload functionality
  • Advanced search filters

🔮 Planned Features

  • CLI tool similar to Git commands
  • Branch and commit history
  • Collaboration features

🐛 Known Limitations

  1. Repository Search: Currently supports only basic search
  2. Network: Only mainnet supported (devnet planned)
  3. File Types: Primarily ZIP file support

🔍 Troubleshooting

When Wallet Connection Fails

  • Check if Solana wallet (Phantom, etc.) is installed
  • Ensure wallet extension is activated in browser
  • Check error messages in browser console (F12)

When Repositories Don't Display

  • Check if repositories were actually uploaded to Irys with that wallet
  • Verify network settings (currently only mainnet supported)
  • Check API call status in browser console

Build Errors

# Reinstall dependencies
rm -rf node_modules package-lock.json
npm install

# Type check
npm run lint

📦 Build and Deploy

Development Environment

npm run dev          # Start development server
npm run lint         # Code inspection

Production Build

npm run build        # Production build
npm start           # Run production server

🤝 Contributing

  1. Fork the repository
  2. Create feature branch: git checkout -b feature/amazing-feature
  3. Commit changes: git commit -m 'Add amazing feature'
  4. Push branch: git push origin feature/amazing-feature
  5. Create Pull Request

📄 License

This project is distributed under the MIT License.

🌐 Related Links


asdzzzzzz123132