# BAIC (Brand AI Chat) BAIC is a web-based AI chat application that allows users to interact with various AI assistants using different tones of voice. It is designed to provide a customized chat experience for brand-related tasks. ## Features * **Microsoft Authentication:** Secure login using Microsoft Azure AD. * **Multiple Assistants:** Choose from a list of specialized AI assistants. * **Tone of Voice (TOV):** Select the desired tone of voice for the AI's responses. * **Conversation History:** View and manage past conversations. * **Real-time Chat:** Interactive chat interface with streaming responses (simulated via loading states). * **Privacy Focused:** Dedicated privacy policy page. ## Tech Stack * **Frontend:** HTML5, CSS3, Vanilla JavaScript * **Authentication:** Microsoft Azure Active Directory (MSAL flow implemented manually) * **Backend/Integration:** Make.com (Webhooks) * **Icons:** FontAwesome * **Fonts:** Barclays Effra ## Project Structure * `index.html`: Main entry point for the application. * `style.css`: Global styles. * `js/`: Contains JavaScript logic. * `script.js`: Main application logic (event listeners, initialization). * `authorization.js`: Handles Microsoft authentication and token management. * `html.js`: HTML templates and DOM manipulation helpers. * `variables.js`: Configuration variables (API endpoints, Client IDs). * `privacy/`: Contains the privacy policy page. * `fonts/`: Custom font files. ## Setup & Configuration 1. **Clone the repository:** ```bash git clone git@bitbucket.org:zlalani/baic.git ``` 2. **Configuration:** The application configuration is located in `js/variables.js`. * `make_url`: The endpoint for the Make.com webhook. * `tenant_id`: Microsoft Azure Tenant ID. * `client_id`: Microsoft Azure Client ID. 3. **Running the App:** Since this is a static web application, you can serve it using any static file server. * **Using Python:** `python3 -m http.server` * **Using Node.js (http-server):** `npx http-server` * Or simply open `index.html` in your browser (though some features like auth redirects might require a proper server environment). ## License Proprietary.