mirror of https://github.com/zulip/zulip.git
181 lines
8.7 KiB
HTML
181 lines
8.7 KiB
HTML
{% extends "zerver/portico.html" %}
|
|
{% set entrypoint = "landing-page" %}
|
|
|
|
{% set PAGE_TITLE = "The Zulip team" %}
|
|
|
|
{% set PAGE_DESCRIPTION = "Zulip has the most active open-source
|
|
development community of any team chat software, with over 1100 code
|
|
contributors, and more than 75 with 100+ commits." %}
|
|
|
|
{% block portico_content %}
|
|
|
|
{% include 'zerver/landing_nav.html' %}
|
|
|
|
<div class="portico-landing why-page">
|
|
<div class="hero bg-pycon drone">
|
|
<div class="bg-dimmer"></div>
|
|
<div class="content">
|
|
<h1 class="center">The Zulip team</h1>
|
|
<p>Learn about the people behind Zulip!</p>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="main">
|
|
<div class="padded-content markdown">
|
|
<div class="inner-content team">
|
|
<p>
|
|
Over 1000 people have contributed to the Zulip
|
|
codebase, from high school students to 30 year
|
|
industry veterans, from people launching new careers
|
|
to people looking for community. Meet the team
|
|
below!
|
|
</p>
|
|
|
|
<h1 id="the-core-team">The core team at Kandra Labs</h1>
|
|
<div class="team-profiles">
|
|
<!-- Tim -->
|
|
<div class="profile bdfl">
|
|
<div class="profile-picture">
|
|
<img src="{{ static('images/landing-page/team/tim.png') }}" alt="" />
|
|
</div>
|
|
<div class="profile-information">
|
|
<div class="profile-name">Tim Abbott</div>
|
|
<div class="profile-role">Founder and project leader</div>
|
|
<div class="profile-description">
|
|
<p>
|
|
Before Zulip, Tim was a founder and CTO of
|
|
Ksplice, which provided rebootless linux
|
|
kernel updates (a feat many previously thought
|
|
impossible) to over 100,000 production
|
|
servers. He was also the youngest ever
|
|
Architect at Oracle, one of the most senior
|
|
engineers at Dropbox and has been active in
|
|
the open source community for over a
|
|
decade. Tim has three degrees from MIT, and
|
|
lives in San Francisco with his wife and
|
|
three daughters.
|
|
</p>
|
|
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<p>
|
|
Kandra Labs provides commercial Zulip hosting and on-premises support
|
|
at <a href="https://zulip.com/plans/">https://zulip.com</a>,
|
|
and employs the core developers of the project. It was
|
|
started in June 2016 to help sustain the growth of the Zulip
|
|
project. Kandra Labs is funded by
|
|
an <a href="https://seedfund.nsf.gov/">SBIR grant</a> from
|
|
the US National Science Foundation.
|
|
</p>
|
|
|
|
<!-- Contributors -->
|
|
<h1 id="our-amazing-community">Our amazing community</h1>
|
|
<p>
|
|
While the team at Kandra Labs provides important
|
|
leadership, Zulip is built by an incredible
|
|
distributed community of developers from all
|
|
around the world. You can read about
|
|
the <a href="/history/">project's history</a> if
|
|
you want to learn more about Zulip's origins.
|
|
</p>
|
|
<p>
|
|
Here, we recognize the top contributors to the
|
|
Zulip project on GitHub. Zulip's community
|
|
is unusual in how many people outside the core
|
|
team have made major contributions to the project.
|
|
</p>
|
|
|
|
<div class="contributors-list">
|
|
<input id="total" type="radio" name="tabs" checked />
|
|
<label for="total"><i class="zulip-icon zulip-icon-globe" aria-hidden="true"></i> Total</label>
|
|
|
|
<input id="server" type="radio" name="tabs" />
|
|
<label for="server"><i class="fa fa-server" aria-hidden="true"></i> Server & Web</label>
|
|
|
|
<input id="desktop" type="radio" name="tabs" />
|
|
<label for="desktop"><i class="fa fa-desktop" aria-hidden="true"></i> Desktop</label>
|
|
|
|
<input id="mobile" type="radio" name="tabs" />
|
|
<label for="mobile"><i class="fa fa-mobile" aria-hidden="true"></i> Mobile</label>
|
|
|
|
<input id="terminal" type="radio" name="tabs" />
|
|
<label for="terminal"><i class="fa fa-terminal" aria-hidden="true"></i> Terminal</label>
|
|
|
|
<input id="api-clients" type="radio" name="tabs" />
|
|
<label for="api-clients"><i class="fa fa-code" aria-hidden="true"></i> Integrations</label>
|
|
|
|
<input id="devtools" type="radio" name="tabs" />
|
|
<label for="devtools"><i class="fa fa-at" aria-hidden="true"></i> Devtools</label>
|
|
<div id="tab-total" class="contributors">
|
|
<div class="contributors-grid"></div>
|
|
</div>
|
|
<div id="tab-server" class="contributors">
|
|
<div class="contributors-grid"></div>
|
|
</div>
|
|
<div id="tab-desktop" class="contributors">
|
|
<div class="contributors-grid"></div>
|
|
</div>
|
|
<div id="tab-mobile" class="contributors">
|
|
<div class="contributors-grid"></div>
|
|
</div>
|
|
<div id="tab-terminal" class="contributors">
|
|
<div class="contributors-grid"></div>
|
|
</div>
|
|
<div id="tab-api-clients" class="contributors">
|
|
<div class="contributors-grid"></div>
|
|
</div>
|
|
<div id="tab-devtools" class="contributors">
|
|
<div class="contributors-grid"></div>
|
|
</div>
|
|
</div>
|
|
|
|
<!-- Compiled using lodash -->
|
|
<script type="text/template" id="contributors-template">
|
|
<div class="person">
|
|
<a href="<%= profile_url %>" target="_blank" rel="noopener noreferrer" class="no-underline">
|
|
<div class="avatar">
|
|
<img class="avatar_img" src="<%= avatar %>" alt="{{ _('Avatar') }}" />
|
|
</div>
|
|
<div class='info'>
|
|
<b><%= name %></b><br />
|
|
<%= commits %> <%= commits === 1 ? 'commit' : 'commits' %>
|
|
</div>
|
|
</a>
|
|
</div>
|
|
</script>
|
|
|
|
<script type="text/template" id="loading-template">
|
|
<p class="tab-loading">
|
|
Loading…
|
|
</p>
|
|
</script>
|
|
|
|
<script type="text/template" id="total-count-template">
|
|
<p class="contributor-count">
|
|
<%= contributor_count %> total contributors (<%= hundred_plus_contributor_count %> with 100+ commits)
|
|
</p>
|
|
</script>
|
|
|
|
<script type="text/template" id="count-template">
|
|
<p class="contributor-count">
|
|
<%= contributor_count %> contributors
|
|
(<%= hundred_plus_contributor_count %> with 100+ commits) to
|
|
<% repo_list.forEach(function(repo_name, index) { %>
|
|
<a href="<%= repo_url_list[index] %>" target="_blank" rel="noopener noreferrer">
|
|
zulip/<%= repo_name %><% if (index < repo_list.length - 1) { %>, <% } %>
|
|
</a>
|
|
<% }); %>
|
|
</p>
|
|
</script>
|
|
|
|
<p class="last-updated">
|
|
Last updated: {{ date }}. <a href="https://zulip.readthedocs.io/en/latest/contributing/counting-contributions.html" target="_blank" rel="noopener noreferrer">Methodology</a>.
|
|
</p>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
{% endblock %}
|