This morning we rolled out search and cross-project issue filtering. There's not much more to it than that, but I wanted to give a quick overview of the highlights from the release.
One of the most challenging aspects of adding search was deciding how to scope the search. Sometimes, you might want to search all of your open projects. Sometimes, you may want to include archived projects. Other times, you may want to just search within a single project. So, depending on the page that you're on, search will function slightly differently.
If you're on a project page, the search will limit the results to just that project. However, there's always a link to expand your search to all projects. Otherwise, if you're on a global page like the dashboard or account management, Sifter will search all of your open projects. From the results page, you can choose to expand the search to include archived projects.
In addition to being a search box, it's also an issue shortcut. If you type in an issue number, the issue number exists, and you have access to it, you'll automatically be taken to the issue page.
The search box is somewhat intelligent. You can type an issue number and jump straight to that issue. By default, it searches all projects. However, if you are within a project, it will limit the results to that project.
The search results pages have some selected filtering options that will vary depending on whether you're searching one project or multiple projects. For instance, since categories can be customized for each project, it didn't make sense to enable filtering by category when you search all projects.
The cross-project issue filtering is available from the dashboard.
Additionally, when you're searching multiple projects, each search result will include a link to the project just below the issue subject. Naturally, if you're searching within a project, this link isn't there because it would be redundant.
While I plan on writing a more in depth blog post about the design and technical aspects, I wanted to share a little bit for the developers out there. We're using Sphinx and Thinking Sphinx. We're taking advantage of delta indexing so that search results are immediately available, re-indexing every couple of hours via a cron job, and keeping an eye on the search daemon with Monit.
We built a simple bug and issue tracker named Sifter and we blog about it when we're not working on it. We think it’s a great way to get feedback and keep everyone updated on our status.
Grab our feedWe'll only send emails for significant product announcements, and those happen every couple of months at most. Of course, we won't give away or sell your e-mail address either.
Comments
Really enjoying the changes. This app keeps getting better and I appreciate all the work.