Agora Vote API V2

Project Duration: 350 hrs

About:

Agora API is a vote counting API that powers applications such as Agora Web App, Agora Android and Agora IOS. It is written in Scala and uses the the Agora vote counting library under hood. Agora API V1 has been around for quite some time now and is powered by the Play Framework, with V2 we aim at increasing performance by moving to a newer framework (ZIO 2) and adding more features to the API

Deliverables:

  • Rewrite application using Scala 2 (or probably Scala 3) and ZIO
  • Implement all provided API endpoints (a swagger doc will be provided).
  • Dockerize the application for easy deployment to cloud
  • Deploy application to cloud

Required Skills:

  • Scala
  • Functional programming
  • ZIO 2
  • JWT & OAUTH2 Authentication
  • REST API development

Mentors:

  1. Abanda Ludovic
  2. Bomen Derick