Skip to content

Commit

Permalink
📝 Update README (#632)
Browse files Browse the repository at this point in the history
Closes #628
  • Loading branch information
baptisteArno authored Jul 24, 2023
1 parent 7942ae4 commit 9433d3e
Show file tree
Hide file tree
Showing 7 changed files with 182 additions and 138 deletions.
Binary file added .github/images/logo-dark.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added .github/images/logo-light.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file removed .github/images/readme-illustration-dark.png
Binary file not shown.
Binary file removed .github/images/readme-illustration-light.png
Binary file not shown.
59 changes: 56 additions & 3 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,13 @@ Any contributions you make are **greatly appreciated**. It can be anything from

Let's [discuss](https://github.com/baptisteArno/typebot.io/discussions/new) about what you want to implement before creating a PR if you are unsure about the requirements or the vision of Typebot.

Typebot is a Monorepo powered by [Turborepo](https://turborepo.org/). It is composed of 2 main applications:

- the builder (`./apps/builder`), where you build your typebots
- the viewer (`./apps/builder`), where your user answer the typebot

These apps are built with awesome web technologies including [Typescript](https://www.typescriptlang.org/), [Next.js](https://nextjs.org/), [Prisma](https://www.prisma.io/), [Chakra UI](https://chakra-ui.com/), [Tailwind CSS](https://tailwindcss.com/).

## Get started

1. [Fork](https://help.github.com/articles/fork-a-repo/) this repository to your
Expand All @@ -18,8 +25,54 @@ Let's [discuss](https://github.com/baptisteArno/typebot.io/discussions/new) abou
git checkout -b MY_BRANCH_NAME
```

3. Follow [Local setup instructions](https://github.com/baptisteArno/typebot.io#local-setup)
## Running the project locally

1. Install dependencies

```sh
cd typebot.io
pnpm i
```

2. Set up environment variables

Copy `apps/builder/.env.local.example` to `apps/builder/.env.local`

Copy `apps/viewer/.env.local.example` to `apps/viewer/.env.local`

Copy `packages/prisma/.env.example` to `packages/prisma/.env`

Check out the [Configuration guide](https://docs.typebot.io/self-hosting/configuration) if you want to enable more options

3. Make sure you have [Docker](https://docs.docker.com/compose/install/) running
4. Start the builder and viewer

```sh
pnpm dev
```

Builder is available at `http://localhost:3000`

Viewer is available at `http://localhost:3001`

Database inspector is available at `http://localhost:5555`

By default, you can easily authenticate in the builder using the "Github Sign In" button. For other options, check out the [Configuration guide](https://docs.typebot.io/self-hosting/configuration)

5. (Optionnal) Start the landing page

Copy `apps/landing-page/.env.local.example` to `apps/landing-page/.env.local`

```sh
cd apps/landing-page
pnpm dev
```

6. (Optionnal) Start the docs

Ideally, new features should have e2e tests. Check out existing tests in `/apps/builder/playwright/tests` and `/apps/viewer/playwright/tests`.
```sh
cd apps/docs
pnpm start
```

If you struggle writing new tests you can still create a WIP Pull request and I will help you 😃
I know the project can be a bit hard to understand at first. I'm working on improving the documentation and the codebase to make it easier to contribute. If you have any questions, feel free to [open a discussion](https://github.com/baptisteArno/typebot.io/discussions/new)
202 changes: 72 additions & 130 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,170 +1,112 @@
<p>
<br />
<p align="center">
<a href="https://typebot.io/#gh-light-mode-only" target="_blank">
<img src="./.github/images/readme-illustration-light.png" alt="Typebot illustration">
<img src="./.github/images/logo-light.png" alt="Typebot illustration" width="350px">
</a>
<a href="https://typebot.io/#gh-dark-mode-only" target="_blank">
<img src="./.github/images/readme-illustration-dark.png" alt="Typebot illustration">
<img src="./.github/images/logo-dark.png" alt="Typebot illustration" width="350px">
</a>
</p>
<br />

https://user-images.githubusercontent.com/16015833/168876388-0310678d-080b-4eca-8633-e5cc4d7bd5d1.mp4

Typebot is an open-source alternative to Landbot. It allows you to create conversational apps/forms (Lead qualification, Product launch, User onboarding, Customer support), embed them anywhere on your web/mobile apps, and collect results in real-time.

## Features

- Text, image, video bubble messages
- Text, URL, email, phone number, date... input fields
- Native integrations including Google Sheets, Webhooks, Send email (more to come)
- Conditional branching, URL redirections
- Beautiful animations
- Theme is 100% customizable
- Embed as a container, popup, or chat bubble easily with the native JS library
- In-depth analytics

For more info, visit the [landing page](https://www.typebot.io)

## Stay up-to-date

Lots of new features are being implemented on a day-to-day basis. Make sure to hit the **Star** button and watch **Releases** to be notified of future features.

<img src="./.github/images/star-project.gif" alt="Typebot illustration" style="border-radius: 10px" width="500">

## Getting started with Typebot

The easiest way to get started with Typebot is with [the official managed service in the Cloud](https://app.typebot.io). You'll have high availability, backups, security, and maintenance all managed for you by me, [Baptiste, Typebot's founder](https://twitter.com/baptisteArno).
<p align="center">
Typebot is an open-source chatbot builder. It allows you to create advanced chatbots visually, embed them anywhere on your web/mobile apps, and collect results in real-time
</p>

The cloud version can save a substantial amount of developer time and resources. For most sites this ends up being the best value option and the revenue goes to funding the maintenance and further development of Typebot.
So you’ll be supporting open source software and getting a great service! 💙
<p align="center">
<a href="https://github.com/baptistearno/typebot.io/stargazers"><img src="https://img.shields.io/github/stars/baptistearno/typebot.io" alt="Github Stars"></a>
</a>
<a href="https://github.com/baptistearno/typebot.io/pulse"><img src="https://img.shields.io/github/commit-activity/m/baptistearno/typebot.io" alt="Commits per month"></a>
<a href="https://docs.typebot.io/self-hosting/docker">
<img src="https://img.shields.io/docker/pulls/baptistearno/typebot-builder">
</a>
<a href="https://github.com/baptistearno/typebot.io/blob/main/LICENSE"><img src="https://img.shields.io/badge/license-AGPLv3-purple" alt="License">
<a href="https://status.typebot.io"><img height="20px" src="https://betteruptime.com/status-badges/v1/monitor/a9kf.svg" alt="Uptime"></a>
<a href="https://github.com/baptisteArno/typebot.io/issues/new"><img src="https://img.shields.io/badge/Report a bug-Github-%231F80C0" alt="Report a bug"></a>
<a href="https://github.com/baptisteArno/typebot.io/discussions/new?category=q-a"><img src="https://img.shields.io/badge/Ask a question-Github-%231F80C0" alt="Ask a question"></a>
<a href="https://www.facebook.com/groups/typebot"><img src="https://img.shields.io/badge/Join community-Facebook-%23016DE5" alt="Ask a question"></a>

## Self-hosting

Typebot is fully open source and we allow you to self-host your own version as long as you respect the [License](#license). Your version would be the same product as Typebot Cloud. There is no limitations in terms of available features.
</p>

The main difference between the two is that with the self-hosted version you have to install, host and manage yourself on your own infrastructure while the cloud version we manage everything for your ease and convenience. Here's the overview of all the differences:
<h3 align="center">
<b><a href="https://app.typebot.io/register">Get Started</a></b>
<b><a href="https://docs.typebot.io/">Docs</a></b>
<b><a href="https://www.youtube.com/@typebot4666/videos">YouTube</a></b>
</h3>

| | [Typebot Cloud](https://app.typebot.io) | Self-Hosting |
| ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Hosting | Easy and convenient. It takes 1 minute to start building your bots and share them with a worldwide high availability, backups, security and maintenance all done for you by me, [Baptiste, Typebot's founder](https://twitter.com/baptisteArno). I manage everything so you don’t have to worry about anything and can focus on creating great bot experiences. | You do it all yourself. You need to get a server and you need to manage your infrastructure. You are responsible for installation, maintenance, upgrades, server capacity, uptime, backup, security, stability, consistency, loading time and so on. |
| Storage | All visitor data is exclusively processed on EU-owned cloud infrastructure. This ensures that your bots data processing complies with GDPR. | You have full control and can host your instance on any server in any country that you wish. Host it on a server in your basement or host it with any cloud provider wherever you want. |
| Costs | I charge a subscription fee. Whether you're a solo business owner, a growing startup or a large company, Typebot is here to help you build high-performing chat forms for the right price. Pay for as little or as much usage as you need. | You need to pay for your server, your database, your S3 storage, backups and whatever other cost there is associated with running the infrastructure. You never have to pay any fees to us. |
---

Interested in self-hosting Typebot on your server? Take a look at the [self-hosting installation instructions](https://docs.typebot.io/self-hosting).
## Builder demo

## Local setup

1. Clone the repo
https://user-images.githubusercontent.com/16015833/168876388-0310678d-080b-4eca-8633-e5cc4d7bd5d1.mp4

```sh
git clone https://github.com/baptisteArno/typebot.io.git
```
## Features

2. Install dependencies
Typebot makes it easy to create advanced chatbots. It provides the building block that are adaptable to any business use case. I improve Typebot regularly with bug fixes, new features, and performance improvements regularly.

```sh
cd typebot.io
pnpm i
```
**Chat builder** with 34+ building blocks such as:

3. Set up environment variables
- 💬 Bubbles: Text, Image / GIF, video, audio, embed.
- 🔤 Inputs: Text, email, phone number, buttons, picture choice, date picker, payment (Stripe), file picker... inputs
- 🧠 Logic: Conditional branching, URL redirections, scripting (Javascript), A/B testing
- 🔌 Integrations: Webhook / HTTP requests, OpenAI, Google Sheets, Google Analytics, Meta Pixel, Zapier, Make.com, Chatwoot, More to come...

Copy `apps/builder/.env.local.example` to `apps/builder/.env.local`
**Theme** your chatbot to match your brand identity:

Copy `apps/viewer/.env.local.example` to `apps/viewer/.env.local`
- 🎨 Customize the fonts, background, colors, roundness, shadows, and more
- 💪 Advanced theming with custom CSS.
- 💾 Reusable theme templates

Copy `packages/prisma/.env.example` to `packages/prisma/.env`
**Share** your typebot anywhere:

Check out the [Configuration guide](https://docs.typebot.io/self-hosting/configuration) if you want to enable more options
- 🔗 Custom domain
- 👨‍💻 Embed as a container, popup, or chat bubble easily with the native JS library.
- ⚡ Blazing fast embed lib. No iframe, no external dependencies, no performance impact.
- 💻 Executable with HTTP requests

4. Make sure you have [Docker](https://docs.docker.com/compose/install/) running
5. Start the builder and viewer
Collect your **Results** and get insights:

```sh
pnpm dev
```
- 📊 In-depth analytics with drop-off rates, completion rates, and more
- 📥 Export results to CSV

Builder is available at `http://localhost:3000`
Built for **developers**:

Viewer is available at `http://localhost:3001`
- 🔓 No vendor-locking. Features built with flexibility in mind.
- 💻 Easy-to-use [APIs](https://docs.typebot.io/api).

Database inspector is available at `http://localhost:5555`
## Getting started with Typebot

By default, you can easily authenticate in the builder using the "Github Sign In" button. For other options, check out the [Configuration guide](https://docs.typebot.io/self-hosting/configuration)
The easiest way to get started with Typebot is with [the official managed service in the Cloud](https://app.typebot.io). You'll have high availability, backups, security, and maintenance all managed for you by me, [Baptiste, Typebot's founder](https://twitter.com/baptisteArno).

6. (Optionnal) Start the landing page
The cloud version can save a substantial amount of developer time and resources. For most sites this ends up being the best value option and the revenue goes to funding the maintenance and further development of Typebot.
So you’ll be supporting open source software and getting a great service! 💙

Copy `apps/landing-page/.env.local.example` to `apps/landing-page/.env.local`
## Support & Community

```sh
cd apps/landing-page
pnpm dev
```
You'll find a lot of resources to help you get started with Typebot in the [documentation](https://docs.typebot.io/).

7. (Optionnal) Start the docs
- Have a product-related question? Ask it to the [community](https://www.facebook.com/groups/typebot)
- Have a technical question? Ask it on [Github discussions](https://github.com/baptisteArno/typebot.io/discussions/new/choose)
- Found a bug? [Create an issue](https://github.com/baptisteArno/typebot.io/issues/new)

```sh
cd apps/docs
pnpm start
```
## Self-hosting

## Contribute
Interested in self-hosting Typebot on your server? Take a look at the [self-hosting installation instructions](https://docs.typebot.io/self-hosting).

Another great way to support Typebot is to contribute to the project. Head over to the [Contribute guidelines](https://github.com/baptisteArno/typebot.io/blob/main/CONTRIBUTING.md) to get started. 😍
## How to Contribute

## Technology
You are awesome, lets build great software together. Head over to the [Contribute guidelines](https://github.com/baptisteArno/typebot.io/blob/main/CONTRIBUTING.md) to get started. 💪

Typebot is a Monorepo powered by [Turborepo](https://turborepo.org/). It is composed of 2 main applications:
### Top contributors

- the builder, where you build your typebots
- the viewer, where your user answer the typebot
<a href="https://github.com/baptistearno/typebot.io/graphs/contributors">
<img src="https://contrib.rocks/image?repo=baptistearno/typebot.io" />
</a>

These apps are built with awesome web technologies including [Typescript](https://www.typescriptlang.org/), [Next.js](https://nextjs.org/), [Prisma](https://www.prisma.io/), [Chakra UI](https://chakra-ui.com/), [Tailwind CSS](https://tailwindcss.com/).
Made with [contrib.rocks](https://contrib.rocks).

## License

Typebot is open-source under the GNU Affero General Public License Version 3 (AGPLv3). You can find it [here](./LICENSE).

The goal of the AGPL license is to:

- Maximize user freedom and to encourage companies to contribute to open source.
- Prevent corporations from taking the code and using it as part of their closed-source proprietary products
- Prevent corporations from offering Typebot as a service without contributing to the open source project
- Prevent corporations from confusing people and making them think that the service they sell is in any shape or form approved by the original team

Here are the 3 different possible use cases:

<details>
<summary>You'd like to self-host Typebot as-is without modifying the source code and you don't have the intention on commercializing your version of Typebot.</summary>

<p>

**You can host and use Typebot without restrictions. Your contributions to improve Typebot and fix bugs are welcome. 💙**

</p>

</details>

<details>
<summary>You'd like to fork the project to build your own features on top of Typebot and you don't have the intention on commercializing your version of Typebot.</summary>
<p>

**You need to open-source your modifications**

</p>

</details>

<details>
<summary>You'd like to commercialize your own version of Typebot</summary>

<p>

**You need to open-source your modifications.**

**After your users registration, you should provide a prominent mention and link to the original project (https://typebot.io). You should clearly mention that you provide a modified version of the official project, Typebot. It would be also a good place to explain your version advantages comparing to the original project.**

**You need to provide a link to your forked repository somewhere in the landing page or the builder. This way, interested users can easily access and review the modifications you've made.**

</p>

</details>
Typebot is open-source under the GNU Affero General Public License Version 3 (AGPLv3). You will find more information about the license and how to comply with it [here](https://docs.typebot.io/self-hosting#license-requirements).
Loading

4 comments on commit 9433d3e

@vercel
Copy link

@vercel vercel bot commented on 9433d3e Jul 24, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Successfully deployed to the following URLs:

docs – ./apps/docs

docs-git-main-typebot-io.vercel.app
docs.typebot.io
docs-typebot-io.vercel.app

@vercel
Copy link

@vercel vercel bot commented on 9433d3e Jul 24, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Successfully deployed to the following URLs:

builder-v2 – ./apps/builder

builder-v2-typebot-io.vercel.app
builder-v2-git-main-typebot-io.vercel.app
app.typebot.io

@vercel
Copy link

@vercel vercel bot commented on 9433d3e Jul 24, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Successfully deployed to the following URLs:

viewer-v2 – ./apps/viewer

bii.bj
1stop.au
wasap.nl
x.cr8.ai
yobot.me
klujo.com
me.cr8.ai
wachat.io
wassep.io
247987.com
8jours.top
aginap.com
ai.mprs.in
bee.cr8.ai
bot.aws.bj
bot.bbc.bj
cat.cr8.ai
finplex.be
jxi.cr8.ai
nepkit.com
pig.cr8.ai
sat.cr8.ai
typebot.io
wachats.me
wsapio.com
blogely.com
bot.aipr.kr
bot.joof.it
bot.kloo.me
broprio.com
bull.cr8.ai
docs.cr8.ai
getyour.sbs
icon.cr8.ai
minipost.uk
mole.cr8.ai
nurraysa.me
team.cr8.ai
wolf.cr8.ai
ai.meant.com
bet7k.online
bot.afric.ai
bot.grace.bj
cinecorn.com
gniorder.com
help.taxt.co
kusamint.com
receita.info
rhino.cr8.ai
score991.org
sheep.cr8.ai
snake.cr8.ai
svhm.mprs.in
tiger.cr8.ai
video.cr8.ai
yoda.riku.ai
zebra.cr8.ai
alvodelas.com
bemestar.club
viewer-v2-typebot-io.vercel.app
mdb.assessoria.rodrigo.progenbr.com
register.thailandmicespecialist.com
mdb.assessoria.desideri.progenbr.com
mdb.assessoria.fernanda.progenbr.com
mdb.assessoria.jbatista.progenbr.com
mdb.assessoria.mauricio.progenbr.com
form.shopmercedesbenzsouthorlando.com
mdb.evento.equipeinterna.progenbr.com
bot.studiotecnicoimmobiliaremerelli.it
mdb.assessoria.boaventura.progenbr.com
mdb.assessoria.jtrebesqui.progenbr.com
pesquisa.escolamodacomproposito.com.br
anamnese.clinicaramosodontologia.com.br
gabinete.baleia.formulario.progenbr.com
mdb.assessoria.carreirinha.progenbr.com
chrome-os-inquiry-system.itschromeos.com
mdb.assessoria.paulomarques.progenbr.com
viewer-v2-git-main-typebot-io.vercel.app
main-menu-for-itschromeos.itschromeos.com
mdb.assessoria.qrcode.ademir.progenbr.com
mdb.assessoria.qrcode.arthur.progenbr.com
mdb.assessoria.qrcode.danilo.progenbr.com
mdb.assessoria.qrcode.marcao.progenbr.com
mdb.assessoria.qrcode.marcio.progenbr.com
mdb.assessoria.qrcode.aloisio.progenbr.com
mdb.assessoria.qrcode.girotto.progenbr.com
mdb.assessoria.qrcode.marinho.progenbr.com
mdb.assessoria.qrcode.rodrigo.progenbr.com
mdb.assessoria.carlosalexandre.progenbr.com
mdb.assessoria.qrcode.desideri.progenbr.com
mdb.assessoria.qrcode.fernanda.progenbr.com
mdb.assessoria.qrcode.jbatista.progenbr.com
mdb.assessoria.qrcode.mauricio.progenbr.com
mdb.assessoria.fernanda.regional.progenbr.com
mdb.assessoria.qrcode.boaventura.progenbr.com
mdb.assessoria.qrcode.jtrebesqui.progenbr.com
mdb.assessoria.qrcode.carreirinha.progenbr.com
mdb.assessoria.qrcode.paulomarques.progenbr.com
mdb.assessoria.qrcode.carlosalexandre.progenbr.com
mdb.assessoria.qrcode.fernanda.regional.progenbr.com

@vercel
Copy link

@vercel vercel bot commented on 9433d3e Jul 24, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please sign in to comment.