chatjet-ai
v0.1.0
Published
<a href=""> <br> <img alt="Chatjet.ai – Enterprise-grade AI chatbots for your website and docs" src="https://github.com/chatjet-ai/chatjet.ai/blob/main/public/static/Group%209.png?raw=true)" </br> <h1 align="center"></h1> </a>
Downloads
1
Readme
Chatjet.ai is a platform for building GPT-powered chatbots. It takes Markdown, Markdoc, MDX, HTML and plain text files (from a GitHub repo, website or file uploads), and creates embeddings that you can use to create a prompt, for instance using the companion Chatjet.ai React or Web component. Chatjet.ai also offers analytics, so you can gain insights on how visitors interact with your chatbot.
Documentation
To use the Chatjet.ai platform as is, please refer to the Chatjet.ai documentation.
Our Tech Stack
Chatjet.ai is built on top of the following stack:
- Next.js - framework
- Vercel - hosting
- Typescript - language
- Tailwind - CSS
- Upstash - Redis and rate limiting
- Supabase - database and auth
- Stripe - payments
- Plain - support chat
- Fathom - analytics
Schema
The schema is defined in schema.sql. Create a Supabase database and paste the content of this file into the SQL editor. Then run the Typescript types generation script using:
npx supabase gen types typescript --project-id <supabase-project-id> --schema public > types/supabase.ts
where <supabase-project-id>
is the id of your Supabase project.
Auth provider
Authentication is handled by Supabase Auth. Follow the Login with GitHub and Login with Google guides to set it up.
Setting environment variables
A sample file containing required environment variables can be found in example.env. In addition to the keys for the above services, you will need keys for Upstash (rate limiting and key-value storage), Plain.com (support chat), and Fathom (analytics).
Using the React and Web components
Chatjet.ai comes with React and Web components that make it easy to build a prompt interface on top of the Chatjet.ai API. With a single line of code, you can provide a prompt interface to your React application. Follow the steps in the Chatjet.ai docs to get started, or explore the source code.
Also, try out the Chatjet.ai starter template for a fully working Next.js + Tailwind project.
Usage
Currently, the Chatjet.ai API has basic protection against misuse when making requests from public websites, such as rate limiting, IP blacklisting, allowed origins, and prompt moderation. These are not strong guarantees against misuse though, and it is always safer to expose an API like Chatjet.ai's to authenticated users, and/or in non-public systems using private access tokens. We do plan to offer more extensive tooling on that front (hard limits, spike protection, notifications, query analysis, flagging).
Data retention
OpenAI keeps training data for 30 days. Read more: OpenAI API data usage policies.
Chatjet.ai keeps the data as long as you need to query it. If you remove a file or delete a project, all associated data will be deleted immediately.