Metadata-Version: 2.4
Name: pro-inital
Version: 0.2.9
Summary: Initialize Git/GitHub backup, auto backup hooks, and releases for a project.
Author: Dawalishi
License-Expression: MIT
Keywords: git,github,backup,release,project-init
Classifier: Development Status :: 3 - Alpha
Classifier: Environment :: Console
Classifier: Intended Audience :: Developers
Classifier: Operating System :: Microsoft :: Windows
Classifier: Programming Language :: Python :: 3
Classifier: Topic :: Software Development :: Version Control :: Git
Requires-Python: >=3.9
Description-Content-Type: text/markdown
Requires-Dist: pystray>=0.19.5
Requires-Dist: Pillow>=10.0.0

# pro-inital

`pro-inital` creates Git/GitHub backups for projects on Windows. Version 0.2.6 uses one `pro-init-manager` process instead of one PowerShell watcher per project. Git operations run without creating flashing console windows, and Windows enforces one manager instance.

## Unified backup manager

The manager runs in the Windows notification area and is the only process that performs automatic backups or provides the local API. Its menu and project window can list registered projects and their status; create or register projects; start, stop, or run a backup; create or restore a GitHub cloud backup; manage its own logon startup; and migrate legacy watcher tasks.

Project state is stored locally at `%LOCALAPPDATA%\pro-inital\projects.json`. The loopback-only API is available while the manager runs at `http://127.0.0.1:8765/api`.

## Install

```powershell
python -m pip install --upgrade pro-inital
```

If `pro-init-manager` is not recognized, use the reliable module form immediately:

```powershell
python -m pro_inital.manager --show
```

To make the command available in future terminals, add Python's user Scripts folder to your user `PATH`, then open a new terminal:

```powershell
$scripts = python -m site --user-base
[Environment]::SetEnvironmentVariable('Path', [Environment]::GetEnvironmentVariable('Path', 'User') + ";$scripts\Scripts", 'User')
```

## First use and migration

```powershell
pro-init-manager --install-autostart
pro-init-manager --migrate-legacy-tasks
pro-init-manager --show
```

Run the migration only after the manager has started. It imports every legacy project into the manager first. Missing paths remain visible and can be relocated in the interface; the old watcher task is removed only when Windows permits it.

Right-click a project row to back up, control automatic backup, change its path, keep it local-only, or create its GitHub backup. Use **Administrator legacy cleanup** in the manager to stop and remove old PowerShell watcher tasks when normal Windows permissions do not allow their removal.

## Project API

- `GET /api/manager`, `GET /api/projects`
- `POST /api/projects` (pass `{"name":"name","path":"full path","create":true}` to create a directory)
- `POST /api/projects/{id}/auto-backup/start|stop`
- `POST /api/projects/{id}/backup`
- `POST /api/projects/{id}/github/create|restore`
- `POST /api/manager/autostart/enable|disable`

Git, and GitHub CLI `gh` when using cloud backup, are required.
