Basecamp Bulk To-Do Assigner
Free to download on every platform. Comes pre-installed on BotFone, BotPad and BotFlip — with extra free apps included.
About this app
WHAT IT DOES
Basecamp Bulk To-Do Assigner is a project management productivity tool that streamlines the process of assigning multiple to-dos to team members. Instead of manually opening each to-do, clicking the assignee dropdown, selecting a person, and saving—a process that can be repetitive and time-consuming when managing many tasks—this script automates the entire workflow. It scans the current Basecamp to-do list page, identifies all visible to-dos with their titles and current assignees, and presents them as a scrollable checklist. You can select individual to-dos, use Select All/Deselect All toggles, choose a target person from a dynamic dropdown (auto-detected from your project's team members), and assign your selections to that person in configurable batches. The tool handles the complete interaction sequence: opening the assignee dropdown or edit interface, selecting the target person, and saving the change. Real-time progress updates show how many to-dos have been assigned, and the list automatically refreshes after completion. This is ideal for project managers, team leads, and anyone who needs to distribute tasks efficiently across a team.
WHERE IT RUNS
This script operates exclusively on Basecamp (*.basecamp.com/*) as a userscript injected through the BotGentz extension. It runs within the context of your current browser tab and cannot access other tabs, bookmarks, history, or downloads. The script reads the page DOM to identify to-do items using Basecamp's selectors (.todo, .todo-item, .todos-list-item), extracts to-do metadata (titles, current assignees), and interacts with Basecamp's native UI controls—assignee dropdowns, edit buttons, and save buttons—to perform assignments. All operations occur locally in your browser; no data is sent to external servers.
HOW TO USE
1. Navigate to any Basecamp to-do list page (a project's to-do list).
2. Click the BotGentz extension icon and select "Basecamp Bulk To-Do Assigner" from the script list.
3. The panel opens on the right side of the page. It automatically scans the current page for to-dos.
4. Review the displayed to-dos, showing title and current assignee (or "Unassigned").
5. Select your target person from the "Assign to" dropdown (people are auto-detected from the page).
6. Adjust the "Batch size" number (default 3) to control how many to-dos are assigned per batch.
7. Toggle "Confirm before each batch" if you want a confirmation popup before each batch executes.
8. Check the boxes next to to-dos you wish to assign. Use "Select All" or "Deselect All" for quick selection.
9. Click "Assign To-Dos" to begin. The script processes to-dos in batches, shows progress, and handles errors.
10. After completion, the to-do list automatically refreshes showing your updated assignments.
WHY IT WORKS WHERE OTHERS FAIL
Many Basecamp automation tools fail because they attempt to call Basecamp's internal API endpoints or rely on brittle DOM selectors that change with every Basecamp UI update. This script takes a resilient approach: it locates the actual interactive DOM elements Basecamp renders—the assignee dropdown, the edit button, and the save/update button—and triggers native click events and value changes on them, exactly as a human would. When using the assignee dropdown directly, the script sets the value using both the native value setter and dispatches "input" and "change" events, ensuring Basecamp's JavaScript UI registers the update. When the dropdown isn't directly available, the script clicks the edit button, waits for the assignee field to appear, selects the target person, and clicks Save. Between operations, the script introduces controlled delays (300ms between actions and 500ms between batches) to mimic human interaction speed and avoid triggering Basecamp's rate limiting. By interacting at the UI layer rather than the framework layer, it remains functional across Basecamp's frequent code updates.
THE PANEL
The script uses BotGentz's BGPanel system, which provides a floating, draggable panel on the right side of your screen. Drag the panel by its header to reposition it anywhere on the page—the panel remembers its position per site and snaps to the nearest edge when released. Click the minimize button to collapse the panel to a small floating bubble; click the bubble to expand it back. Resize the panel vertically by dragging its bottom edge. Press the Escape key to close the panel entirely. All panel state (position, collapsed/expanded) is persisted locally using GM_setValue, so your preferences survive page reloads.
PLEASE NOTE
This userscript requires the free BotGentz browser extension—it is not a standalone application. Basecamp periodically updates its website layout and UI components; if the script stops working, an updated version may be released. This script does not store, transmit, or process any of your Basecamp data outside your local browser. It does not access your password, hidden inputs, or file inputs. All assignments are performed through Basecamp's own authenticated session using the official user interface. Assigning to-dos will notify the assigned person and may affect workload tracking and reporting. Use responsibly and review your selections carefully before confirming.