=== TekMedia ===
Contributors: tekzen, tarikulalways
Tags: media, media library, folders, media management, unused media
Requires at least: 6.4
Tested up to: 7.1
Requires PHP: 8.1
Stable tag: 1.0.0
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Organise your media library into folders, find files you no longer use, and delete safely with a trash you can undo.

== Description ==

TekMedia adds the organisation and cleanup tools the WordPress media library is missing, without asking you to learn a second interface. It looks and behaves like wp-admin, because it is wp-admin.

**Organise**

* Unlimited nested folders with drag-and-drop reordering
* Search across your whole library or inside one folder
* Select many files at once to move or delete them
* Replace a file while keeping its URL and attachment ID, so every post using it updates automatically

**Clean up safely**

* Scan for files that no post, page, featured image or widget references
* Nothing is ever deleted without a confirmation that states the consequence in plain numbers
* A recoverable trash: trashed files keep working on your site until you empty it

== Frequently Asked Questions ==

= Does the unused-media scan read page-builder layouts? =

No. The free scan reads WordPress post content, featured images and widgets. Files used only inside Elementor, Divi, WPBakery, ACF or Beaver Builder may be flagged as unused, so check those layouts before deleting. Page-builder-aware scanning is a Pro feature.

= Are my files deleted when I move them to the trash? =

No. Moving a file to the TekMedia trash hides it from your library but leaves the file itself untouched, so any post using it keeps working. Files are only removed permanently when you empty the trash, or when the retention period you set in Settings expires.

= What happens to my folders if I deactivate the plugin? =

Nothing. Deactivating removes no data. Folder structure, trash contents and settings are all preserved, and only removed on uninstall if you have opted in under Settings.

== Source Code ==

The complete human-readable source code for this plugin, together with every build tool used to produce it, is publicly available at:

https://github.com/tarikulalways/tekmedia

The compiled bundle shipped as `assets/build/index.js` and `assets/build/index.css` is generated from the JavaScript and stylesheet sources in `assets/src/`, which are present in that repository. The build uses webpack through @wordpress/scripts, with Tailwind CSS and PostCSS.

To regenerate the compiled assets from a checkout:

1. `npm install`
2. `npm run build`

`npm run start` rebuilds on change while developing. The build configuration lives in `webpack.config.js`, `tailwind.config.js` and `postcss.config.js` in the repository root.

No Composer packages are required at run time. `composer install` installs the PHP coding standards and test suite only, which is why `vendor/` is not part of the distributed plugin.

== Changelog ==

= 1.0.0 =
* Initial release.
* Unlimited nested folders with drag-and-drop nesting and reordering.
* Grid and list views with folder-scoped search, file-type filtering and sorting.
* Bulk selection that survives pagination, with move-to-folder and move-to-trash.
* Drag files from your desktop onto the library to upload straight into the open folder.
* Replace a file in place, keeping its URL and attachment ID so every post using it updates.
* Unused-media scan that runs in the background and explains why each file was flagged.
* Recoverable trash with per-file restore, restore all, and a retention period you choose.
* Settings for the default view, sort, page size, upload destination, scan batch size and trash retention.
* Full translation support and keyboard-accessible folder tree, tables and dialogs.
