A web interface for interacting with Satoshi AI, featuring a chat interface with authentication.
- Firebase Authentication
- Real-time chat interface
- Protected routes for authenticated users
- Integration with Satoshi AI backend API
- React 19
- TypeScript
- Firebase Authentication
- React Router v6
- Tailwind CSS with DaisyUI components
- Axios for API requests
- Node.js (version 16 or higher)
- npm or yarn
- Firebase account (for authentication)
Create a .env file in the root directory with the following variables:
REACT_APP_API_URL=your_api_url
REACT_APP_FIREBASE_API_KEY=your_firebase_api_key
REACT_APP_FIREBASE_AUTH_DOMAIN=your_firebase_auth_domain
REACT_APP_FIREBASE_PROJECT_ID=your_firebase_project_id
REACT_APP_FIREBASE_STORAGE_BUCKET=your_firebase_storage_bucket
REACT_APP_FIREBASE_MESSAGING_SENDER_ID=your_firebase_messaging_sender_id
REACT_APP_FIREBASE_APP_ID=your_firebase_app_id
# Install dependencies
npm install
# Start the development server
npm startThe application will be available at http://localhost:3000.
This application integrates with the Satoshi AI backend API. A Postman collection is included in the root directory for API testing.
npm start- Runs the app in development modenpm test- Launches the test runnernpm run build- Builds the app for productionnpm run eject- Ejects from Create React App
src/
├── components/ # Reusable UI components
├── contexts/ # React contexts (Auth, Chat)
├── pages/ # Page components
│ ├── Home.tsx # Main chat interface
│ └── Login.tsx # Authentication page
├── services/ # API services
│ └── api.ts # API client and endpoints
└── firebase.ts # Firebase configuration
[License information here]