The category and project model
time.md treats a category as a project-like bucket. Each app can map to one category, and every screen that groups by category uses those mappings.
App
The raw unit from macOS activity data: Safari, Xcode, Slack, Terminal, Figma, and so on.
Category
Your label for what that app means in your work: Development, Communication, Design, Browsing, Writing, Social Media, or any name you choose.
Project rollup
The Projects screen groups app time by category so you can read time as work buckets instead of app trivia.
Apps without a mapping still appear in totals. Projects may show them as Uncategorized, while Rules counts them as unmapped coverage to fix.
Use Projects to inspect grouped time
Projects starts with a searchable list of category groups. Each group shows total time, percentage of the period, app count, and a progress bar. Expand a category to see the apps inside it.
Distribution chart
The sidebar donut shows the biggest category shares. It is useful for a quick balance check: work, communication, browsing, entertainment, and everything else.
App grouping
Expand a category to see its apps sorted by time. Each app row shows its duration and share of that category.
Search
Search by app or category when the list is long. This is the fastest way to find a misfiled app.
Expand all
Use Expand All when auditing mappings. Collapse All returns the page to a high-level summary.
Edit categories from Projects
Projects lets you make quick corrections without leaving the screen. Use the pencil on an app row to open the category editor.
Expand the category
Open the category that contains the app you want to edit. Uncategorized is the usual place to start during cleanup.
Click the pencil
The editor shows the app name, a category field, and existing category chips you can reuse.
Save or remove
Save assigns the app to the typed category. Remove clears the mapping so it can be remapped later.
Use Rules for coverage and bulk mapping
Rules is built for mapping maintenance. It lists apps, current categories, time, edit controls, and checkboxes for bulk actions.
| Rules control | What it does | When to use it |
|---|---|---|
| Search apps | Filters by app name or category name. | Find a specific app or verify all apps in a category. |
| Unmapped only | Shows only apps without a category mapping. | Clean up gaps before reviewing category reports. |
| Coverage | Shows mapped apps over total apps and a percentage bar. | Track whether category reports are trustworthy enough to use. |
| Suggestions | Offers common category labels such as Development, Communication, Design, Browsing, Entertainment, Productivity, Social Media, and Writing. | Keep naming consistent while bulk mapping. |
Bulk mapping workflow
Bulk mapping is the quickest way to turn a raw app list into clean category analytics.
Open Rules and enable Unmapped only
This removes noise and shows the apps still weakening category charts and reports.
Select related apps
Use the row checkboxes for apps that belong in the same category. Select all visible rows only when they truly share a category.
Pick or type a category
Use a suggestion for common labels, or type a custom category name for your own project model.
Assign and review coverage
Click Assign, then watch the coverage count improve. Repeat until the remaining unmapped apps are either irrelevant or intentionally left unmapped.
Reports become easier to compare when you reuse the same category names over time. Prefer one category named Communication over several near-duplicates like Chat, Messages, and Comms.
A practical Projects + Rules workflow
- Open Projects and inspect the distribution chart for obvious category imbalance.
- Expand Uncategorized or suspicious categories to find apps that need edits.
- Use the pencil for one-off corrections.
- Open Rules, enable Unmapped only, and bulk map related apps.
- Return to Review or Reports and switch grouping to Category to see the improved rollup.