Coding period update - Week 2-3

Keynotes

Repository: GitHub - khuongduy354/joplin-sync-lib
Demo: joplin-sync-lib/src/sample_app at master · khuongduy354/joplin-sync-lib · GitHub
This week, I've implemented 2 pull methods, resource upload feature, fix some bugs from previous week, delta logics is added, and the overall delta sync flow is constructed as well. My plan next week is to add setup document allowing users to run locally, and add unit test so that my mentors can assess the project easier as well.

Progress

  • Implemented Resource upload for createItems(), driver code with png file
  • Implemented basic_delta, which compare and return items based on timestamps.
  • Implemented getItemsMetadata(), the method returns list of items' metadata which have changed since a timestamp provided by users, and return a new timestamp.
  • Implement getItem(), which returns a full file content (as a string), from item's id provided by user.
  • Constructed a delta flow based on timestamp & getItemsMetadata(), documented in sync api docs

Plan

  • Implement E2E encryption service
  • Implement download functions, allowing download file content or blob, not just metadata.
  • Add unit tests on delta logics, getItems,... , currently only createItems() have test
  • Add documents to guide users to host locally and demonstrate basic usage.

Problems

  • Resource upload bug: don't create a metadata file on sync target, only blob file is uploaded.