Skip to content

Tejaskt/kt_NotesApplication

Repository files navigation

📒 Notes Application

A simple and efficient notes application built using Android Studio. This application allows users to create, edit, and delete notes.

✨ Features

  • 📝 Create new notes
  • 🖊 Edit existing notes
  • 🗑 Delete notes
  • 👥 User-friendly interface
  • 💾 Persistent storage of notes
  • 🏗 MVVM Setup
  • 🛠 HILT for dependency injection
  • 🔄 Coroutines for asynchronous programming
  • 🌐 API Integration using Retrofit
  • 🛡 Interceptors for authenticated flows
  • ✅ Handling validations and loading state
  • 🔐 Complete Signup/Login flow

🚀 Installation

  1. Clone the repository:

    git clone https://github.com/Tejaskt/kt_NotesApplication.git
  2. Open the project in Android Studio:

    • Open Android Studio.
    • Click on File > Open.
    • Navigate to the cloned project directory and click OK.
  3. Build and run the project:

    • Click on the Run button or use the shortcut Shift + F10.

📚 Usage

  1. Creating a Note:

    • Click on the button to create a new note.
    • Enter the title and content of the note.
    • Click 💾 Save to save the note.
  2. Editing a Note:

    • Click on the note you want to edit.
    • Make the necessary changes.
    • Click 💾 Save to update the note.
  3. Deleting a Note:

    • Long press on the note you want to delete.
    • Confirm the deletion.

🛠 Architecture

The application follows the Model-View-ViewModel (MVVM) architecture pattern to ensure a clean separation of concerns.

📦 Dependency Injection

The application uses HILT for dependency injection, which helps to manage dependencies efficiently and improve code maintainability.

⚡ Asynchronous Programming

Kotlin Coroutines are used for asynchronous programming, ensuring smooth and efficient performance.

🌐 API Integration

Retrofit is used for API integration, providing a robust and easy-to-use HTTP client for Android.

🛡 Authenticated Flows

Interceptors are implemented to handle authenticated API requests seamlessly.

✅ Validation and Loading State

Comprehensive validation logic and loading state management are included to enhance the user experience.

🔐 Signup/Login Flow

A complete signup and login flow is implemented to manage user authentication securely and efficiently.

🤝 Contributing

Contributions are welcome! Please open an issue or submit a pull request for any changes.

  1. Fork the repository.

  2. Create a new branch:

    git checkout -b feature_branch
  3. Make your changes and commit them:

    git commit -m "Description of changes"
  4. Push to the branch:

    git push origin feature_branch
  5. Open a pull request.

📜 License

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

📞 Contact

About

Note Application.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages