Skip to content

Latest commit

ย 

History

49 Commits

Folders and files

NameName
Last commit message
Last commit date
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

๐ŸŽ™๏ธ GradReady Interview App

Flutter Powered by Google Cloud Powered by Gemini

An AI-powered mobile app built with Flutter that lets users practice interview questions and live presentations using real-time voice transcription and AI-generated feedback.

๐Ÿš€ Features

  • ๐ŸŽค Real-time voice recording and transcription
  • ๐Ÿค– Intelligent AI feedback on:
    • Clarity of speech
    • Tone and delivery
    • Use of filler words
    • Overall presentation quality
  • ๐Ÿ“‹ Dynamic question generation based on job roles
  • ๐Ÿง  Presentation mode with topic-based feedback
  • ๐Ÿ”„ Continuous practice mode

๐Ÿ“ฑ Platforms Supported

  • ๐Ÿ“ฑ Android
  • ๐Ÿ iOS
  • ๐Ÿ–ฅ Web
  • ๐Ÿง Linux
  • ๐ŸŽ macOS
  • ๐ŸชŸ Windows

๐Ÿ›  Requirements

  • Flutter SDK 3.7+
  • Android Studio / VS Code
  • Google API service account (for Speech-to-Text)
  • Gemini API key from Google Ai Studio

๐Ÿ“ Setup Instructions

1. Clone the Repository

git clone https://github.com/rikue29/grad_ready.git
cd grad_ready

2. Firebase Setup

  1. Go to Firebase Console
  2. Create a new project or select an existing one
  3. Add your app to the Firebase project:
    • For Android: Register your app with your package name
    • For iOS: Register your app with your bundle ID
  4. Download the configuration file:
    • For Android: google-services.json
    • For iOS: GoogleService-Info.plist

Android Setup

  1. Place google-services.json in the android/app directory
  2. Add the following to your android/build.gradle:
    dependencies {
        classpath 'com.google.gms:google-services:4.4.0'
    }
  3. Add this to your android/app/build.gradle:
    apply plugin: 'com.google.gms.google-services'

iOS Setup

  1. Place GoogleService-Info.plist in the ios/Runner directory
  2. Add the following to your ios/Podfile:
    pod 'Firebase/Core'
  3. Run pod install in the ios directory

For more detailed setup instructions, refer to the Firebase Flutter documentation.

3. API Setup

๐Ÿ” Gemini API (Google Ai Studio)

  1. Go to Google Ai Studio
  2. Create a new project or select an existing one
  3. Click on the "Settings" icon (โš™๏ธ) in the top right corner
  4. Navigate to the "API" tab
  5. Click "Get API Key"
  6. Copy the API key and add it to your .env file:
    GEMINI_API_KEY=your_gemini_api_key_here

๐Ÿ—ฃ Google Speech-to-Text Setup

  1. Go to Google Cloud Console
  2. Create a new project or select an existing one
  3. Enable the following APIs:
    • Speech-to-Text API
    • Cloud Translation API (if needed)
Create Service Account
  1. Navigate to IAM & Admin > Service Accounts
  2. Click "Create Service Account"
  3. Fill in the details:
    • Service account name: gradready-speech
    • Service account ID: gradready-speech
    • Description: Service account for GradReady Speech-to-Text
  4. Click "Create and Continue"
  5. Grant the following roles:
    • Speech-to-Text API User
    • Storage Object Viewer
  6. Click "Continue" then "Done"
Create Service Account Key
  1. Find your service account in the list
  2. Click the three dots (โ‹ฎ) on the right
  3. Select "Manage keys"
  4. Click "Add key" > "Create new key"
  5. Select JSON format
  6. Click "Create"
  7. Save the JSON file as service-account.json in your project's assets directory
Configure Flutter Project
  1. Add the service account file to your Flutter project:
    • Place service-account.json in assets/ directory
  2. Update pubspec.yaml to include the service account file:
    flutter:
      assets:
        - assets/service-account.json

For more detailed setup instructions, refer to the official documentation:

4. Environment Setup

Create a .env file in the project root with your API keys:

GEMINI_API_KEY=your_gemini_api_key_here

5. Install Dependencies

flutter pub get

6. Run the App

flutter run

๐Ÿงช Troubleshooting

Voice Input Issues

If the app doesn't pick up your microphone:

  • On Android emulator: Enable mic input in extended controls
  • Use a real Android phone for best results

๐Ÿ“ธ Screenshots

App Overview

Splash Screen Login Page Sign Up Page

Main Screen

Home Page Settings Page Profile Page

Interview Features

Mock Interview Interview Question Interview Analysis

Live Presentation Features

Presentation Homepage Live Presentation Speech
Live Presentation Analysis 1 Live Presentation Analysis 2

Upload Audio Analysis

Audio Analysis

๐Ÿง‘โ€๐Ÿ’ป Contributors

  • Ariq Ulwan
  • Nur Akmal
  • Nurin Adni
  • Shane Kennedy

Special thanks to KitaHack for the opportunity

๐Ÿ“„ License

This project is open source and available under the MIT License.

๐Ÿ“ฌ Feedback & Support

For any questions, feedback, or support, please open an issue in the repository.

๐ŸŒŸ Star the Project

If you find this project useful, please give it a star โญ on GitHub!

About

No description, website, or topics provided.

Resources

Stars

2 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages