Skip to content

๐Ÿฆ Phoenix AI is an advanced chatbot built using โš›๏ธ React, ๐ŸŽจ TailwindCSS, ๐ŸŒ Node.js, ๐Ÿ” Appwrite, and ๐Ÿค– Gemini API. It delivers real-time, intelligent conversations with a sleek UI, secure authentication, and seamless scalability, ensuring a smooth and interactive user experience. ๐Ÿš€โœจ

Notifications You must be signed in to change notification settings

Prakhar-002/PHOENIX

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

14 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

PHOENIX โžบ The Evolution of AI Conversations

Phoenix AI โ€“ ๐Ÿฆ A smart chatbot built with โš›๏ธ React, ๐ŸŽจ TailwindCSS, ๐ŸŒ Node.js, ๐Ÿ” Appwrite, and ๐Ÿค– Gemini API, delivering real-time, intelligent conversations with a sleek UI, secure authentication, and seamless scalability. ๐Ÿš€โœจ




๐Ÿ’ป Tech Stack โ›…๏ธ๐Ÿž๏ธ

React Badge ย  Framer ย  Appwrite Badge ย  Markdown Badge ย  npm Badge ย  Node.js Badge ย  Tailwind CSS Badge ย  HTML5 Badge ย  CSS Badge ย  JavaScript Badge ย  Vercel Badge ย  Netlify Badge


Phoenix AI Features ๐Ÿ‚๐Ÿงธ

Phoenix AI is an AI-powered chatbot that not only generates intelligent responses but also stores and organizes conversations efficiently. Below are its key use cases:

AI-Powered Conversations ๐ŸŒ

  • Smart Responses ๐Ÿค– Get real-time, AI-generated replies powered by Gemini API.
  • Context Awareness ๐Ÿง  Phoenix AI remembers previous chats for meaningful interactions.
  • Markdown Support ๐Ÿ“ Format messages with bold, italic, and code snippets.
  • Syntax Highlighting ๐Ÿ–ฅ๏ธ AI-generated code is displayed beautifully with React Syntax Highlighter.

Conversation Management ๐Ÿ’พ

  • Auto-Generated Titles ๐Ÿท๏ธ AI automatically creates titles for saved conversations.
  • Chat History ๐Ÿ“œ View past interactions anytime in an organized interface.
  • Real-Time Storage โšก Conversations are stored securely in Appwrite Database.

User Authentication ๐Ÿ” & Security ๐Ÿ‘ฎ๐Ÿปโ€โ™‚๏ธ

  • Sign Up & Log In ๐Ÿ”‘ Secure user authentication powered by Appwrite.
  • Password Reset โœ‰๏ธ Reset your password via a secure email link.
  • Session Management ๐Ÿ”„ Stay logged in with Appwrite's secure session handling.

User Experience ๐Ÿ–Œ๏ธ & UI Enhancements ๐ŸŽจ

  • Smooth Animations ๐ŸŽญ Powered by Framer Motion for an interactive feel.
  • Real-Time Navigation โšก Instant page transitions with React Router DOM.
  • Customizable UI ๐ŸŽจ Modify styles easily using TailwindCSS.

Deployment ๐Ÿฆพ & Scalability โš–๏ธ

  • Cloud-Ready ๐ŸŒ Can be deployed on Netlify, Vercel, or Render.
  • Fast & Lightweight โšก Optimized React app for smooth performance.
  • Extensible ๐Ÿ”ง Can be integrated with additional AI models in the future.

๐Ÿ’ก Phoenix AI is your all-in-one smart chatbot that combines AI-powered conversations, secure authentication, and seamless user experience in a single platform. Enjoy chatting with intelligence! ๐ŸŽ‰


Technologies Used ๐Ÿ‘ฉ๐Ÿปโ€๐Ÿ’ป๐Ÿค–

  • @google/generative-ai ๐Ÿค– Integration with Gemini API for AI-powered chat.
  • appwrite ๐Ÿ” Backend-as-a-Service for authentication and database management.
  • framer-motion ๐ŸŽญ Smooth animations and transitions for an interactive UI.
  • prop-types โœ… Type-checking for React components to ensure reliability.
  • react โš›๏ธ Core UI library for building the frontend.
  • react-dom ๐ŸŒ Handles React rendering in the browser.
  • react-helmet ๐ŸŽญ Manages SEO-friendly meta tags dynamically.
  • react-markdown ๐Ÿ“„ Renders Markdown content inside React.
  • react-router-dom ๐Ÿš Enables client-side routing for navigation.
  • react-syntax-highlighter ๐Ÿ–ฅ๏ธ Displays code snippets with syntax highlighting.
  • remark-gfm โœ๏ธ Extends Markdown with GitHub Flavored Markdown (GFM) support.

Installation Guide ๐Ÿš€

Clone ๐Ÿ—๏ธ the repository ๐Ÿ”

For Windows ๐Ÿ–ฅ๏ธ

git clone https://github.com/Prakhar-002/PHOENIX.git
cd PHOENIX

For Linux and macOS ๐Ÿ

git clone https://github.com/Prakhar-002/PHOENIX.git
cd PHOENIX

Install ๐Ÿ“ฅ dependencies ๐Ÿ“ฆ

npm install

Create a .env โš™๏ธ file in the root directory and add the following โžก๏ธ

VITE_APPWRITE_PROJECT_ID='Your Appwrite Id'
VITE_GEMINI_API_KEY='Get you Api key from Gemini Api'
VITE_APPWRITE_DATABASE_ID='Make your own appwrite database and collections'

Start โ–ถ๏ธ the application ๐Ÿš€

npm run dev

๐ŸŒ Access the app in your browser at โžก๏ธ

๐Ÿ”— http://localhost:3000

๐ŸŽ‰ Happy Coding! ๐Ÿง‘โ€๐Ÿ’ป๐Ÿ”ฅ

Netlify Status


Folder Structure ๐Ÿ“’๐Ÿ—‚๏ธ

  ๐Ÿ“ฆ PHOENIX/SRC/ 
        โ”‚  
        โ”‚  
        โ”œโ”€โ”€ ๐Ÿ—‚๏ธ api  
        โ”‚   โ”‚  
        โ”‚   โ””โ”€โ”€ ๐Ÿ“‘ googleAi.js        ๐Ÿ”ธ API integration for Google AI services  
        โ”‚  
        โ”‚  
        โ”œโ”€โ”€ ๐Ÿ—‚๏ธ assets                 ๐Ÿ”ธ Static assets like images, icons, and logos
        โ”‚   โ”‚    
        โ”‚   โ”œโ”€โ”€ ๐Ÿ“‘ assets.js  
        โ”‚   โ”œโ”€โ”€ ๐Ÿ–ผ๏ธ avatar.jpeg  
        โ”‚   โ”œโ”€โ”€ ๐Ÿ–ผ๏ธ banner.webp  
        โ”‚   โ”œโ”€โ”€ ๐ŸŽจ favicon.svg  
        โ”‚   โ”œโ”€โ”€ ๐ŸŽจ logo-dark.svg  
        โ”‚   โ”œโ”€โ”€ ๐ŸŽจ logo-icon.svg  
        โ”‚   โ””โ”€โ”€ ๐ŸŽจ logo-light.svg  
        โ”‚  
        โ”‚  
        โ”œโ”€โ”€ ๐Ÿ—‚๏ธ components             ๐Ÿ”ธ Reusable UI components  
        โ”‚   โ”‚  
        โ”‚   โ”œโ”€โ”€ ๐Ÿ“‘ AiResponse.jsx  โš›๏ธ
        โ”‚   โ”œโ”€โ”€ ๐Ÿ“‘ Avatar.jsx  โš›๏ธ
        โ”‚   โ”œโ”€โ”€ ๐Ÿ“‘ Button.jsx  โš›๏ธ
        โ”‚   โ”œโ”€โ”€ ๐Ÿ“‘ Logo.jsx  โš›๏ธ
        โ”‚   โ”œโ”€โ”€ ๐Ÿ“‘ Menu.jsx  โš›๏ธ
        โ”‚   โ”œโ”€โ”€ ๐Ÿ“‘ MenuItem.jsx  โš›๏ธ
        โ”‚   โ”œโ”€โ”€ ๐Ÿ“‘ PageTitle.jsx  โš›๏ธ
        โ”‚   โ”œโ”€โ”€ ๐Ÿ“‘ Progress.jsx  โš›๏ธ
        โ”‚   โ”œโ”€โ”€ ๐Ÿ“‘ PromptField.jsx  โš›๏ธ
        โ”‚   โ”œโ”€โ”€ ๐Ÿ“‘ PromptPreloader.jsx  โš›๏ธ
        โ”‚   โ”œโ”€โ”€ ๐Ÿ“‘ Sidebar.jsx  โš›๏ธ
        โ”‚   โ”œโ”€โ”€ ๐Ÿ“‘ Skeleton.jsx  โš›๏ธ
        โ”‚   โ”œโ”€โ”€ ๐Ÿ“‘ Snackbar.jsx  โš›๏ธ
        โ”‚   โ”œโ”€โ”€ ๐Ÿ“‘ TextField.jsx  โš›๏ธ
        โ”‚   โ”œโ”€โ”€ ๐Ÿ“‘ TopAppBar.jsx  โš›๏ธ
        โ”‚   โ””โ”€โ”€ ๐Ÿ“‘ UserPrompt.jsx  โš›๏ธ
        โ”‚  
        โ”‚  
        โ”œโ”€โ”€ ๐Ÿ—‚๏ธ contexts               ๐Ÿ”ธ Context API for state management  
        โ”‚   โ”‚  
        โ”‚   โ””โ”€โ”€ ๐Ÿ“‘ SnackbarContext.jsx  โš›๏ธ
        โ”‚  
        โ”‚  
        โ”œโ”€โ”€ ๐Ÿ—‚๏ธ hooks                  ๐Ÿ”ธ Custom React hooks  
        โ”‚   โ”‚  
        โ”‚   โ”œโ”€โ”€ ๐Ÿ“‘ userPromptPreloader.js  
        โ”‚   โ”œโ”€โ”€ ๐Ÿ“‘ useSnackbar.js  
        โ”‚   โ””โ”€โ”€ ๐Ÿ“‘ useToggle.js  
        โ”‚  
        โ”‚  
        โ”œโ”€โ”€ ๐Ÿ—‚๏ธ lib                    ๐Ÿ”ธ Utility libraries  
        โ”‚   โ”‚  
        โ”‚   โ”œโ”€โ”€ ๐Ÿ“‘ appWrite.js        ๐Ÿ”น Handles AppWrite API integration  
        โ”‚   โ””โ”€โ”€ ๐Ÿ“‘ googleAi.js        ๐Ÿ”น Handles Google AI functions  
        โ”‚  
        โ”‚  
        โ”œโ”€โ”€ ๐Ÿ—‚๏ธ pages                  ๐Ÿ”ธ Main application pages  
        โ”‚   โ”‚  
        โ”‚   โ”œโ”€โ”€ ๐Ÿ“‘ Conversation.jsx  โš›๏ธ
        โ”‚   โ”œโ”€โ”€ ๐Ÿ“‘ ConversationError.jsx  โš›๏ธ
        โ”‚   โ”œโ”€โ”€ ๐Ÿ“‘ Greetings.jsx  โš›๏ธ
        โ”‚   โ”œโ”€โ”€ ๐Ÿ“‘ Login.jsx  โš›๏ธ
        โ”‚   โ”œโ”€โ”€ ๐Ÿ“‘ Register.jsx  โš›๏ธ
        โ”‚   โ”œโ”€โ”€ ๐Ÿ“‘ ResetLink.jsx  โš›๏ธ
        โ”‚   โ”œโ”€โ”€ ๐Ÿ“‘ ResetPassword.jsx  โš›๏ธ
        โ”‚   โ””โ”€โ”€ ๐Ÿ“‘ RootError.jsx  โš›๏ธ
        โ”‚  
        โ”‚  
        โ”œโ”€โ”€ ๐Ÿ—‚๏ธ routers                ๐Ÿ”ธ Application routing and navigation  
        โ”‚   โ”‚  
        โ”‚   โ”œโ”€โ”€ ๐Ÿ—‚๏ธ actions            ๐Ÿ”ธ Form actions & authentication flows  
        โ”‚   โ”‚   |
        โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“‘ appAction.js  
        โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“‘ conversationAction.js  
        โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“‘ loginAction.js  
        โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“‘ registerAction.js  
        โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“‘ resetLinkAction.js  
        โ”‚   โ”‚   โ””โ”€โ”€ ๐Ÿ“‘ resetPasswordAction.js  
        โ”‚   โ”‚  
        โ”‚   โ”‚  
        โ”‚   โ”œโ”€โ”€ ๐Ÿ—‚๏ธ loaders            ๐Ÿ”ธ Data loaders for fetching data before rendering  
        โ”‚   โ”‚   |
        โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“‘ appLoader.js  
        โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“‘ conversationLoader.js  
        โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“‘ loginLoader.js  
        โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“‘ registerLoader.js  
        โ”‚   โ”‚   โ”œโ”€โ”€ ๐Ÿ“‘ resetLinkLoader.js  
        โ”‚   โ”‚   โ””โ”€โ”€ ๐Ÿ“‘ resetPasswordLoader.js  
        โ”‚   โ”‚  
        โ”‚   โ”‚  
        โ”‚   โ””โ”€โ”€ ๐Ÿ“‘ routes.jsx         ๐Ÿ”น Defines all application routes  โš›๏ธ
        โ”‚  
        โ”‚  
        โ”œโ”€โ”€ ๐Ÿ—‚๏ธ utils                  ๐Ÿ”ธ Utility/helper functions  
        โ”‚   โ”‚  
        โ”‚   โ”œโ”€โ”€ ๐Ÿ“‘ deleteConversation.js  
        โ”‚   โ”œโ”€โ”€ ๐Ÿ“‘ generateID.js  
        โ”‚   โ”œโ”€โ”€ ๐Ÿ“‘ logout.js  
        โ”‚   โ””โ”€โ”€ ๐Ÿ“‘ toTitleCase.js  
        โ”‚  
        โ”‚  
        โ”œโ”€โ”€ ๐Ÿ“‘ App.jsx                ๐Ÿ”น Root component of the application  
        โ”œโ”€โ”€ ๐Ÿ“‘ index.css              ๐Ÿ”น Global styles  
        โ”œโ”€โ”€ ๐Ÿ“‘ main.jsx               ๐Ÿ”น Application entry point  
        โ”œโ”€โ”€ ๐Ÿ“‘ .env                   ๐Ÿ”น Environment variables (Make your own)  
        โ”œโ”€โ”€ ๐Ÿ“‘ .gitignore             ๐Ÿ”น Git ignore file to exclude unnecessary files  
        โ”œโ”€โ”€ ๐Ÿ“‘ eslint.config.js       ๐Ÿ”น ESLint configuration for code linting  
        โ”œโ”€โ”€ ๐Ÿ“‘ index.html             ๐Ÿ”น Main HTML file for the app  
        โ”œโ”€โ”€ ๐Ÿ“‘ package-lock.json      ๐Ÿ”น Lock file for dependencies  
        โ”œโ”€โ”€ ๐Ÿ“‘ package.json           ๐Ÿ”น Project dependencies and scripts  
        โ”œโ”€โ”€ ๐Ÿ“‘ postcss.config.js      ๐Ÿ”น PostCSS configuration for styling  
        โ”œโ”€โ”€ ๐Ÿ“‘ tailwind.config.js     ๐Ÿ”น Tailwind CSS configuration  
        โ”œโ”€โ”€ ๐Ÿ“‘ vite.config.js         ๐Ÿ”น Vite configuration for build setup  
        โ””โ”€โ”€ ๐Ÿ“‘ Readme.md              ๐Ÿ”น Project documentation  

About

๐Ÿฆ Phoenix AI is an advanced chatbot built using โš›๏ธ React, ๐ŸŽจ TailwindCSS, ๐ŸŒ Node.js, ๐Ÿ” Appwrite, and ๐Ÿค– Gemini API. It delivers real-time, intelligent conversations with a sleek UI, secure authentication, and seamless scalability, ensuring a smooth and interactive user experience. ๐Ÿš€โœจ

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published