Skip to content

zenlyticgreg/zoe-ios-app

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Zoe - AI Analytics Assistant

Zoe is a native iOS app that provides seamless access to Zenlytic's AI-powered analytics chat feature. Built with SwiftUI, it offers a beautiful and intuitive interface for users to interact with their data through natural language conversations.

Features

  • Secure Authentication: Login with your Zenlytic credentials
  • AI Chat Interface: Natural language conversations with your data
  • Modern UI: Beautiful SwiftUI interface following iOS design guidelines
  • Session Management: Automatic login persistence
  • Real-time Messaging: Instant responses from Zenlytic's AI
  • Error Handling: Comprehensive error handling and user feedback

Requirements

Installation

  1. Clone the repository

    git clone <repository-url>
    cd Zoe
  2. Open in Xcode

    open Zoe.xcodeproj
  3. Configure your device

    • Connect your iOS device or use the iOS Simulator
    • Select your target device in Xcode
  4. Build and Run

    • Press Cmd + R or click the Run button in Xcode
    • The app will install and launch on your device

Usage

First Time Setup

  1. Launch the app - You'll see the Zoe welcome screen
  2. Enter your credentials - Use your Zenlytic email and password
  3. Sign In - Tap the "Sign In" button to authenticate
  4. Start chatting - Once authenticated, you'll be taken to the chat interface

Using the Chat

  1. Ask questions - Type your analytics questions in natural language
  2. Get insights - Zoe will analyze your data and provide insights
  3. Continue conversations - Ask follow-up questions to dive deeper
  4. Logout - Use the logout button in the top-right corner when done

Architecture

The app follows a clean architecture pattern with the following components:

  • ZoeApp.swift: Main app entry point with dependency injection
  • ContentView.swift: Root view that handles authentication state
  • LoginView.swift: Beautiful login interface with form validation
  • ChatView.swift: Modern chat interface with message bubbles
  • AuthManager.swift: Authentication state management
  • ZenlyticService.swift: API communication layer

API Integration

The app integrates with Zenlytic's API endpoints:

  • POST /api/auth/login - User authentication
  • GET /api/auth/validate - Token validation
  • POST /api/chat/new - Send chat messages

Security

  • Secure Storage: Authentication tokens stored securely in UserDefaults
  • HTTPS Only: All API communication uses HTTPS
  • Token Validation: Automatic token validation on app launch
  • Session Management: Proper logout and session cleanup

Customization

Colors and Styling

The app uses a blue accent color scheme that can be customized in:

  • Assets.xcassets/AccentColor.colorset/Contents.json
  • Individual view files for specific styling

API Configuration

To modify API endpoints or add new features, update:

  • ZenlyticService.swift - API communication
  • AuthManager.swift - Authentication logic

Troubleshooting

Common Issues

  1. Authentication Failed

    • Verify your Zenlytic credentials
    • Check your internet connection
    • Ensure your account is active
  2. Chat Not Working

    • Verify you're logged in
    • Check your internet connection
    • Try logging out and back in
  3. App Won't Launch

    • Ensure you're using iOS 17.0+
    • Clean build folder in Xcode (Cmd + Shift + K)
    • Delete and reinstall the app

Debug Mode

For development and debugging:

  1. Open Xcode
  2. Set breakpoints in relevant files
  3. Use the debug console to view logs
  4. Check network requests in the Network tab

Contributing

  1. Fork the repository
  2. Create a feature branch
  3. Make your changes
  4. Test thoroughly
  5. Submit a pull request

License

This project is licensed under the MIT License - see the LICENSE file for details.

Support

For support and questions:

Version History

  • v1.0.0 - Initial release with authentication and chat features

Built with ❤️ for Zenlytic users

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published