Skip to content

Commit

Permalink
Merge pull request #19 from ar-io/fix-build
Browse files Browse the repository at this point in the history
fix: setup webpack
  • Loading branch information
vilenarios authored Jul 10, 2024
2 parents 79a3a1d + 17c7d9e commit c948d45
Show file tree
Hide file tree
Showing 18 changed files with 5,405 additions and 2,267 deletions.
42 changes: 42 additions & 0 deletions .github/workflows/build.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
# build extension and publish on merges to main

name: Build and Publish

on:
push:
branches:
- main

jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4

- name: Set Up node
uses: actions/setup-node@v4
with:
node-version-file: .nvmrc
cache: 'yarn'

- name: Install dependencies
run: yarn --immutable --immutable-cache

- name: Build
run: yarn build

- name: Zip
run: zip -r dist.zip dist

- name: Publish
if: github.ref == 'refs/heads/main'
uses: Klemensas/chrome-extension-upload-action
with:
refresh-token: ${{ secrets.REFRESH_TOKEN }}
client-id: ${{ secrets.CLIENT_ID }}
client-secret: ${{ secrets.CLIENT_SECRET }}
file-name: './dist.zip'
app-id: ${{ secrets.APP_ID }}
publish: true


4 changes: 0 additions & 4 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -32,10 +32,6 @@ temp/
*.sublime-project
*.sublime-workspace

# Ignore compiled JS files if you have a mixed TS/JS project
*.js
*.js.map

# Ignore TypeScript cache
*.tsbuildinfo

Expand Down
40 changes: 38 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,11 +1,14 @@
# What is it?

WayFinder (alpha) is a simple, open source, Google Chrome extension that intelligently routes users to optimal AR.IO gateways, ensuring streamlined access to the permaweb on Arweave.

# Who is it built for?
- Anyone who wants to browse the Permaweb. Since no wallet is needed, the user does not have to have ever touched tokens or even uploaded data.
- Developers who want to integrate ar:// protocol. Wayfinder shows how the ar:// protocol could be leveraged along with how to discover gateways on the ar.io network.

- Anyone who wants to browse the Permaweb. Since no wallet is needed, the user does not have to have ever touched tokens or even uploaded data.
- Developers who want to integrate ar:// protocol. Wayfinder shows how the ar:// protocol could be leveraged along with how to discover gateways on the ar.io network.

# MVP Features

- ar:// routing in the browser search bar and within pages that use ar:// hyperlinks, images, video, audio and embedded iframes, objects
- Automatically routes ArNS names and Arweave Transaction IDs to an available gateway.
- DNS TXT Record Redirection: Uses DNS TXT records to link Arweave transaction IDs with domains, thus offering a gasless, secure, and user-friendly method to navigate the permaweb with familiar URLs.
Expand All @@ -19,4 +22,37 @@ WayFinder (alpha) is a simple, open source, Google Chrome extension that intelli
- Open Source: The community can verify the code and contribute to the extension’s success.

# Want to learn more?

Join our discord for more information about WayFinder or how to contribute. https://discord.gg/zAZ8p9ARqC

## Developers

### Requirements

- `node` - v18+
- `yarn` - v1.4

### Dependencies

Dependencies should be installed using [Yarn]

```bash
yarn
```

### Build

The extension uses [Webpack] to bundle extension files into minimized javascript.

```bash
yarn build
```

### Loading into Chrome

To load the bundled app as an extension in Chrome:

1. Run `yarn build` to create a fresh `dist` directory
1. Navigate to `Manage Extensions`
1. Click `Load unpacked`
1. Select the `dist` directory and hit `Load`
24 changes: 12 additions & 12 deletions ar.io wayfinder.code-workspace
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
{
"folders": [
{
"path": "."
}
],
"settings": {
"eslint.nodePath": ".yarn/sdks",
"eslint.packageManager": "yarn",
"prettier.prettierPath": ".yarn/sdks/prettier/index.js",
"typescript.tsdk": ".yarn/sdks/typescript/lib",
"typescript.enablePromptUseWorkspaceTsdk": true
"folders": [
{
"path": ".",
},
],
"settings": {
"eslint.nodePath": ".yarn/sdks",
"eslint.packageManager": "yarn",
"prettier.prettierPath": ".yarn/sdks/prettier/index.js",
"typescript.tsdk": ".yarn/sdks/typescript/lib",
"typescript.enablePromptUseWorkspaceTsdk": true,
},
}
}
Loading

0 comments on commit c948d45

Please sign in to comment.