Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

1 Commit
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Quotora β€” Cyber-Tech Random Quote Generator πŸš€

Android Kotlin Jetpack Compose Material Design 3 MVVM CodeAlpha

Quotora is a futuristic, dark tech-themed Random Quote Generator Android application built with Kotlin 2.0, Jetpack Compose (Material 3), and MVVM Architecture for the CodeAlpha Android Application Development Internship.

The app delivers inspirational, motivational, technology, and philosophical quotes with glowing neon cyan and electric purple accents, edge-to-edge sharp aesthetic, local JSON asset fallback, live REST API quote fetching, bookmarking, and native Android sharing.


πŸ“Έ App Screenshots

Home Screen Saved Quotes
Create Screen Create Screen
Settings Screen About Screen
Create Screen Create Screen

✨ Features Overview

1. πŸ“œ Dynamic & Offline Quote Generator

  • Random Quotes on Demand: Instant generation of quotes with author name and category tag.
  • Animated Card Transitions: Smooth cross-fade and scale animations when loading new quotes.
  • 7 Curated Categories: Filter by Motivation, Tech/Innovation, Life, Success, Wisdom, Philosophy, and Leadership.
  • Category Filter Chips: Scrollable interactive chips for instant category filtering.

2. ⚑ Hybrid Data Engine (REST API + Local Offline Fallback)

  • Live REST API Fetching: Automatically fetches dynamic quotes from live endpoints (Quotable API / ZenQuotes / DummyJSON).
  • Offline Fallback Engine: Built-in 50+ curated quotes in assets/quotes.json. If network is unavailable or API fails, the app seamlessly falls back to offline storage without disrupting user experience.

3. ⭐ Favorites & Bookmarks Management

  • Save favorite quotes with one tap.
  • Dedicated Favorites Screen with real-time search bar to filter by quote text, author, or category.
  • Copy quote text or share directly from saved list.
  • Purge/Clear options with confirmation dialogs.

4. 🎨 Cyber-Tech Aesthetic & Design System

  • Obsidian Dark Cyber Theme: Edge-to-edge layout with sharp cut-corner cards (CutCornerShape).
  • Neon Glow Accents: Vivid Neon Cyan (#00F2FE), Electric Purple (#9D4EDD), and Cyber Lime accents.
  • 3 Color Themes: Switch between Dark Tech, Cyber Neon, and Matrix Green in Settings.

5. πŸ› οΈ Actions & Additional Screens

  • Share Button: Share quotes natively via any social or messaging app (Intent.ACTION_SEND).
  • Copy to Clipboard: Quick copy with Toast feedback.
  • Settings Screen: Toggle theme modes, REST API vs Offline engine, default category preferences.
  • About Screen: Breakdown of app architecture, tech stack, developer bio, and CodeAlpha internship credits.

πŸ—οΈ Architecture & Tech Stack

Quotora strictly adheres to modern Android app development best practices:

  • Language: Kotlin 2.0
  • UI Framework: Jetpack Compose with Material Design 3
  • Architecture: MVVM (Model-View-ViewModel) + Clean Data Layer
  • State Management: Kotlin StateFlow, collectAsState, and ViewModel
  • Data Persistence: SharedPreferences (Favorites & Preferences) + Gson JSON Serializer
  • Networking: HttpURLConnection with Kotlin Coroutines (Dispatchers.IO)
  • Async Execution: Kotlin Coroutines & Flows

Project Directory Structure

Quotora/
β”œβ”€β”€ app/
β”‚   β”œβ”€β”€ src/
β”‚   β”‚   β”œβ”€β”€ main/
β”‚   β”‚   β”‚   β”œβ”€β”€ assets/
β”‚   β”‚   β”‚   β”‚   └── quotes.json             # Local offline 50+ quote dataset
β”‚   β”‚   β”‚   β”œβ”€β”€ java/com/maheswara660/quotora/
β”‚   β”‚   β”‚   β”‚   β”œβ”€β”€ data/
β”‚   β”‚   β”‚   β”‚   β”‚   β”œβ”€β”€ model/Quote.kt      # Data Model with Gson annotations
β”‚   β”‚   β”‚   β”‚   β”‚   └── repository/QuoteRepository.kt # Asset & REST API fallback engine
β”‚   β”‚   β”‚   β”‚   β”œβ”€β”€ ui/
β”‚   β”‚   β”‚   β”‚   β”‚   β”œβ”€β”€ components/CyberComponents.kt  # Custom headers, chips, bottom nav
β”‚   β”‚   β”‚   β”‚   β”‚   β”œβ”€β”€ screens/
β”‚   β”‚   β”‚   β”‚   β”‚   β”‚   β”œβ”€β”€ HomeScreen.kt    # Interactive quote card & generator
β”‚   β”‚   β”‚   β”‚   β”‚   β”‚   β”œβ”€β”€ FavoritesScreen.kt # Bookmarked quotes with search
β”‚   β”‚   β”‚   β”‚   β”‚   β”‚   β”œβ”€β”€ SettingsScreen.kt  # Theme & REST API settings
β”‚   β”‚   β”‚   β”‚   β”‚   β”‚   └── AboutScreen.kt     # App & internship metadata
β”‚   β”‚   β”‚   β”‚   β”‚   β”œβ”€β”€ theme/
β”‚   β”‚   β”‚   β”‚   β”‚   β”‚   β”œβ”€β”€ Color.kt         # Cyber neon color palette
β”‚   β”‚   β”‚   β”‚   β”‚   β”‚   └── Theme.kt         # Custom CutCorner themes
β”‚   β”‚   β”‚   β”‚   β”‚   └── viewmodel/QuoteViewModel.kt # MVVM StateFlow manager
β”‚   β”‚   β”‚   β”‚   └── MainActivity.kt          # Host Activity with Scaffold & Crossfade
β”‚   β”‚   β”‚   └── AndroidManifest.xml
β”‚   └── build.gradle.kts
└── README.md

πŸ› οΈ Build & Installation Instructions

Prerequisites

  • Android Studio Ladybug (2024.2.1+) or IntelliJ IDEA with Android SDK.
  • JDK 17 or higher.
  • Android Device or Emulator running Android 7.0 (API level 24) or higher.

Building Debug APK via CLI

git clone https://github.com/Maheswara660/CodeAlpha_RandomQuoteGenerator.git
cd CodeAlpha_RandomQuoteGenerator
./gradlew assembleDebug

The compiled APK will be generated at: app/build/outputs/apk/debug/app-debug.apk


πŸ“œ License

This project is created for educational and internship portfolio demonstration.

About

πŸš€ A futuristic Cyber-Tech Random Quote Generator Android app built with Kotlin 2.0, Jetpack Compose (Material 3), and MVVM architecture for the CodeAlpha Internship. Features dynamic REST API quote fetching, offline JSON asset fallback, category filtering, favorites bookmarking, and dark neon themes.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Contributors

Languages