Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
node_modules
server.log
repositories.json
.env
1 change: 0 additions & 1 deletion Dashboard.tsx

This file was deleted.

5 changes: 0 additions & 5 deletions ELECTRON_GUIDE.md

This file was deleted.

49 changes: 36 additions & 13 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,20 +1,43 @@
<div align="center">
<img width="1200" height="475" alt="GHBanner" src="https://github.com/user-attachments/assets/0aa67016-6eaf-458a-adb2-6e31a0763ed6" />
</div>
# Git Auto Pull UI

# Run and deploy your AI Studio app
A simple web UI to manage and automatically pull updates for your Git repositories.

This contains everything you need to run your app locally.
## Setup

View your app in AI Studio: https://ai.studio/apps/drive/1NNtM1N_9cpRVQ7KoDZrJoSs90I9ZMeCA
1. **Install dependencies:**
```bash
npm install
```

## Run Locally
2. **Create a `.env` file** in the root of the project and add a webhook secret:
```
WEBHOOK_SECRET=your-super-secret-token
```

**Prerequisites:** Node.js
3. **Start the server:**
```bash
npm start
```

The application will be running at `http://localhost:3000`.

1. Install dependencies:
`npm install`
2. Set the `GEMINI_API_KEY` in [.env.local](.env.local) to your Gemini API key
3. Run the app:
`npm run dev`
## Testing Webhooks with ngrok

To receive webhooks from services like GitHub on your local machine, you need a way to expose your local server to the internet. **ngrok** is a great tool for this.

1. **Download and install ngrok** from [ngrok.com](https://ngrok.com/download).

2. With your local server running (`npm start`), open a new terminal and start ngrok to create a public tunnel to your local port 3000:
```bash
ngrok http 3000
```

3. Ngrok will give you a public "Forwarding" URL (it will look something like `https://<random-string>.ngrok.io`).

4. Go to your repository's settings on GitHub, navigate to **Webhooks**, and click **Add webhook**.
* **Payload URL:** Paste the ngrok URL and add the `/api/webhook` path. For example: `https://<random-string>.ngrok.io/api/webhook`.
* **Content type:** Set this to `application/json`.
* **Secret:** Enter the same secret you defined in your `.env` file for `WEBHOOK_SECRET`.
* **Which events would you like to trigger this webhook?** Select "Just the push event."

5. Click **Add webhook**. Now, whenever you push a change to your repository, GitHub will send a `push` event to your local server via ngrok, and the application will automatically pull the changes.
1 change: 0 additions & 1 deletion Settings.tsx

This file was deleted.

Loading