Groucho framework