landing: Write up why open source projects should use Zulip

This isn't very slick, but it should get the main points down,
and it's past time we got something like this up.  Definitely
needs in the future another pass at the text, and also some images
(screenshots, etc.) and styling.
This commit is contained in:
Greg Price
2017-06-18 15:47:02 -07:00
parent 35e0208463
commit c9e35c459a
4 changed files with 135 additions and 0 deletions

View File

@@ -0,0 +1,34 @@
{% extends "zerver/portico.html" %}
{% block title %}
<title>Zulip: the best group chat for open source projects</title>
{% endblock %}
{% block customhead %}
{{ super() }}
<meta name="viewport" content="width=device-width, initial-scale=1.0">
{% stylesheet 'portico' %}
{% stylesheet 'landing-page' %}
{{ render_bundle('landing-page') }}
{% endblock %}
{% block portico_content %}
{% include 'zerver/landing_nav.html' %}
<div class="portico-landing apps">
<div class="main">
<div class="padded-content headline">
<h1 class="center">{% trans %}The best choice for open source projects{% endtrans %}</h1>
</div>
<div class="padded-content">
<div class="inner-content">
{{ 'zerver/for/open-source.md'|render_markdown_path }}
</div>
</div>
</div>
</div>
{% endblock %}

View File

@@ -0,0 +1,99 @@
A great open source project needs a great group chat service. Here's
why we think Zulip is the best choice you can make today.
(Psst, I'll spoil the ending: not only is Zulip itself open source,
but hosting on zulipchat.com is free for open source projects.
[Sign up now](https://zulipchat.com/beta/)!)
## Great for developers
* Messages take Markdown formatting, [including code
blocks](/help/format-your-message-using-markdown#code), making it
super easy to discuss some code or paste an error message.
* Have a design discussion in chat and want to link to it in your bug
tracker or a commit message? [Two
clicks](/help/share-a-message-or-conversation) makes a permanent
link. The URL transparently shows where the discussion happened,
and for everyone who clicks through, Zulip's topic threading
provides a focused view on that conversation.
* Want to refer to issues or code reviews with short notation like
`#1234`, `T1234` -- or any other style of your own? Set up any
regex as a [custom linkification
filter](/help/add-a-custom-linkification-filter) for your
organization.
* Troubleshooting in chat for users or new developers becomes much
more manageable with Zulip's topic threading: each issue in a
channel can be discussed in its own thread.
## Great for productivity
* With Zulip's unique model of threading by topic, your community can
have more than one conversation in a channel at the same time,
without the confusion and talking-over caused by traditional models
like IRC and Slack. (Extra handy for holding a synchronous chat
meeting with 5-20 people and making good use of everyone's time!)
* No limited "try it out" tier -- [host it
yourself](https://zulip.readthedocs.io/en/latest/prod-install.html),
or [sign up at zulipchat.com](https://zulipchat.com/beta/) for
commercially-supported hosting, free for open source projects.
* Fast, full-text search through your full, unlimited message history.
* [Stop by
chat.zulip.org](https://zulip.readthedocs.io/en/latest/chat-zulip-org.html),
Zulip's own development community, to see it in action for a large
project with ~5000 messages/week, essentially all of it productive
developer discussion.
## Great for open communities
* Sleek, modern [apps for every platform](/apps/) make Zulip an
inclusive choice for everyone in your community.
* Take down the barrier to participation created by making people
interested in your community ask for an invitation before they can
enter -- [one
checkbox](/help/allow-anyone-to-join-without-an-invitation) opens
your Zulip organization for anyone to join.
* Want to link to your Zulip organization with a nice badge in your
README? [Done.](/help/join-zulip-chat-badge)
<!--- This needs better documentation. -->
* GitHub auth? [We've got that.][github-auth]
[github-auth]: https://github.com/zulip/zulip/blob/7e9926233/zproject/prod_settings_template.py#L112
* Zulip scales well to large communities -- it's loved by communities
as large as 1000 users and beyond.
## Zulip ❤​ open source
* Zulip itself is open source, [under the Apache License 2.0](https://github.com/zulip/zulip/blob/master/LICENSE).
* Full, commercially-supported hosting at zulipchat.com is **free**
for open source communities. [Sign up today!](https://zulipchat.com/beta/))
<!--- This needs better -- any! -- documentation. -->
* Your data is yours -- Zulip's high-quality export and import tools
enable migrating a community smoothly from one host to another.
So if you start out running on zulipchat.com, you can always choose
later to move to your own servers, and vice versa.
* Zulip is the leading open source group chat option, with far more
contributor momentum than any other. Some numbers:
* Over 300 contributors in the Zulip server project alone -- a
figure reached in only 18 months.
* 75 people working on Zulip at the PyCon sprints in Portland in
May 2017.
* In the [Zulip Server 1.6
release](https://blog.zulip.org/2017/06/06/zulip-server-1-6-released/)
in June 2017, over 3100 new commits since 1.5, by over 150
different people.

View File

@@ -37,6 +37,7 @@ class DocPageTest(ZulipTestCase):
self._test('/apps/', 'Appsolutely')
self._test('/features/', 'Talk about multiple topics at once')
self._test('/hello/', 'productive group chat')
self._test('/for/open-source/', 'for open source projects')
self._test('/integrations/',
'require creating a Zulip bot',
extra_strings=[

View File

@@ -149,6 +149,7 @@ i18n_urls = [
url(r'^hello/$', TemplateView.as_view(template_name='zerver/hello.html'), name='landing-page'),
url(r'^new-user/$', RedirectView.as_view(url='/hello', permanent=True)),
url(r'^features/$', TemplateView.as_view(template_name='zerver/features.html')),
url(r'^for/open-source/$', TemplateView.as_view(template_name='zerver/for-open-source.html')),
url(r'^find_my_team/$', zerver.views.registration.find_my_team, name='zerver.views.registration.find_my_team'),
url(r'^authors/$', zerver.views.users.authors_view, name='zerver.views.users.authors_view'),