diff --git a/README.md b/README.md index e74f5f6a..0f219168 100644 --- a/README.md +++ b/README.md @@ -1,18 +1,22 @@ - # QuickMem -**QuickMem** is an Android application designed to help users learn efficiently through flashcards, similar to Quizlet. The app leverages modern Android development practices, including Kotlin, Jetpack Compose, Dagger Hilt, and more, to provide a seamless and user-friendly experience for managing and mastering various subjects. +**QuickMem** is an Android application designed to enhance learning through flashcards. It helps users efficiently memorize and review various subjects by offering a flashcard-based learning approach, similar to popular apps like Quizlet and Anki. The app is built using modern Android technologies, including Kotlin, Jetpack Compose, Dagger Hilt, and more, ensuring a smooth and engaging user experience. ## Features -- User authentication and onboarding -- Task and memory management -- Data storage using DataStore -- Dependency injection with Dagger Hilt -- Modern UI with Jetpack Compose -- Network operations with Ktor and Retrofit -- Image loading with Coil -- Logging with Timber +- **User Authentication & Onboarding**: Secure sign-up and sign-in process with user account management. +- **Flashcard & Study Set Management**: Create, edit, and manage flashcards and study sets for different subjects. +- **Progress Tracking**: Track study progress and flashcard performance over time. +- **Customizable Flashcard Modes**: Choose from various study modes to reinforce learning. +- **Daily Reminders**: Get reminders to review flashcards and stay on track with learning goals. +- **Network Operations**: Sync data and flashcards with the server using Ktor and Retrofit. +- **Image Support**: Add images to flashcards for better context and memorization using Coil. +- **Logging & Debugging**: Built-in logging for debugging and performance monitoring with Timber. +- **Data Storage**: Local data storage using DataStore to persist user data and flashcards. +- **Daily Notifications**: Schedule daily notifications for reminders and study sessions. +- **AI-Powered Features**: Create smart flashcards and study sets using AI algorithms for better learning. +- **Multi-Language Support**: Support for multiple languages and localization for a global audience. +- **Multi-Method Study**: Use different study methods like flip, multiple-choice, and fill-in-the-blank for flashcards. ## Installation @@ -42,27 +46,30 @@ ## Usage 1. Launch the app on your device. -2. Follow the onboarding process. -3. Start managing your tasks and memories. +2. Follow the onboarding process to set up your profile. +3. Create and manage your flashcards and study sets. +4. Review flashcards, track progress, and get daily reminders for efficient studying. ## Project Structure -- `app/src/main/java/com/pwhs/quickmem/`: Contains the main application code. -- `app/src/main/res/`: Contains the resource files (strings,drawable etc.). +- `app/src/main/java/com/pwhs/quickmem/`: Contains the main application code and features related to flashcard management, user authentication, and study modes. +- `app/src/main/res/`: Contains resource files like strings, images, and layouts. - `app/build.gradle.kts`: Build configuration for the app module. - `.github/workflows/`: Contains GitHub Actions workflows for CI/CD. ## Backend -The backend has important info like VPS, email, and Google service, and because we want it safe we are not publicizing it right now, you can check it later or email me. + +The app utilizes a backend for syncing data, flashcards, and user information. For security reasons, sensitive information such as VPS details and Google services are not publicly disclosed. Please contact me via email for further information. ## Contributing -This is graduation project for the course of "Mobile Application Development" at the FPT Polytechnic College. Contributions are not accepted at the moment. + +This project is part of my graduation project for the "Mobile Application Development" course at FPT Polytechnic College. At the moment, contributions are not being accepted. ## Acknowledgements -- [Jetpack Compose](https://developer.android.com/jetpack/compose) -- [Dagger Hilt](https://dagger.dev/hilt/) -- [Ktor](https://ktor.io/) -- [Retrofit](https://square.github.io/retrofit/) -- [Coil](https://coil-kt.github.io/coil/) -- [Timber](https://github.com/JakeWharton/timber) +- [Jetpack Compose](https://developer.android.com/jetpack/compose) – Modern UI toolkit for Android. +- [Dagger Hilt](https://dagger.dev/hilt/) – Dependency injection library for Android. +- [Ktor](https://ktor.io/) – Asynchronous HTTP client for Kotlin. +- [Retrofit](https://square.github.io/retrofit/) – Type-safe HTTP client for Android. +- [Coil](https://coil-kt.github.io/coil/) – Image loading library for Android. +- [Timber](https://github.com/JakeWharton/timber) – A logger for Android.