Skip to content

The local runner to boot and sync your project to pronghorn.red

Notifications You must be signed in to change notification settings

pronghorn-red/pronghorn-runner

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Pronghorn Runner - dev-deleteme-5bb755fb-service-lqw6

This package provides bidirectional real-time synchronization with Pronghorn.

🚀 Installation Options

Option 1: Download Full Package (this ZIP)

# Extract ZIP, then:
npm install
npm start

Option 2: Git Clone (Recommended for updates)

git clone https://github.com/pronghorn-red/pronghorn-runner.git
cd pronghorn-runner
# Download your .run from Pronghorn and place it here
npm install
npm start

⚙️ Configuration

All configuration is in the .run file (same format as .env, different name to avoid conflicts). Key settings:

Runtime Configuration

PROJECT_TYPE=vue_vite   # vue_vite, react_vite, node, python, go, ruby, rust, elixir, docker
RUN_COMMAND=npm run dev
BUILD_COMMAND=npm run build
INSTALL_COMMAND=npm install

Sync Settings

Variable Default Description
REBUILD_ON_STAGING true Sync when files are staged
REBUILD_ON_FILES true Sync when files are committed
PUSH_LOCAL_CHANGES true Push local edits back to cloud
SYNC_PROJECT_DATA false Export requirements, canvas, artifacts to ./project
PROJECT_SYNC_FOLDER ./project Folder for project data exports

Multi-Runtime Support

Type Runtime Install Command Run Command
vue_vite Node.js npm install npm run dev
react_vite Node.js npm install npm run dev
node Node.js npm install node index.js
python Python 3 pip install -r requirements.txt python main.py
go Go 1.18+ go mod download ./app
ruby Ruby bundle install bundle exec ruby app.rb
rust Rust - cargo run --release
elixir Elixir mix deps.get mix phx.server
docker Docker - docker-compose up

📁 How It Works

Cloud → Local (Pull)

  1. Downloads all files from Pronghorn to ./app/
  2. Listens for real-time changes
  3. Updates files when changes detected
  4. Hot-reloads or restarts server as needed

Local → Cloud (Push)

  1. Watches ./app/ for file changes
  2. Automatically pushes edits to Pronghorn staging
  3. Binary files are skipped

.runignore (Ignore File Sync)

Create a .runignore file to exclude paths from sync (same syntax as .gitignore):

# Example .runignore
background/logs/
*.log
.cache/
temp/

This prevents files matching these patterns from:

  • Being synced FROM cloud TO local
  • Being pushed FROM local TO cloud
  • Causing continuous sync loops (e.g., log files)

Project Data Export (Enabled by Default)

When SYNC_PROJECT_DATA=true:

  1. Exports project settings to ./project/settings/ folder
  2. Exports requirements to ./project/requirements/ folder
  3. Exports canvas nodes/edges to ./project/canvas/ folder
  4. Exports artifacts to ./project/artifacts/ folder
  5. Exports specifications to ./project/specifications/ folder
  6. Exports chat sessions to ./project/chats/ folder
  7. Exports repositories to ./project/repositories/ folder
  8. Exports databases to ./project/databases/ folder
  9. Exports deployments to ./project/deployments/ folder
  10. Real-time sync: updates when project data changes in Pronghorn

📊 Project Details

Property Value
Project E2E Testing
Environment dev
Project Type node
Run Command node index.js
Repository https://github.com/pronghorn-cloud/deleteme-5bb755fb

🔍 Troubleshooting

"Cannot find module"

Run npm install in this directory.

Files not syncing

  1. Check PRONGHORN_SHARE_TOKEN is set in .run
  2. Ensure PRONGHORN_REPO_ID is correct

Port already in use

Change APP_PORT in your .run file.


Generated by Pronghorn.RED - Real-Time Development Platform

About

The local runner to boot and sync your project to pronghorn.red

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published