The simplest way to manage developer annotations.
Don't let TODO comments turn into technical debt.
![](/assets/landing/catana-head-238590cd623b7ace2cbd06e886eeef4d41d9a25162dad5d894c38cb08c1edeae.png)
One click install. No setup is required.
![](/assets/landing/vscode-932965b047675350861b4a8dfdb3d643135d2dd1958ccc4d516f812c22b3b3f4.png)
![](/assets/landing/arrow-05b511331fda5514b982df25113c776876708fd41ce4aeaf1c528064d8f582b9.png)
Turn TODOs into actionable item.
![](/assets/landing/catana-todo-intro-2fc193a1f913bf1810802bf0c1b51ea7d7d53abe60ae6f8a53577378754bbd74.png)
No one remembers their TODOs.
The accumulation of unresolved TODOs contributes to the long-term maintenance overhead of your projects.
TODO: Fix this later.
![](/assets/landing/frustration-6841bdb3e0d72ce85a42763e6117604486bd38f10bc824b9e183343452c2c43d.png)
![](/assets/landing/linter-ead5ee6edeab25bad2200f9d9fb277a8fe570a47f18e9c1517957af90a00ec3b.png)
Banning them is not the solution.
Forbidding TODOs hides issues and deprives developers of a valuable tool from their toolbox.
The Catana way.
Catana solves the three flaws of TODOs - visibility, accountability and forgettability - and helps project owners and developers take back control over their TODOs.
![](/assets/landing/rocket-5330029d5046770e6999b9970e03b09a17136db1ff52fd2f8847ea72f59872fb.png)
TODOS from all your projects. in one place.
![](/assets/landing/catana-dashboard-735a31d385dc2c7c268d189996cfa199b61bb47b814eb596d1c1841ec55fdee0.png)
![](/assets/landing/catana-dashboard2-768eea9b659eb10b7865fa7d7d35056caa5ec88486b18716324371692e295f89.png)
![](/assets/landing/coder-6f41032230f6abc3f8a10bdb4e75fe493a9de62d80a7f169a9387247fc81f95c.gif)
Code, commit, push... as usual.
Catana processes and records all TODO comments in real-time, automatically assigns them to their corresponding git committers, and sends periodic reminders.
Your workflow doesn’t change.
TODO: Rename this function.
![](/assets/landing/squiggly-b6121a942ac2b25eb2200a86862411a8fe7160946222028a60d9c083ba8594b2.png)
Expire your TODOs.
Having notification fatigue? You decide when to be notified!
Set a trigger to expire your TODO at your desired time or condition.
![](/assets/landing/bell-72fecb7b1602216c693026f675ab144ed77e4235074d102c51ea4eff731d90b9.png)
![](/assets/landing/calendar-b28834c3675a999fcfd21156cb070cd2db084f5e98e210f144d3ae18512adc17.png)
TODO(
on: ‘2023-02-14’
)
A ticket in your issue tracker is opened when a TODO expires, helping prioritize tasks and reducing noise for you and your team.
Choose an event and let Catana expire your TODO!
A GitHub issue gets closed.
![](/assets/landing/calendar-b28834c3675a999fcfd21156cb070cd2db084f5e98e210f144d3ae18512adc17.png)
A date is reached.
A GitHub Pull Request gets closed.
... and more! See the docs ↗
Assign and identify TODO owners without leaving your code editor.
Accountability helps ensure that TODOs are actioned in a timely manner.
Catana adds a convention that requires assigning each TODO,
whether implicitly through git authorship or explicitly. The choice is yours!
![](/assets/landing/user-portrait-ec6874e5a124786c20c434c9ff7c486abb8a21581551740106ffa5a6787d813e.png)
TODO(
to: ‘lea’
): Un-skip this test
![](/assets/landing/catana-list-a16ffd741e40f653eb39e279bab128d481c68ed8ab65c951e09ea46ff19a5d57.png)
![](/assets/landing/user-left-org-2ed8dd124f32fa8d98dcc8459277e69b55817076cbc581205e6fe4a0f63cf49d.png)
![](/assets/landing/bell-72fecb7b1602216c693026f675ab144ed77e4235074d102c51ea4eff731d90b9.png)
Receive notifications when a user departs from your organization, ensuring that no TODOs are overlooked indefinitely.
![](/assets/landing/wave-d6d253623e12fd0c81dce98aeaa8b6a2e6042a8cfc0fd15b5b007b3570810e8e.png)
Configurable to fit your needs.
![](/assets/landing/catana-settings-f2d252a1fba320dda49acc541961b89a9eabf784a1de3d408c48309ea41b9434.png)
Your codebase is the source of truth.
TODO locations are updated with every code change. Never lose sight of your TODOs!
A TODO gets removed?
Catana close its associated issue.An issue gets closed?
Catana prevents it if its associated TODO has not been removed.Enrol all repositories with ease.
Supports all standard annotations.
![](/assets/landing/cat-detective-85ee0dea232108d921f78158aef1e84efb7258761ee497489352df19683a627d.png)
Detects and records both existing and upcoming TODOs.
Installation in one click. No setup is required.
![](/assets/landing/zen-da46cb3dcd496e09c932440f317d9da43bc3ec53df2a7c2c7cab6ba3dde243d0.png)
![](/assets/landing/programming-languages-feeedac6a2d64935c936fc91d68ef5be0a0015f5aa49ac534b75627367caeef5.png)
Detects code comments on 200+ languages.
Command Catana from GitHub.
Edit and remove TODOs with easy commands.
![](/assets/landing/catana-command-a4d48cff0d456790254494f9fa32972cdd393351de4fa26eb0cf87a1bbb4c8d9.png)
![](/assets/landing/arrow-05b511331fda5514b982df25113c776876708fd41ce4aeaf1c528064d8f582b9.png)
![](/assets/landing/catana-bot-reply-157ed832fef272de7508a8fb38154439878d9f834bec265ff425a4ad9ff7a594.png)
Lifecycle of a TODO.
Without Catana
A TODO is added.
![](/assets/landing/hourglass-b8b6fdc102ad7bf9eef38d5dad2791a83c50c112b67029cecbb9d4a94201d93e.png)
![](/assets/landing/mummy-ec92003147e7f6a0df2d02d0be720ef36d0f62d42ead6286ea633766f5a8fe9c.png)
It gets discovered.
With Catana
![](/assets/landing/catana-logo-97d10b96c5b93cad99ec37c3b8cf6d729a7d2f44a7b4ce31080d011b70a0763d.png)
TODO is recorded.
![](/assets/landing/bell-72fecb7b1602216c693026f675ab144ed77e4235074d102c51ea4eff731d90b9.png)
Assignee is reminded.
TODO is resolved.
Discover TODOs across your codebases
Whether you are an individual contributor or a manager, Catana has all the features to enhance and keep track of developer annotations.
Try Catana for free!