Skip to content

Create machine readable markdown snapshots of your PHPStorm project.

Notifications You must be signed in to change notification settings

gbti-network/phpstorm-snapshots-for-ai

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

37 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Snapshots for AI

https://plugins.jetbrains.com/plugin/24889-snapshots-for-ai/

Overview

Snapshots for AI is a custom plugin for PHPStorm that generates machine-readable markdown snapshots of the files the user is currently working on. These generated markdown files can be fed to your favorite large language model (LLM) for further processing or analysis.

Video Introduction

https://www.youtube.com/watch?v=xiCwXUZVW6k

Features

  • Generate Markdown Snapshots: Create snapshots of your current files in markdown format.
  • Include Project Structure: Optionally include the entire project structure in the snapshot.
  • Selective File Inclusion: Choose specific files or include all files from the project in the snapshot.
  • Configurable Exclusions: Exclude specific file patterns from snapshots using the configuration file.

Installation

  1. Download and install the plugin from the JetBrains Plugin Repository.

  2. Open a project in PHPStorm.

  3. Find the plugin and activate the free trial:

    • Navigate to File > Settings > Plugins.
    • Search for "Snapshots for AI".
    • Click on the plugin and select Install.
    • After installation, click on Activate Free Trial.

Usage

  1. Creating a Snapshot:
    • Navigate to Tools > Create Snapshot or click the camera icon at the top right side of the main toolbar.
    • Enter your prompt, select the files to include, and click OK.
    • Snapshop will be generated and opened automatically.
    • Snapshots are stored inside the .snapshots directory at the root of your project application

Screenshots

image image image

Example Markdown Output

https://plugins.jetbrains.com/plugin/24889-snapshots-for-ai/example-markdown-output

Configuration

The config.json file in the .snapshots directory allows you to customize the plugin's behavior.

Default Configuration

{
  "default": {
    "default_prompt": "Enter your prompt here",
    "default_include_entire_project_structure": true,
    "default_include_all_files": false
  },
  "excluded_patterns": [
    ".git",
    ".gitignore",
    "gradlew",
    "gradlew.*",
    "node_modules",
    ".snapshots",
    ".idea",
    ".vscode",
    "gradle",
    "*.log",
    "*.tmp",
    "target",
    "dist",
    "build",
    ".DS_Store",
    "*.bak",
    "*.swp",
    "*.swo",
    "*.lock",
    "*.iml",
    "coverage",
    "*.min.js",
    "*.min.css",
    "__pycache__"
  ],
  "included_patterns": [
    "build.gradle",
    "settings.gradle",
    "gradle.properties",
    "pom.xml",
    "Makefile",
    "CMakeLists.txt",
    "package.json",
    "package-lock.json",
    "yarn.lock",
    "requirements.txt",
    "Pipfile",
    "Pipfile.lock",
    "Gemfile",
    "Gemfile.lock",
    "composer.json",
    "composer.lock",
    ".editorconfig",
    ".eslintrc.json",
    ".eslintrc.js",
    ".prettierrc",
    ".babelrc",
    ".env",
    ".dockerignore",
    ".gitattributes",
    ".stylelintrc",
    ".npmrc"
  ]
}

About

Create machine readable markdown snapshots of your PHPStorm project.

Resources

Stars

Watchers

Forks

Packages

No packages published