Skip to content

shengbojia/Notes

Repository files navigation

Notes


Android app for keeping track of ideas, on the go.

Table of Contents

Introduction

Quickly capture your ideas no matter when or where inspiration strikes. Written in Kotlin, Notes allows for a stable and efficient user experience by adhering to Google's latest standard for Android Architecure.

Features

Things you can do with Notes:

  • View a list of saved notes
  • Press the "+" button to add a new note
  • Edit an existing note by tapping on it
  • Notes are timestamped based on the last save
  • Long press to enter multi-selection mode
  • Quickly clear all notes from the main screen
  • Multilingual support for English, French, Chinese, and many more

Showcase

Add a new Note

Add a Note

Open and view a Note

Open a Note

Edit an existing Note

Edit a Note

Multilingual support

Other features

Mutlti-select to Delete Extensive support for a variety of languages and locales

Libraries Used

  • Android Jetpack - Collection of libraries that reduce boilerplate code and simplifies complex tasks.
    • Foundation - Components for backwards compatibility, testing and Kotlin language support.
      • AppCompat - AppCompatActivity offers support for ActionBar.
      • Android KTX - Can write more concise, idiomatic Kotlin code.
      • Test - An Android testing framework for unit and runtime UI tests.
    • Android Architecture - Keeps app more robust, maintainable, and testable.
      • Data Binding - Declaratively bind observable data sources to UI components.
      • Lifecycles - Components respond automatically to lifecycle events.
      • LiveData - Data objects that notify views when the underlying database changes.
      • Navigation - Keeps navigation between fragments simple.
      • Room - Provides layer of abstraction over SQLite for more robust database access.
      • ViewModel - Store UI-related data between state changes and handles fragment to fragment communication. Easily schedule asynchronous tasks.
    • UI - Widgets and helpers to make app presentable and clean.
  • Kotlin
    • Kotlin Coroutines for managing background threads with simplified code and reducing needs for callbacks

License

Notes is under the MIT license. See the LICENSE for more information.