Skip to content

Latest commit

 

History

History
289 lines (249 loc) · 14.1 KB

README.md

File metadata and controls

289 lines (249 loc) · 14.1 KB

StudyAssistant

Android Ios

Kotlin Swift API Jetpack Compose material


GitHub code size in bytes


Your Ultimate Academic Organizer

📚 Convenient Organization of Classes

Divide all classes, subjects and assignments by educational organizations – colleges, schools, courses, universities, etc. Work comfortably with each of them and get the most out of your learning processes.

👥 Share with Friends

Stay connected with your friends! Add them to your network and share your schedules and homework from any organization. Share valuable information, stay in sync, and help each other succeed!

⏰ Flexible Scheduling

Design your recurring schedules with ease and make one-time adjustments for specific days. Change class durations, swap subjects, and keep a history of all schedule changes so you’re always on top of your time management.

📝 Smart Homework Management

Simplify your homework routine! Quickly add tasks and link them directly to your upcoming classes. During lessons, the app automatically determines the next subject, saving you time and effort.

📊 Workload Statistics

Stay ahead of your tasks with real-time workload tracking! Monitor your weekly workload right on the home screen, and get detailed statistics on the number of tasks for each day, helping you plan your time more effectively.

🔔 Smart Notifications

Never miss a beat! Receive timely notifications about high workloads, incomplete assignments, and alerts for the beginning or end of lessons. Keeping up-to-date with your schedule has never been easier!

✅ Create Your Todo List

Organize your tasks effortlessly! Create and manage your personal TODO list, ensuring that you never miss an important deadline and stay one step ahead in your studies.


Start today with the Study Assistant app—a powerful tool to make your learning more efficient and organized! 🚀


Info

We do not share your account data with third parties without your consent. All information is securely stored on our Firestore servers (Data of schedules, tasks, etc. are currently stored only in your phone's memory).

Screenshots

Login Screen Register Screen Forgot Screen Verification Screen
Schedule Overview Class Bottom Sheet Schedule Details Vertical Details
Tasks Overview Tasks Overview 2 Homeworks Todos
Organizations Organizations 2 Subjects Employee
Profile Friends Share Schedule Share Tasks
Daily Schedule Editor Week Schedule Editor Class Editor Homeworks Editor

Markets

Service Free version Subscription version
Github
Fdoroid In progress
RuStore In planned In planned
Play Market In planned In planned
App gallery In planned In planned
App Store In planned In planned

Technical capabilities

Flavor Crashlytics Firestore Messaging Reminders
Github ✓ (GMS) FMS
Fdoroid Only Network
RuStore ✓ (GMS) FCM, RUSTORE
Google ✓ (GMS) FCM
Huawei In planned In planned In planned (HCM, FMS)
Apple In progress In planned (APNS) In planned

Project Dependencies

This project utilizes the following technologies and libraries:

📐 Architecture & Design Patterns

💾 Data & Storage

  • Kodein: Dependency injection framework for Kotlin Multiplatform.
  • SQLDelight: Type-safe SQL for Kotlin Multiplatform.
  • filekit: A library for file management.

🌐 Networking & API

🎨 UI & Navigation

🛠️ Android Specific

📅 Utilities

🛠️ Tooling & Build Systems

This list provides an overview of the key technologies and libraries used in this Kotlin Multiplatform project. For detailed documentation and usage, please refer to the linked resources.

Project Modules

graph LR;
    androidApp --> shared
    iosApp --> shared

    shared --> core

    subgraph one [Core]
    direction LR;
    core --> common & ui & domain & data
    data --> remote & database
    end

    shared --> features

    subgraph two [Features]
    direction LR;
    features --> navigation-impl --> navigation-api 
    features --> preview-impl --> preview-api
    features --> auth-impl --> auth-api
    features --> schedule-impl --> schedule-api
    features --> tasks-impl --> tasks-api
    features --> info-impl --> info-api
    features --> profile-impl --> profile-api
    features --> settings-impl --> settings-api
    features --> users-impl --> users-api
    features --> editor-impl --> editor-api
    end
Loading

License

Copyright 2024 Stanislav Aleshin

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.