Skip to content

shayanshahDeveloper/GITGHOST

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

31 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Version React Node.js Tailwind GitHub API License

GitGhost Banner


What is GitGhost?

GitGhost is a local-first tool that bridges your machine and your GitHub repositories. It automates staging, committing, and pushing to any repo you own — running silently in the background while you focus on real work.

  • Select a target repository from your account
  • Configure commit frequency with simple sliders
  • Start the auto-commit pipeline or trigger manual pushes
  • Monitor everything through a real-time console

Features

Feature Description
Live Console Real-time pipeline log showing every commit, push, and error
Fine-grained Control Payload size and interval sliders with second or minute precision
Repository Browser Card view of all connected repos with visibility, language, and branch info
Activity Analytics Track total commits, pipeline status, and recent activity
Schedule Presets One-click presets for light, moderate, or heavy commit schedules
Built-in Guide Step-by-step PAT setup instructions with annotated screenshots

Tech Stack

  • Frontend: React + Vite + Tailwind CSS
  • Backend: Node.js (Express) + Python helper script
  • Auth: GitHub OAuth + Personal Access Tokens (classic)

Getting Started

Prerequisites

  • Node.js (v18+)
  • Python 3 (v3.9+)
  • Git
  • A GitHub account

1. Clone the repository

git clone https://github.com/shayanshahDeveloper/GITGHOST
cd GITGHOST

2. Setup the backend

cd backend
npm install
pip install -r requirements.txt

Create a .env file in the backend/ directory:

GITHUB_CLIENT_ID=your_client_id
GITHUB_CLIENT_SECRET=your_client_secret
GITHUB_REDIRECT_URI=http://localhost:5173

Start the backend server:

npm start

The backend will be running at http://localhost:8000.

3. Setup the frontend

cd frontend
npm install
npm run dev

The app will be available at http://localhost:5173.

4. Generate a Personal Access Token

  1. Go to GitHub → Settings → Developer Settings
  2. Click Personal access tokensTokens (classic)
  3. Click Generate new token (classic)
  4. Give it a name, select the repo scope
  5. Copy the token and paste it into the GitGhost login screen

Project Structure

GITGHOST/
├── backend/              # Node.js Express server
│   ├── server.js         # Main API server
│   ├── git_sync.py       # Python helper for local git operations
│   ├── package.json      # Node.js dependencies
│   ├── requirements.txt  # Python dependencies
│   └── .env              # Environment variables (not committed)
├── frontend/             # React + Vite app
│   ├── src/
│   │   ├── assets/       # Logo, step screenshots
│   │   ├── components/   # Navbar, Footer
│   │   ├── pages/        # Landing, StaticPages
│   │   ├── App.jsx       # Main app with dashboard
│   │   └── index.css     # Global styles
│   └── index.html
├── .gitignore
└── README.md

Screenshots

Dashboard View   Repositories View

Schedule View   Analytics View

Landing Page   Login Page

How It Works   Mobile View

License

This project is licensed under the MIT License - see the LICENSE file for details.

GitGhost is not affiliated with, sponsored by, or endorsed by GitHub, Inc. or Microsoft.


Built with purpose. No fluff.

About

GitGhost: A high-performance, automated commit engine for background repository synchronization. Features a real-time console pipeline, fine-grained schedule control, and a sleek modern dashboard built with React and Node.js.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors