baseline icon indicating copy to clipboard operation
baseline copied to clipboard

Baseline Calender

Open vaibhavgeek opened this issue 3 years ago • 2 comments

Description

This pull request completes Milestone 1 and Milestone 2 of (https://github.com/eea-oasis/baseline-blips/issues/24) which involves creation of backend APIs and circom circuit.

https://github.com/eea-oasis/baseline/tree/feature-calendar-BLIP/examples/calendar

Baseline Calendar is an example project which involves a privacy centric way of scheduling appointments. More details can be found here

Related Issue

https://github.com/eea-oasis/baseline-grants/issues/70

Motivation and Context

To create a fully working implementation of baseline that can be used as another example of the power baseline has.

How Has This Been Tested

All the API endpoints have been tested manually, the circuit has been tested with custom inputs.

Screenshots (if appropriate)

Types of changes

  • [ ] Bug fix (non-breaking change which fixes an issue)
  • [x] New feature (non-breaking change which adds functionality)
  • [ ] Breaking change (fix or feature that would cause existing functionality to change)
  • [ ] Request to be added as a Code Owner/Maintainer

Checklist

  • [x] My code follows the code style of this project.
  • [x] My change requires a change to the documentation.
  • [x] I have updated the documentation accordingly.
  • [x] I have added tests to cover my changes.
  • [x] All new and existing tests passed.
  • [x] I commit to abide by the Responsibilities of Code Owners/Maintainers.

vaibhavgeek avatar Jul 11 '22 17:07 vaibhavgeek

I have created a list of tasks for this project @Manik-Jain / @skosito , please review under the tasks that are marked as completed, the others are still a work under progress. Although when you run the code the WIP code does not hamper the working functionality.

Backend Tasks

  • [x] User Creation API
  • [x] User Authentication API
  • [x] Fetch user via ID API
  • [x] User Set Time Availability API
  • [ ] Schedule Appointment API

Privacy Tasks

  • [x] Circom proof to verify appointment times
  • [x] Setup [Ceremony of Tau]
  • [x] Prove (SnarkJS) with wasm / custom input.json
  • [x] Solidity Smart contracts consumption via API [proof]
  • [x] Solidity Smart contracts consumption via API [verify]

Frontend Tasks

  • [x] Create Login Page
  • [x] Create Scheduling Page
  • [ ] Set an appointment
  • [ ] Appointment Page

vaibhavgeek avatar Jul 29 '22 22:07 vaibhavgeek

@vaibhavgeek great work overall, but smaller PRs, and code relevant to the current PR would be much more easy to review.

Manik-Jain avatar Aug 01 '22 04:08 Manik-Jain

The following project has been done as specified in the scope of the grant, a demo video has been uploaded (https://www.youtube.com/watch?v=_eVsyjWFXhw) which showcases Baseline Calendar.

The code can further reused for multiple different application which require membership proof.

vaibhavgeek avatar Oct 14 '22 02:10 vaibhavgeek

Link to technical code walkthrough - https://www.youtube.com/watch?v=Tp6tShwglaw

GoldenBit0 avatar Oct 18 '22 16:10 GoldenBit0

@vaibhavgeek Could you please push your latest changes? I see the comments, but not the updated code. Probably you missed to push your changes. The last commit was made on October 24, 2022 to remove console logs.

https://github.com/eea-oasis/baseline/pull/480/commits

Manik-Jain avatar Oct 26 '22 14:10 Manik-Jain

@Manik-Jain I have made changes to the files requested in the frontend as well, thanks for reviewing the pull request in detail.

vaibhavgeek avatar Oct 26 '22 14:10 vaibhavgeek