An internal tool used to manage time estimates, Timtrot communicates with the Basecamp API to pull in todos and allow users to provide estimates for each todo. The frontend is a legacy Angular app while the backend is a Laravel application. I built the backend, which takes advantage of Basecamp Webhooks to provide an accurate todo list and Laravel’s API methods to provide data to Angular.

It authenticates with Basecamp as SSO provider and has varying permissions based on user roles that unlock different parts of the application.