Updated Readme and Setup guides - Removed unused imgs
@@ -1,22 +1,36 @@
|
|||||||
# GitHub Pulse
|
# GitHub Pulse
|
||||||
|
|
||||||
A Python-based GUI application for GitHub automation workflows.
|
A Python-based GUI application for GitHub automation workflows and AI assisted workflows.
|
||||||
|
|
||||||
|
> [!NOTE]
|
||||||
|
> This project is currently in active development. Features and functionality may change frequently. Bug reports and contributions are welcome and encouraged!
|
||||||
|
> Please be aware that some features may be incomplete or unstable.
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
## Pulse Workflow
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
## Project Structure
|
## Project Structure
|
||||||
|
|
||||||
```text
|
```text
|
||||||
github_automation/
|
github_pulse/
|
||||||
├── application/ # Main application directory
|
├── application/ # Main application directory
|
||||||
│ ├── app.py # Application entry point
|
│ ├── app.py # Application entry point
|
||||||
│ ├── requirements.txt # Python dependencies
|
│ ├── requirements.txt # Python dependencies
|
||||||
│ └── app_components/ # Application modules
|
│ └── app_components/ # Application modules
|
||||||
|
│ ├── __init__.py # Package initializer
|
||||||
│ ├── ai_manager.py # AI provider integration
|
│ ├── ai_manager.py # AI provider integration
|
||||||
│ ├── cache_manager.py # Caching functionality
|
│ ├── cache_manager.py # Caching functionality
|
||||||
│ ├── config_manager.py # Configuration management
|
│ ├── config_manager.py # Configuration management
|
||||||
│ ├── github_api.py # GitHub API client
|
│ ├── github_api.py # GitHub API client
|
||||||
│ ├── main_gui.py # Main GUI interface
|
│ ├── main_gui.py # Main GUI interface
|
||||||
|
│ ├── processing_log_dialog.py # Processing log dialog
|
||||||
│ ├── settings_dialog.py # Settings dialog
|
│ ├── settings_dialog.py # Settings dialog
|
||||||
│ └── utils.py # Utility functions
|
│ ├── settings_manager.py # Settings management
|
||||||
|
│ ├── utils.py # Utility functions
|
||||||
|
│ └── workflow.py # Workflow processing
|
||||||
├── media/ # Images and assets
|
├── media/ # Images and assets
|
||||||
├── README.md # This file
|
├── README.md # This file
|
||||||
├── SETUP.md # Setup guide
|
├── SETUP.md # Setup guide
|
||||||
@@ -33,8 +47,8 @@ github_automation/
|
|||||||
|
|
||||||
1. **Clone the repository**
|
1. **Clone the repository**
|
||||||
```bash
|
```bash
|
||||||
git clone https://github.com/TySP-Dev/github_automation.git
|
git clone https://github.com/TySP-Dev/github_pulse.git
|
||||||
cd github_automation/application
|
cd github_pulse/application
|
||||||
```
|
```
|
||||||
|
|
||||||
2. **Create and activate virtual environment**
|
2. **Create and activate virtual environment**
|
||||||
@@ -67,18 +81,9 @@ See [SETUP.md](SETUP.md) for detailed setup instructions.
|
|||||||
|
|
||||||
## Contributing
|
## Contributing
|
||||||
|
|
||||||
This project welcomes contributions and suggestions. Most contributions require you to agree to a
|
This project welcomes contributions and suggestions. In order to contribute, please fork the repository and create a pull request.
|
||||||
Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us
|
|
||||||
the rights to use your contribution.
|
|
||||||
|
|
||||||
## License
|
## License
|
||||||
|
|
||||||
|
GNU General Public License v3.0.
|
||||||
See [LICENSE](LICENSE) file for details.
|
See [LICENSE](LICENSE) file for details.
|
||||||
|
|
||||||
## Trademarks
|
|
||||||
|
|
||||||
This project may contain trademarks or logos for projects, products, or services. Authorized use of Microsoft
|
|
||||||
trademarks or logos is subject to and must follow
|
|
||||||
[Microsoft's Trademark & Brand Guidelines](https://www.microsoft.com/legal/intellectualproperty/trademarks/usage/general).
|
|
||||||
Use of Microsoft trademarks or logos in modified versions of this project must not cause confusion or imply Microsoft sponsorship.
|
|
||||||
Any use of third-party trademarks or logos are subject to those third-party's policies.
|
|
||||||
|
|||||||
@@ -35,12 +35,6 @@ A Python-based GUI application for GitHub automation workflows.
|
|||||||
source venv/bin/activate
|
source venv/bin/activate
|
||||||
```
|
```
|
||||||
|
|
||||||
To deactivate the environment when done:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
deactivate
|
|
||||||
```
|
|
||||||
|
|
||||||
3. **Install Dependencies**
|
3. **Install Dependencies**
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
@@ -53,12 +47,18 @@ A Python-based GUI application for GitHub automation workflows.
|
|||||||
python app.py
|
python app.py
|
||||||
```
|
```
|
||||||
|
|
||||||
|
> [!NOTE]
|
||||||
|
> It is highly recommended to use a virtual environment to manage dependencies and avoid conflicts with other Python projects on your system.
|
||||||
|
> Ensure you activate the virtual environment each time you work on or start this application.
|
||||||
|
|
||||||
### Virtual Environment Management
|
### Virtual Environment Management
|
||||||
|
|
||||||
**Activating the environment** (when returning to the project):
|
**Activating the environment** (when returning to the project):
|
||||||
|
|
||||||
|
```bash
|
||||||
- Windows: `venv\Scripts\activate`
|
- Windows: `venv\Scripts\activate`
|
||||||
- macOS/Linux: `source venv/bin/activate`
|
- macOS/Linux: `source venv/bin/activate`
|
||||||
|
```
|
||||||
|
|
||||||
**Deactivating the environment** (when done working):
|
**Deactivating the environment** (when done working):
|
||||||
|
|
||||||
@@ -78,21 +78,25 @@ deactivate
|
|||||||
The project is organized as follows:
|
The project is organized as follows:
|
||||||
|
|
||||||
```text
|
```text
|
||||||
github_automation/
|
github_pulse/
|
||||||
├── application/ # Main application directory
|
├── application/ # Main application directory
|
||||||
│ ├── app.py # Application entry point
|
│ ├── app.py # Application entry point
|
||||||
│ ├── requirements.txt # Python dependencies
|
│ ├── requirements.txt # Python dependencies
|
||||||
│ └── app_components/ # Application modules
|
│ └── app_components/ # Application modules
|
||||||
|
│ ├── __init__.py # Package initializer
|
||||||
│ ├── ai_manager.py # AI provider integration
|
│ ├── ai_manager.py # AI provider integration
|
||||||
│ ├── cache_manager.py # Caching functionality
|
│ ├── cache_manager.py # Caching functionality
|
||||||
│ ├── config_manager.py # Configuration management
|
│ ├── config_manager.py # Configuration management
|
||||||
│ ├── github_api.py # GitHub API client
|
│ ├── github_api.py # GitHub API client
|
||||||
│ ├── main_gui.py # Main GUI interface
|
│ ├── main_gui.py # Main GUI interface
|
||||||
|
│ ├── processing_log_dialog.py # Processing log dialog
|
||||||
│ ├── settings_dialog.py # Settings dialog
|
│ ├── settings_dialog.py # Settings dialog
|
||||||
│ └── utils.py # Utility functions
|
│ ├── settings_manager.py # Settings management
|
||||||
|
│ ├── utils.py # Utility functions
|
||||||
|
│ └── workflow.py # Workflow processing
|
||||||
├── media/ # Images and assets
|
├── media/ # Images and assets
|
||||||
├── README.md # Project overview
|
├── README.md # Readme file
|
||||||
├── SETUP.md # This setup guide
|
├── SETUP.md # This file
|
||||||
└── LICENSE # License information
|
└── LICENSE # License information
|
||||||
```
|
```
|
||||||
|
|
||||||
@@ -122,6 +126,9 @@ github_automation/
|
|||||||
- `claude` - Anthropic Claude API
|
- `claude` - Anthropic Claude API
|
||||||
- `chatgpt` - OpenAI ChatGPT API
|
- `chatgpt` - OpenAI ChatGPT API
|
||||||
- `github-copilot` - GitHub Models API
|
- `github-copilot` - GitHub Models API
|
||||||
|
- `ollama` - Ollama Local Models
|
||||||
|
- **Ollama Model**: Select model based on local availability
|
||||||
|
- **Ollama API Endpoint**: URL for Ollama AI server
|
||||||
- **API Keys**: Provide keys based on your chosen provider
|
- **API Keys**: Provide keys based on your chosen provider
|
||||||
|
|
||||||
### Configuration Tips
|
### Configuration Tips
|
||||||
@@ -129,15 +136,18 @@ github_automation/
|
|||||||
**Start Simple**: Configure only GitHub initially
|
**Start Simple**: Configure only GitHub initially
|
||||||
**Test Connection**: Use "Test Connection" button to verify settings
|
**Test Connection**: Use "Test Connection" button to verify settings
|
||||||
**AI Enhancement**: Add AI provider later for automated processing
|
**AI Enhancement**: Add AI provider later for automated processing
|
||||||
|
**Configuration File**: Settings are saved in `config.json` for persistence
|
||||||
|
|
||||||
## Security Best Practices
|
## Security Best Practices
|
||||||
|
|
||||||
### Token Security
|
### Token Security
|
||||||
|
|
||||||
- **Never commit** `.env` file to version control
|
- **Use PATs** instead of passwords
|
||||||
- **Rotate tokens** regularly (90 days recommended)
|
- **Rotate tokens** regularly (90 days recommended)
|
||||||
- **Minimum permissions**: Use least privilege principle
|
- **Minimum permissions**: Use least privilege principle
|
||||||
- **Secure storage**: Store tokens in secure password manager
|
- **Secure storage**: Store tokens in secure password manager
|
||||||
|
- **Avoid hardcoding**: Never hardcode tokens in source code
|
||||||
|
- **Secret management**: This project uses `keyring` for secure storage
|
||||||
|
|
||||||
### Repository Access
|
### Repository Access
|
||||||
|
|
||||||
|
|||||||
@@ -3,11 +3,7 @@ requests>=2.31.0
|
|||||||
keyring>=24.0.0 # Secure credential storage
|
keyring>=24.0.0 # Secure credential storage
|
||||||
|
|
||||||
# UI Framework
|
# UI Framework
|
||||||
flet>=0.23.0
|
flet>=0.28.0
|
||||||
|
|
||||||
# AI providers (optional - installed automatically when needed)
|
|
||||||
anthropic>=0.18.0 # Claude AI
|
|
||||||
openai>=1.12.0 # ChatGPT/GPT-4
|
|
||||||
|
|
||||||
# Git operations (required for AI functionality)
|
# Git operations (required for AI functionality)
|
||||||
GitPython>=3.1.40
|
GitPython>=3.1.40
|
||||||
|
|||||||
|
Before Width: | Height: | Size: 72 KiB |
|
Before Width: | Height: | Size: 77 KiB After Width: | Height: | Size: 128 KiB |
|
Before Width: | Height: | Size: 127 KiB |
|
Before Width: | Height: | Size: 114 KiB |
|
After Width: | Height: | Size: 91 KiB |
|
Before Width: | Height: | Size: 7.8 KiB |