An open API service indexing awesome lists of open source software.

https://github.com/codewithalihamza/react-native-chatbot

This is a React Native chatbot application that integrates with OpenAI's API for intelligent conversations. The app is built using Expo and React Native, with TypeScript, and connects to a NestJS backend for handling AI interactions
https://github.com/codewithalihamza/react-native-chatbot

ai app chatbot chatgpt expo gemini integration openai react-native typescript

Last synced: 2 months ago
JSON representation

This is a React Native chatbot application that integrates with OpenAI's API for intelligent conversations. The app is built using Expo and React Native, with TypeScript, and connects to a NestJS backend for handling AI interactions

Awesome Lists containing this project

README

          

# React Native APP Chatbot 🤖

Currently it's in-progress.....

This is a React Native chatbot application that integrates with OpenAI's API for intelligent conversations. The app is built using Expo and React Native, with TypeScript, and connects to a NestJS backend for handling AI interactions.

## Features

- Real-time chat interface
- OpenAI API integration
- Secure backend communication
- Modern UI/UX design
- TypeScript support
- Cross-platform (iOS & Android)

## Tech Stack

- Frontend:

- React Native with Expo
- TypeScript
- Nativewind for styling
- Expo Router for navigation
- Prettier & ESLint for code quality

- Backend (NestJS):
- Repository: [NestJS-AI-Assistant](https://github.com/codewithalihamza/NestJS-AI-Assistant)
- OpenAI API integration
- RESTful API endpoints
- Secure API key management

## Getting Started

1. Install dependencies

```bash
yarn install
```

2. Configure Environment Variables
Create a `.env` file in the root directory with:

```
API_BASE_URL=your_backend_url
```

3. Start the app
```bash
npx expo start
```

## Backend Integration

This app connects to a NestJS backend that handles OpenAI API interactions. The backend code is available at [NestJS-AI-Assistant](https://github.com/codewithalihamza/NestJS-AI-Assistant).

Make sure to:

1. Clone and set up the backend repository
2. Configure your OpenAI API key in the backend
3. Update the API_BASE_URL in your frontend environment

## Development

You can start developing by editing the files inside the **app** directory. This project uses [file-based routing](https://docs.expo.dev/router/introduction).

### Available Scripts

- `yarn start`: Start the Expo development server
- `yarn android`: Start the app on Android
- `yarn ios`: Start the app on iOS
- `yarn lint`: Run ESLint
- `yarn format`: Format code with Prettier

## Styling

This project uses [Nativewind](https://www.nativewind.dev/) for styling, providing a Tailwind CSS-like experience in React Native.

## Code Quality

- [Prettier](https://prettier.io/) for code formatting
- [ESLint](https://eslint.org/) for code linting
- [Husky](https://typicode.github.io/husky/#/) for git hooks

## Resources

- [Expo documentation](https://docs.expo.dev/)
- [React Native documentation](https://reactnative.dev/)
- [OpenAI API documentation](https://platform.openai.com/docs)
- [NestJS documentation](https://docs.nestjs.com/)

## 💫 About Me:

I'm Ali Hamza from Pakistan 🇵🇰, an experienced Full Stack Developer. With a comprehensive understanding of both front-end and back-end technologies, I am dedicated to creating strong and reliable software applications that perform well and meet the needs of the users effectively. 💻🚀

## 💻 Tech Stack:

![JavaScript](https://img.shields.io/badge/javascript-%23323330.svg?style=flat&logo=javascript&logoColor=%23F7DF1E) ![React](https://img.shields.io/badge/react-%2320232a.svg?style=flat&logo=react&logoColor=%2361DAFB) ![Next JS](https://img.shields.io/badge/Next-black?style=flat&logo=next.js&logoColor=white) ![Bootstrap](https://img.shields.io/badge/bootstrap-%238511FA.svg?style=flat&logo=bootstrap&logoColor=white) ![NodeJS](https://img.shields.io/badge/node.js-6DA55F?style=flat&logo=node.js&logoColor=white) ![NestJS](https://img.shields.io/badge/nestjs-%23E0234E.svg?style=flat&logo=nestjs&logoColor=white) ![Express.js](https://img.shields.io/badge/express.js-%23404d59.svg?style=flat&logo=express&logoColor=%2361DAFB) ![CSS3](https://img.shields.io/badge/css3-%231572B6.svg?style=flat&logo=css3&logoColor=white) ![HTML5](https://img.shields.io/badge/html5-%23E34F26.svg?style=flat&logo=html5&logoColor=white) ![TypeScript](https://img.shields.io/badge/typescript-%23007ACC.svg?style=flat&logo=typescript&logoColor=white) ![MongoDB](https://img.shields.io/badge/MongoDB-%234ea94b.svg?style=flat&logo=mongodb&logoColor=white) ![Postgres](https://img.shields.io/badge/postgres-%23316192.svg?style=flat&logo=postgresql&logoColor=white) ![MySQL](https://img.shields.io/badge/mysql-%2300000f.svg?style=flat&logo=mysql&logoColor=white) ![GraphQL](https://img.shields.io/badge/-GraphQL-E10098?style=flat&logo=graphql&logoColor=white) ![TailwindCSS](https://img.shields.io/badge/tailwindcss-%2338B2AC.svg?style=flat&logo=tailwind-css&logoColor=white)

## Stay in touch

- Linkedin - [@syedalihamzaofficial](https://www.linkedin.com/in/syedalihamzaofficial/)
- Website - [Ali Hamza](https://syedalihamzaofficial.blogspot.com/)
- Medium - [@syedalihamzaofficial](https://medium.com/@syedalihamzaofficial)
- YouTube - [@TechnicalHamzaOfficial1](https://www.youtube.com/@TechnicalHamzaOfficial1)