Website profiles · Technology insights · Alternatives

organize.readthedocs.io

None

No paid content found
Visit website
Profile views 6 Outbound visits 1 Normal
organize Full homepage screenshot

At a glance

Category
Development
Language
English
Paid-content signal
No paid content foundObserved
Registered
2014
Hosting
CloudflareInferred
HTTPS certificate trusted
PassedObserved
Last updated

Website review

This review may include AI-generated content and is not individually verified. Domain, certificate and other facts come from the observed data on this page.

What is organize?

organize is a free, open-source command-line tool for automating file management. Instead of manually sorting, renaming, and moving files, you write rules in a configuration file, and organize applies them for you. It runs on macOS, Windows, and Linux, and works as a scriptable alternative to GUI apps like Hazel or File Juggler.

Its rules follow a simple structure: locations (where to look), filters (what to match), and actions (what to do). A minimal rule that finds PDFs in your Downloads folder looks like this:

rules:
  - name: "Find PDFs"
    locations:
      - ~/Downloads
    subfolders: true
    filters:
      - extension: pdf
    actions:
      - echo: "Found PDF!"

What people use it for

  • Sorting and tagging photos into folder structures based on EXIF data
  • Renaming PDF invoices based on their contents
  • Removing incomplete downloads or unused desktop files
  • Freeing disk space by finding and removing duplicates
  • Automating repetitive business file workflows

Key capabilities

  • Safe moving, renaming, and copying with conflict-resolution options
  • Fast duplicate detection
  • EXIF tag extraction and text extraction from PDF, DOCX, and other formats
  • A template engine, plus inline Python and shell commands for custom logic
  • A simulation mode so you can preview changes before touching any files

Who it suits — and the trade-off

organize fits developers, sysadmins, and anyone comfortable editing a config file who wants repeatable, version-controllable automation. The trade-off is the command line: there is no point-and-click interface, so casual users may find a GUI tool friendlier. In exchange, you get flexibility that GUI apps rarely match, such as chaining filters or embedding Python.

Getting started

You need Python 3.9 or newer, then install via pip (the package is named organize-tool):

pip install -U organize-tool

Run organize new to create a config, organize edit to modify it, and organize show --reveal if you have trouble locating the file. Full documentation is at organize.

How do I install and set up organize for the first time?

Install organize through Python’s package manager, then create and test a rule before letting it touch real files.

Install

You need Python 3.9 or newer. Install the tool with pip using the package name organize-tool:

pip install -U organize-tool

Then confirm it is available:

organize --help

Create your first rule

Generate a starter configuration, then open it in your editor:

organize new
organize edit

A minimal rule looks like this:

rules:
  - name: "Find PDFs"
    locations:
      - ~/Downloads
    subfolders: true
    filters:
      - extension: pdf
    actions:
      - echo: "Found PDF!"

This rule searches ~/Downloads, including subfolders, and prints a message for each PDF it finds. The echo action is harmless, so it is a good first test.

If the configuration is hard to read in your editor, the documentation suggests:

organize show --reveal

Test before acting

The key setup step is to simulate. Run the rule without executing actions so you can see what would happen:

organize run --dry-run

Once the matches look correct, replace the echo action with a real one, such as moving or renaming files. organize supports safe moving, renaming and copying with conflict-resolution options, so you can decide how collisions are handled rather than overwriting by accident.

A practical first workflow

A common beginner setup is sorting PDF invoices or cleaning up downloads. Start with one location and one filter, confirm the dry run, then add actions and more rules.

Useful first checks:

  • Confirm organize --help works after installation.
  • Keep the first rule limited to one folder.
  • Use echo or dry-run output before moving anything.
  • Add filters gradually rather than building a large rule at once.

For the full configuration reference, including locations, filters, actions and templates, see the official documentation at organize.

What rules can I create to automatically sort and rename my files?

organize is a command-line, open-source file automation tool for writing rules that sort, rename, move, copy, tag, and clean up files automatically. You install it with pip install -U organize-tool (Python 3.9+), then run organize new and organize edit to create and edit your configuration. Rules are written in YAML and can be simulated before anything touches your files. It works on macOS, Windows, and Linux.

A useful way to think about each rule is in four parts:

  • Locations — which folders to look in, and whether to include subfolders.
  • Filters — which files to match, such as by extension, name pattern, EXIF data, or text extracted from PDFs and DOCX files.
  • Actions — what to do with matches: move, rename, copy, delete, tag, or run a shell/Python command.
  • Conflict handling — what happens when a target name already exists, so you do not silently overwrite files.

Example rules worth adapting

Sort PDF invoices by content or filename

rules:
  - name: "Sort PDF invoices"
    locations:
      - ~/Downloads
    subfolders: true
    filters:
      - extension: pdf
    actions:
      - move: ~/Documents/Invoices/

To rename them consistently, add a rename action using a template that pulls from the original filename or extracted text. The exact template syntax is in the full documentation.

Sort pictures by EXIF date

Match image extensions, then move or rename into folders built from EXIF date fields. This is one of the tool's listed use cases: sorting and tagging pictures into folder structures based on EXIF data.

Remove incomplete downloads

Filter for partial-download extensions such as .part or .crdownload in ~/Downloads, then delete. Run it in simulation mode first to see what would be removed.

Find and remove duplicates

Use the built-in fast duplicate detection as a filter, then decide whether to delete, move, or keep the newest copy. Duplicate removal is destructive, so simulate first and consider moving duplicates to a quarantine folder instead of deleting.

Clean up the desktop

Match files older than a chosen age in ~/Desktop and move them into an archive folder, or delete unused ones.

Automate business processes

Chain filters and actions for recurring workflows, for example renaming scanned documents based on extracted text and filing them by client or date.

Deciding which rule to write first

Start with the folder that causes you the most friction. If you cannot find downloads, write a cleanup rule. If invoices pile up, write a rename-and-file rule. Keep each rule narrow: one location, one clear filter, one action. Run organize in simulation mode, check the proposed changes, then run it for real.

The key trade-off is flexibility versus safety. Inline Python and shell commands give maximum control, but they also bypass the tool's built-in conflict resolution, so use native actions where possible and reserve scripts for cases the built-in actions cannot handle.

How can organize help me clean up my Downloads or Desktop folder?

organize is a command-line, open-source file management automation tool. You write rules once in a configuration file, then run them to sort, rename, move, deduplicate or delete files automatically. It is aimed at people who are comfortable editing a text config and running shell commands, and it works on macOS, Windows and Linux.

For a messy Downloads or Desktop folder, the practical workflow is:

  1. Install it with pip (the package name is organize-tool, Python 3.9+).
  2. Run organize new to create a starter config, then organize edit to change it.
  3. Write rules with three parts: locations (where to look), filters (which files match) and actions (what to do).
  4. Simulate before committing: run organize sim first, so you can see what would happen without touching your files.

A minimal rule from the documentation looks like this:

rules:
  - name: "Find PDFs"
    locations:
      - ~/Downloads
    subfolders: true
    filters:
      - extension: pdf
    actions:
      - echo: "Found PDF!"

The echo action is just a test. In real use you would swap it for a move, rename, copy or delete action.

What it can actually do for these folders

  • Sort by type or content: match on extension, but also on text extracted from PDF, DOCX and similar files, so invoices can be renamed or filed by what is inside them.
  • Rename systematically: use the template engine to build names from dates, EXIF data or extracted text.
  • Sort photos by EXIF: group images into folder structures based on when and how they were taken.
  • Clean up junk: remove incomplete downloads, delete unused desktop files, or free space by finding duplicates.
  • Handle conflicts safely: moving, renaming and copying come with conflict-resolution options, and everything can be simulated first.
  • Go beyond built-ins: inline Python and shell commands can act as filters or actions when the standard ones are not enough.

Who it suits, and the trade-off

This is a good fit if you want repeatable, version-controllable cleanup and are willing to learn a small rule syntax. If you would rather click through a graphical app, organize will feel indirect; it is explicitly a command-line alternative to GUI tools. The payoff is that a rule you get right keeps working, and you can preview each change instead of trusting it blindly.

A sensible next step

Start with one narrow rule for ~/Downloads — for example, move only PDFs older than a certain age into a ~/Documents/Invoices folder — run organize sim, check the output, then run it for real. Add rules one at a time rather than writing a large config at once.

For background on the project and its documentation, see organize documentation. If you prefer a graphical tool instead, Hazel is a well-known macOS option and File Juggler a Windows one; both are commercial, unlike organize.

Can I test my file organization rules before applying them to my files?

Yes. organize is built around a dry-run-first workflow: rules can be simulated before any file is moved, renamed, copied or deleted, so you can see what would happen and adjust the configuration first.

H3 How to test safely

  • Write your rule, then run a simulation instead of the real run. The documentation highlights that "everything can be simulated before touching your files."
  • Start with a narrow locations entry (for example a single test folder) rather than your whole home directory.
  • Use an echo action to print what matched, as in the first-rule example, so you can confirm filters work before adding move or rename actions.
  • Keep subfolders off until the top-level behavior looks right, then enable it.
  • When the simulated output matches your expectations, run the real command and check a few files by hand.

H3 A practical scenario Suppose you want to rename PDF invoices in ~/Downloads based on their content. First create a rule with an extension: pdf filter and an echo action, then simulate. If the output lists the right files, add the rename action and simulate again. Only after that do you let it modify the files. This staged approach is the main reason organize suits cautious users who don't want a script to rearrange their disk on the first try.

H3 Where to go next The official documentation is at organize; the "Example rules", "Filters" and "Actions" sections are the fastest way to see what a testable rule looks like. If you prefer a graphical tool, Hazel and File Juggler are the macOS and Windows counterparts mentioned in the docs, though their testing workflows differ.

How does organize compare to Hazel or File Juggler for automating file management?

organize is a command-line, open-source tool that positions itself as an alternative to Hazel (macOS) and File Juggler (Windows). The core difference is the interface and platform model, not the basic idea: all three watch for files and apply rules to sort, rename, or move them. organize does it through a YAML configuration file and shell commands, while Hazel and File Juggler offer graphical rule builders on their respective platforms.

H3 How the approaches differ

Aspect organize Hazel (macOS) File Juggler (Windows)
Interface Command line + config file GUI rule builder GUI rule builder
Platform macOS, Windows, Linux macOS only Windows only
Cost model Free and open source Commercial Commercial
Extensibility Inline Python and shell commands Built-in actions, AppleScript Built-in actions

The practical trade-off: graphical tools are faster to start with if you want to click together a rule and see it immediately. organize asks you to write rules, but that makes complex logic easier to version, copy between machines, and extend with scripts. Its documentation lists use cases such as sorting pictures by EXIF data, renaming PDF invoices based on file content, clearing incomplete downloads, and removing duplicates.

H3 Who should pick which

  • Choose organize if you work across Linux and other systems, want rules stored as text, or need Python/shell hooks.
  • Choose Hazel if you are on macOS and prefer a visual rule editor with tight system integration.
  • Choose File Juggler if you are on Windows and want a GUI without scripting.

A useful next step is to test one concrete scenario. For example, write a rule that finds PDFs in ~/Downloads and echoes their names, run it in simulation mode, and confirm the matches before letting it move anything. organize documents a --simulate style dry run, which is the right way to build confidence before automating real folders. If you want the official project details, see organize documentation.

Related questions

More questions →
Is organize safe to use and which platforms does it support?

organize is designed to be safe for file management because it supports simulating every rule before any file is touched, and it offers safe moving, renaming, and copying with conflict resolution options. It runs on macOS, Windows, and Linux, and it is free and open-source software. If you want to automate sorting, renaming, or cleaning up files but are worried about irreversible mistakes, the simulation step is the main feature that makes it reasonable to try on real folders.

What makes organize safe to use

The documentation highlights several safety-related features:

  • Simulation before execution. Everything can be simulated before touching your files, so you can preview what a rule would do and catch mistakes first.
  • Safe moving, renaming, and copying. These operations include conflict resolution options, so you can control what happens when a target name already exists instead of silently overwriting.
  • Conflict resolution options. Rather than assuming a default behavior, organize lets you configure how conflicts are handled.
  • Open source. The tool is free and open-source software, so its behavior can be inspected rather than taken on trust.

A practical workflow that uses these safeguards:

  1. Write or edit a rule.
  2. Run it in simulation mode to see the proposed changes.
  3. Review the output for anything unexpected.
  4. Only then run it for real.

This matters most for tasks like removing incomplete downloads, clearing unused files from ~/Desktop, or deleting duplicates, where a wrong filter could match more than you intended.

Which platforms organize supports

organize works on:

  • macOS
  • Windows
  • Linux

The only stated requirement is Python 3.9 or newer. Installation is done via pip, and the package name is organize-tool:

pip install -U organize-tool

The same command updates to the newest version. After installing, run organize --help to confirm the installation succeeded.

What organize can be used for

The documentation lists common uses:

  • Sorting and tagging pictures into folder structures based on EXIF data
  • Sorting and renaming PDF invoices based on file content
  • Removing incomplete downloads from ~/Downloads
  • Cleaning up ~/Desktop from unused files
  • Freeing disk space by removing duplicates
  • Automating various business processes

Supporting features include fast duplicate file detection, EXIF tag extraction, categorization via text extracted from PDF, DOCX, and other formats, a template engine, and inline Python and shell commands as filters and actions.

A first rule to test safety yourself

After installing, run organize new and then organize edit to open the configuration. A minimal rule looks like this:

rules:
  - name: "Find PDFs"
    locations:
      - ~/Downloads
    subfolders: true
    filters:
      - extension: pdf
    actions:
      - echo: "Found PDF!"

This rule only echoes a message, so it is a safe way to confirm that your locations and filters match what you expect before adding actions that move or rename files. If you have trouble editing the configuration, the documentation mentions organize show --reveal as a way to locate it.

Choosing whether to use it

organize is a reasonable choice if you want a command-line, open-source alternative to tools like Hazel (macOS) or File Juggler (Windows), and you value being able to preview changes before they happen. It is less suited if you need a graphical interface, since it is a command-line tool, or if you cannot install Python 3.9+ and pip on the machine. For important files, start with simulation and echo-only actions, verify the matches, and add destructive actions only once the rule behaves as intended.

What Are Open-Source UI Element Libraries and How Do They Differ From UI Frameworks?

An open-source UI element library is a collection of individual, ready-made interface pieces—buttons, cards, inputs, toggles, loaders—that you copy into your own project and adapt. A UI framework, by contrast, is a structured system of components, conventions, and often a theming layer that governs how your whole interface is built. The practical difference: an element library gives you a snippet; a framework gives you a way of working. If you need a polished button in ten minutes, reach for the element library. If you're building a 40-screen product with a team, you probably want the framework.

What "open-source UI element library" actually means

The term gets used loosely, so it helps to separate the parts:

  • Open-source: the code is publicly available, and the license tells you what you may do with it—copy, modify, redistribute, or use commercially.
  • UI element: a single, self-contained piece of interface, usually small enough to read in one sitting. A button with hover states, a pricing card, a search field.
  • Library: a browsable, searchable collection of those elements, typically contributed by many different people.

On a site like Uiverse, elements are shared by a community and written in plain CSS or Tailwind. You find one you like, copy the markup and styles, paste them into your project, and adjust colors, spacing, and text to fit. There's no package to install and no build step required—which is exactly the appeal, and also the source of most of the confusion.

Element library vs. UI framework: the core differences

Dimension Open-source UI element library UI framework / design system
Unit of reuse A single snippet you copy A component you import or call
Installation None; paste into your code Package install, config, sometimes a provider
Consistency Depends on you; each element may look different Enforced by shared tokens and APIs
Theming Manual edits per element Central theme/config file
Updates You own the copy; no upstream updates Version bumps bring fixes and changes
Accessibility Varies per contributor; must be checked Usually tested and documented
Best for Prototypes, landing pages, small sites, one-off needs Multi-page apps, teams, long-lived products
Learning curve Low—read the CSS Higher—learn the API and conventions

The table isn't a verdict. It's a map of trade-offs. Element libraries win on speed and freedom; frameworks win on consistency and maintenance.

Licensing and attribution: what to check before you paste

This is where people get into trouble, and it's worth slowing down for.

  1. Find the license. Every element or collection should state one. Common open-source licenses include MIT, Apache-2.0, and BSD. Some projects use copyleft licenses like GPL, which can impose obligations if you redistribute your code.
  2. Understand what the license permits. MIT and Apache-2.0 are permissive: you can typically use the code in commercial and closed-source projects. Copyleft licenses may require you to release derivative source under the same terms.
  3. Check attribution requirements. Permissive licenses usually require you to keep the copyright notice and license text somewhere in your project. That's a real obligation, not a formality.
  4. Look for per-element terms. On community sites, the site's overall terms and the individual contributor's stated wishes may differ. If a contributor asks for credit, honor it.
  5. When in doubt, ask or avoid. If a snippet has no license at all, you don't have clear permission to reuse it. Treat "no license" as "not open source," even if the code is publicly visible.

This article is general information, not legal advice. For commercial products with real exposure, have someone qualified review the licenses you're relying on.

How to use a community element in your project: a practical workflow

Here's a repeatable process that avoids most of the usual mess.

1. Start from a real need, not a browsing session

Decide what you need first—"a compact primary button with a loading state"—then search. Browsing aimlessly produces a pile of pretty snippets that don't fit together.

2. Copy the smallest version that works

Take the markup and the styles. Strip anything you don't need: demo wrappers, extra animations, decorative layers. Less code means fewer surprises.

3. Convert it to your conventions

If your project uses design tokens or CSS variables, replace hard-coded values:

/* Before: hard-coded */
.button { background: #4f46e5; border-radius: 8px; }

/* After: token-based */
.button { background: var(--color-primary); border-radius: var(--radius-md); }

This one step is what keeps a copied element from looking like a foreign object in your UI.

4. Check accessibility before you ship

Community elements vary widely here. Verify at minimum:

  • Keyboard focus is visible and the element is reachable by Tab.
  • Color contrast meets WCAG AA (4.5:1 for normal text).
  • Interactive elements use semantic HTML (<button>, not a clickable <div>).
  • Form inputs have associated labels.
  • Motion respects prefers-reduced-motion.

5. Test in context

Paste it into a real page with real content. Long labels, small screens, and dark mode break more copied elements than anything else.

6. Note where it came from

Keep a short comment or an internal credits file: source, license, date. Future you—and your legal reviewer—will be grateful.

Where element libraries genuinely shine

  • Prototypes and demos: you need something clickable today, not a design system.
  • Landing pages and marketing sites: a handful of distinctive elements, each custom.
  • Filling gaps: your framework lacks one specific component, and you don't want to build it from scratch.
  • Learning: reading well-made CSS is one of the fastest ways to improve.
  • Small projects: a personal site doesn't need a theming architecture.

Where they fall short

  • Consistency at scale: ten elements from ten contributors rarely look like one product.
  • Maintenance: you own every copy. When your design changes, you edit each one.
  • Accessibility debt: you inherit whatever the contributor did or didn't do.
  • No upstream fixes: a bug fixed in the original won't reach your copy.
  • Integration friction: different naming conventions, different units, different assumptions about resets.

When to choose which

Choose an element library when the scope is small, the timeline is short, or you need a few distinctive pieces rather than a whole system.

Choose a framework or design system when multiple people build multiple screens over months, when consistency is a product requirement, or when accessibility and theming need to be guaranteed rather than checked.

A hybrid works well for many teams: adopt a framework for the structural components—forms, navigation, layout—and borrow individual elements for the places where you want personality. Just route every borrowed element through the same token and accessibility checks, so it lands as part of your system rather than beside it.

The short version: open-source UI element libraries are a fast, flexible way to get good-looking interface pieces into a project. They are not a substitute for a design system, and the license and accessibility details are the part worth reading carefully.

What can organize be used for?

organize is a command-line, open-source file management automation tool. You can use it to sort, rename, copy, move, and clean up files based on rules you define, rather than doing the work by hand. It is a fit if you want repeatable, scriptable file organization on macOS, Windows, or Linux, and you are comfortable running commands in a shell. It is not a graphical app, so it is a poor fit if you need a point-and-click interface.

The documentation lists these common uses:

  • Sorting and tagging pictures into various folder structures based on EXIF data
  • Sorting and renaming PDF invoices based on file content
  • Removing incomplete downloads from ~/Downloads
  • Cleaning up ~/Desktop from unused files
  • Freeing up disk space by removing duplicates
  • Automating various business processes

How these tasks map to features

Each use case depends on a specific capability of the tool:

Task Feature it relies on
Sort photos by EXIF EXIF tag extraction
Rename invoices by content Text extraction from PDF, DOCX, and more
Remove incomplete downloads Filters on file properties
Clean desktop Location scanning plus filters and actions
Free disk space Fast duplicate file detection
Business process automation Template engine, inline Python and shell commands

What makes it flexible

Beyond the built-in filters and actions, organize supports a powerful template engine and lets you run inline Python and shell commands as filters and actions. That means a rule is not limited to the operations the tool ships with — you can express custom logic when a built-in filter does not cover your case.

A second practical feature is simulation: everything can be simulated before touching your files. You can preview what a rule would do before committing changes, which matters when a rule moves or deletes files.

Getting started

Only Python 3.9+ is required. Install via pip — note the package name is organize-tool:

pip install -U organize-tool

The same command updates to the newest version. Verify the install with:

organize --help

Create and edit your first rule:

organize new
organize edit

A minimal rule looks like this:

rules:
  - name: "Find PDFs"
    locations:
      - ~/Downloads
    subfolders: true
    filters:
      - extension: pdf
    actions:
      - echo: "Found PDF!"

If you have trouble editing the configuration, organize show --reveal can help locate it.

Version note

Version 3 is now available. According to the documentation, it should be much faster and fixes a lot of bugs, and it adds new actions, filters, and options. If you are migrating from an older version, a changelog and migration guide are provided. If you hit bugs or problems during migration, the project asks you to reach out.

When to choose something else

organize is a command-line tool, so it suits users who want automation they can version, script, and run repeatedly. If you prefer a GUI, the documentation positions organize as an open-source alternative to apps like Hazel (macOS) or File Juggler (Windows) — those are the graphical options to compare against if clicking through a window is a requirement. organize itself is free and open-source software.

What Are the Main Components of an organize Rule?

An organize rule is a YAML list entry built from four core parts: name, locations, filters, and actions. The locations block tells organize where to look, filters narrow that set down to the files you care about, and actions define what happens to each match. A rule only needs to be written once, then it runs the same way every time. This structure applies to organize v3, which the project describes as faster and with more actions, filters, and options than earlier versions.

The four components

name

A label for the rule. It appears in output and logs, so use something that identifies the job, such as "Find PDFs" or "Sort invoices". It does not affect which files are matched.

locations

The folders organize should scan. Each entry is a path, and ~ expands to your home directory:

locations:
  - ~/Downloads
  - ~/Desktop

Adding subfolders: true makes organize descend into nested folders instead of only reading the top level. Without it, files in subdirectories are ignored.

filters

Filters decide which files from the locations are kept. They combine, so a file must pass all of them. The documentation lists filters for extension, file content, and EXIF tags, among others. Examples:

  • extension: pdf — only PDF files.
  • Content-based filters — read text extracted from PDF, DOCX, and similar formats, useful for renaming invoices by what is inside them.
  • EXIF filters — read camera metadata, useful for sorting photos into folder structures.

actions

Actions run on every file that survives the filters. The docs mention moving, renaming, and copying with conflict-resolution options, plus inline Python and shell commands for cases the built-in actions do not cover. A minimal action just prints a message:

actions:
  - echo: "Found PDF!"

A complete rule

rules:
  - name: "Find PDFs"
    locations:
      - ~/Downloads
    subfolders: true
    filters:
      - extension: pdf
    actions:
      - echo: "Found PDF!"

Read top to bottom: scan ~/Downloads including subfolders, keep files ending in .pdf, then print Found PDF! for each one.

How the parts interact

Component Question it answers Effect if omitted
name What is this rule called? Rule is unlabeled in output
locations Where do I look? Nothing to scan
filters Which files do I want? All files in the locations are treated as matches
actions What do I do with them? Nothing happens to matched files

The order matters conceptually: locations produce a candidate set, filters shrink it, actions consume the result. A filter that matches nothing means the actions never run.

Editing and testing

Run organize new to create a configuration, then organize edit to open it. If editing is awkward, organize show --reveal shows the configuration file location. Because organize can simulate everything before touching your files, you can confirm a rule matches what you expect before letting its actions move or rename anything.

Common sticking points

  • Forgetting subfolders: true — files nested below the listed folder are silently skipped.
  • Stacking filters too tightly — each added filter removes more files; if a rule stops matching, remove filters one at a time to find the culprit.
  • Expecting actions to run on non-matches — actions only see files that passed every filter.
  • Assuming a rule is safe because it looks right — use the simulation step first, especially for move, rename, and copy actions with conflict resolution.
How to Install organize and Create Your First Rule

Install organize with pip install -U organize-tool on a machine running Python 3.9 or newer, then verify the install with organize --help. From there, run organize new to create a configuration and organize edit to add your first rule. The example below finds PDFs in your Downloads folder and prints a message for each one — a safe way to confirm the tool works before you let it move or rename anything.

Prerequisites

  • Python 3.9 or newer. Install it through your package manager or from python.org.
  • A shell. organize is a command line tool, so you'll run everything from a terminal.
  • No account or license needed. organize is free and open source software, and it works on macOS, Windows, and Linux.

Install organize

The package name on PyPI is organize-tool, not organize:

pip install -U organize-tool

The -U flag also updates an existing installation to the newest version, so the same command works for upgrades.

Verify the installation succeeded:

organize --help

If you see the help output, you're ready to write a rule. If the command isn't found, your Python scripts directory likely isn't on your PATH — check your pip installation notes for that platform.

Create your first rule

Run:

organize new

This creates a configuration file. Then open it for editing:

organize edit

Paste in this rule, which finds PDFs in your Downloads folder and echoes a message for each match:

rules:
  - name: "Find PDFs"
    locations:
      - ~/Downloads
    subfolders: true
    filters:
      - extension: pdf
    actions:
      - echo: "Found PDF!"

Each part does a specific job:

Key Purpose
name A label for the rule, shown in output and logs.
locations The folders organize looks in. ~/Downloads expands to your home Downloads folder.
subfolders When true, the rule also scans folders inside the location.
filters Conditions a file must meet. Here, only files with a .pdf extension match.
actions What happens to matching files. echo prints a message instead of touching the file.

If you have trouble editing the configuration, run organize show --reveal to find where the file lives on disk.

Verify before you act

The echo action is deliberately harmless: it proves your rule matches the files you expect without moving, renaming, or deleting anything. Run the rule and read the output. If the wrong files match, adjust the locations or filters and run it again.

organize is built around this idea — everything can be simulated before your files are touched. Once your rule matches exactly what you want, swap echo for a real action such as moving or renaming.

Where to go next

The same rule structure scales to the tasks organize is commonly used for: sorting and tagging pictures by EXIF data, renaming PDF invoices based on their content, clearing incomplete downloads from ~/Downloads, cleaning up ~/Desktop, and removing duplicate files to free disk space.

Beyond extension, you can filter by extracted text from PDF and DOCX files, and actions can include inline Python or shell commands for cases the built-in actions don't cover. The full documentation on Read the Docs covers configuration, rules, locations, filters, actions, and Docker usage.

A note on versions: v3 is the current release and is described as much faster with fewer bugs, plus new actions, filters, and options. If you're migrating from an older version, follow the migration guide and changelog rather than reusing an old configuration unchanged.

Website Overview

An established domain and managed infrastructure suggest continuity of operations and may support dependable delivery, although neither guarantees service quality. Several search or sharing settings need attention. Together they may make snippets, preview images or preferred URLs less consistent across platforms.

Domain and Registration

Registered in 2014, this domain has about 12 years of history. That suggests continuity, although ownership and purpose may have changed. Transfer-protection status is present, helping reduce the risk of unauthorized domain transfers. The registrar is Cloudflare, Inc, a widely used domain service provider. The domain uses the common .io extension, which is not an independent safety signal.

DNS and Email

MX records exist, but SPF, DKIM and DMARC were not detected. Protection against domain impersonation may be incomplete. Nameservers are provided by Cloudflare, indicating managed DNS hosting. MX records point to the Google Workspace email service. CAA records restrict which certificate authorities are authorized to issue certificates. No CNAME was found; the observed records resolve directly to addresses.

TLS and Certificates

The public key uses EC with 256 bits. The server supplied a complete certificate chain. No organization name is present in the certificate; the available fields are consistent with domain validation. The certificate was issued within the Google Trust Services cloud or CDN ecosystem. The certificate's total validity is about 90 days, consistent with a short renewal cycle.

HTTP and Browser Security

The response lacks these common security headers: CSP, Permissions-Policy, clickjacking protection. CORS permits any origin to read this response. This is common for public resources; sensitive responses need narrower handling. No X-Powered-By header was found, reducing one common source of backend fingerprinting information. The cf-ray response header indicates a CDN or caching proxy in the delivery path. No obvious internal addresses or debug information were found in the headers.

Technology Stack Analysis

The public page identifies Cloudflare without precise versions, leaving fewer clues for version-specific scanning.

Search and Social Sharing

No homepage canonical URL was detected. If duplicate URLs exist, consolidation may be less explicit. No Open Graph metadata was detected, so social previews may depend on platform inference. The title has 8 characters, within a common display range. A meta description is present, with 4 characters. The observed directives allow indexing and link following.

Hosting and Email

DNSCloudflare
HostingCloudflare
EmailGoogle Workspace
Approximate IP geolocation (inferred; a CDN or proxy may differ from the origin server) United States flagUnited States Inferred 2606:4700::6810:fd78

Registration details

RDAP / WHOIS

RegistrarCloudflare, Inc
Registered2014-06-14
Expires2028-06-14
Domain statusclientTransferProhibited https://icann.org/epp#clientTransferProhibited
Nameserversivan.ns.cloudflare.com、tegan.ns.cloudflare.com
DNSSECunsigned

DNS records

DNS

TypeNameValueTTLPriority
Aorganize.readthedocs.io104.16.253.120300—
Aorganize.readthedocs.io104.16.254.120300—
AAAAorganize.readthedocs.io2606:4700::6810:fd78300—
AAAAorganize.readthedocs.io2606:4700::6810:fe78300—
MXreadthedocs.ioaspmx.l.google.com3001
MXreadthedocs.ioalt1.aspmx.l.google.com3005
MXreadthedocs.ioalt2.aspmx.l.google.com3005
MXreadthedocs.ioaspmx2.googlemail.com30010
MXreadthedocs.ioaspmx3.googlemail.com30010
NSreadthedocs.ioivan.ns.cloudflare.com86400—
NSreadthedocs.iotegan.ns.cloudflare.com86400—
CAAreadthedocs.io0 issue " amazontrust.com"300—
CAAreadthedocs.io0 issue "comodoca.com"300—
CAAreadthedocs.io0 issue "digicert.com; cansignhttpexchanges=yes"300—
CAAreadthedocs.io0 issue "letsencrypt.org"300—
CAAreadthedocs.io0 issue "pki.goog; cansignhttpexchanges=yes"300—
CAAreadthedocs.io0 issue "ssl.com"300—
CAAreadthedocs.io0 issuewild "amazonaws.com"300—
CAAreadthedocs.io0 issuewild "comodoca.com"300—
CAAreadthedocs.io0 issuewild "digicert.com; cansignhttpexchanges=yes"300—
CAAreadthedocs.io0 issuewild "letsencrypt.org"300—
CAAreadthedocs.io0 issuewild "pki.goog; cansignhttpexchanges=yes"300—
CAAreadthedocs.io0 issuewild "ssl.com"300—

TLS and certificates

TLS / SSL

AssessmentNormal configuration
Supported protocolsTLSv1.2、TLSv1.3
Negotiated protocolTLSv1.3
Certificate subjectreadthedocs.io
IssuerGoogle Trust Services
Valid until2026-12-23T14:03 · Remaining when checked: 78 days
Verification detailsCertificate trust: Passed · Hostname match: Passed

HTTP response headers

HTTP

HeaderValue
content-typetext/html; charset=utf-8
cache-controlmax-age=1800, stale-if-error=86400, public
servercloudflare
strict-transport-securitymax-age=31536000; includeSubDomains; preload
x-content-type-optionsnosniff
referrer-policyno-referrer-when-downgrade
access-control-allow-origin*

Identified technologies

Cloudflare

Pages, Search and Sharing

Meta descriptionNone
Canonical URLNot detected
LanguageEnglish (default)
Twitter CardNot detected

Unknown

All bots 0 allowed · 0 disallowed

User reviews (0)

  • No reviews yet.