Upon getting started with a self-hosted install I wanted to create a new project. I selected the drop-down at the top and selected "Create a new project".

<img width="403" alt="Screen Shot 2021-06-29 at 11 12 24" src="https://user-images.githubusercontent.com/328367/123799033-b28fb080-d8df-11eb-8423-40d7b978af1b.png">

This then took me through a flow to request a license.

https://user-images.githubusercontent.com/328367/123798516-27aeb600-d8df-11eb-873d-826e13e4e224.mp4

After chatting to @marcushyett-ph I realised that there's a banner at the top of the page that has a "Go to setup" CTA that lets me create a new project. I'm a little embarrassed that I didn't notice this 😊 But I'm assuming other people may not see it either or just see it as some sort of success banner.

<img width="1311" alt="Screen Shot 2021-06-29 at 11 12 45" src="https://user-images.githubusercontent.com/328367/123798988-a6a3ee80-d8df-11eb-9e1d-88aa1e23a7f8.png">

Could the top drop-down also let me go through this flow? Could this result in people failing to get started and instead thinking they have to request a license?

## Describe the solution you'd like

Could the top project drop-down be aware of the context of the user: that they have not yet created their first project? And if that's the case then run them through the setup process?

posthog/api/organization.py
membership = OrganizationMembership.objects.filter(
            organization=organization, user=self.context["request"].user,
        ).first()
        return membership.level if membership is not None else None
    def get_setup(self, instance: Organization) -> Dict[str, Union[bool, int, str, None]]:
        if not instance.is_onboarding_active:
            
            
            return {"is_active": False, "current_section": None}
        non_demo_team_id = next((team.pk for team in instance.teams.filter(is_demo=False)), None)
        any_project_ingested_events = instance.teams.filter(is_demo=False, ingested_event=True).exists()
        any_project_completed_snippet_onboarding = instance.teams.filter(
            is_demo=False, completed_snippet_onboarding=True,
        ).exists()
        current_section = 1
        if non_demo_team_id and any_project_ingested_events and any_project_completed_snippet_onboarding:
            
            current_section = 2
        return {
            "is_active": True,
            "current_section": current_section,
            "any_project_ingested_events": any_project_ingested_events,
            "any_project_completed_snippet_onboarding": any_project_completed_snippet_onboarding,
            "non_demo_team_id": non_demo_team_id,
            "has_invited_team_members": instance.invites.exists() or instance.members.count() > 1,
        }
class OrganizationViewSet(AnalyticsDestroyModelMixin, viewsets.ModelViewSet):