-
Notifications
You must be signed in to change notification settings - Fork 7
Client-Side applicant server #82
Description
Continuation of #68
DcxServer - Issuer
The @dcx-protocol/server
package implements a polling mechanism for DcxIssuer
. It is not a true server in the sense that its not running something like express to accept incoming http requests. Rather, it simply polls listening for new incoming records with a certain protocolPath (i.e. application). For now, that will be good enough.
DcxServer - Applicant
The @dcx-protocol/server
package doesn't have the same mechanism for DcxApplicant
because DcxApplicant
is intended to be used on client-side (browsers). As such, we expect developers to be running their own local dev framework (next, react, angular, etc) and then install the applicant package into that project. It would, however, be nice if we could come up with some kind of simple server-like mechanism to add to the server package that injects the dcx applicant class and runs a server.
Ideas to Try
User Stories
- As a dev, I want to easily install the dcx server and run an applicant client app
- As a dev, I want to customize the applicant to work with my server
- As a dev, I want to do minimal FE coding to get started quickly
Func Reqs
- Create
server/applicant-server.ts
and import dcx-applicant and dcx-common - Instantiate
new DcxApplicant
- Add a server to the
start
method - Implement a basic frontend containing example app to demo applicant flow
- Use the dcx handshake manifest and/or phone/email MFA
Next.js Func Reqs
- Install nextjs
DcxApplicant.start
runs a next.js server (pages router)
DWN Server Func Reqs
- Install @web5/dwn-server
DcxApplicant.start
runs a the http server from within dwn-server