Skip to content

5ouma/reproxy

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Reproxy

🚚 Deliver any files in the GitHub repository

GitHub Release JSR JSR Score
GitHub code size in bytes GitHub repo size GitHub last commit GitHub commit activity
CI Release pre-commit codecov



πŸ’‘ Concepts

You can host your specific file on the GitHub repository. The usage I assume is for one-line scripts. (i.e. dotfiles or some install scripts, like curl https://example.com | sh)

If you access from browsers, you'll redirected to the GitHub page, not a raw file.

For the development or testing, you can access to the different branches or tags. To do this, simply add the ref name to the sub-directory. (i.e. curl https://example.com/ref | sh)



πŸ“Š Usage

πŸ’» On Local

  1. Copy the .env.tmpl to .env and edit as you prefer

    🌍 Environment Variables

  2. Follow the steps depending on the runtime

    • πŸ¦• Deno

      1. Run this command

        deno serve -A --env-file='.env' jsr:@5ouma/reproxy
    • 🍞 Bun

      1. Add this code to the index.ts

        export { default } from "@5ouma/reproxy";
      2. Run these commands

        bunx jsr add @5ouma/reproxy
        bun run index.ts
    • 🐒 Node.js

      1. Add this code to the index.js

        import { serve } from "@hono/node-server";
        import app from "@5ouma/reproxy";
        serve(app);
      2. Run these commands

        npm install @hono/node-server
        npx jsr add @5ouma/reproxy
        node run index.js

πŸ¦• Use Deno Deploy

  1. Create a new playground

  2. Replace the default code with this

    export { default } from "jsr:@5ouma/reproxy";
  3. Set the environment variables (Don't forget!!)

    🌍 Environment Variables


⛅️ Use Cloudflare Workers

  1. Set up the wrangler.toml

    🌍 Environment Variables

  2. Add this code to the index.ts

    export { default } from "@5ouma/reproxy";
  3. Deploy with these commands

    npx jsr add @5ouma/reproxy
    npx wrangler deploy index.ts



πŸ”¨ Development

  1. Clone this repository

    git clone https://github.com/5ouma/reproxy.git
  2. Copy the .env.tmpl to .env and edit as you prefer

    🌍 Environment Variables

  3. Run the server.ts via these task runners

    # For production
    deno task start
    # For development
    deno task dev



🌍 Environment Variables

Name Required
REPOSITORY_OWNER yes
REPOSITORY_NAME yes
REPOSITORY_PATH yes
GITHUB_TOKEN no

Note

You need to add GITHUB_TOKEN if you want to:

  • Access the file in the private repository
  • Avoid the API usage limit



πŸ†˜ Help



🎽 Contributing

I happily welcome your contributions! Before you contribute, I would recommend reading CONTRIBUTING.md for a better development experience.