Package debounce is complete and thread-safe port of lodash's debounce for Go, with support for leading/trailing/both edges, max wait, arguments, return values, flush, cancel, etc. See this CSS-Tricks article for detailed explanation of debouncing behavior.
Examples can be found in package documentation.