নমস্কার
Areal-timecollaborativewhiteboardapplicationinspiredbyExcalidraw,whereuserscreateshareablecanvasroomsandsketchtogetherwithshapesandfreehandstrokesthatsyncinstantlyacrosseveryconnectedclient.Eachcanvaspersiststoadatabasesoworkisneverlost,andadashboardletsusersmanage,rename,andsharetheircanvaseswithcollaborators.
ArchitectedtheprojectasaTurborepo/pnpmmonorepo,splittingthesystemintoaNext.jsfrontendandtwoindependentbackendservices(HTTP+WebSocket)thatsharecommontypes,adatabaseclient,andconfigthroughinternalworkspacepackages.
BuiltarawWebSocketserverwithwstobroadcastshapecreationandin-progresspencilstrokesinrealtime,trackingroommembershippersocketsoupdatesonlyreachcollaboratorsviewingthesamecanvas.
ImplementedacanvasrenderingenginefromscratchontheHTML5CanvasAPI,supportingrectangle,circle,andfreehandpenciltoolswithlivestrokepreviewswhiledrawingandfullshapehistoryplaybackonload.
DesignedJWT-basedauthenticationwithbcryptpasswordhashingandExpressmiddlewaretoprotectroomandshapeendpointsfromunauthorizedaccess.
ModeledthedatalayerwithPostgreSQLandPrisma,definingrelationsbetweenusers,rooms,andshapes,andsharedthegeneratedclientacrossbothbackendservicesviaaninternaldb-package.
Enforcedend-to-endinputvalidationusingZodschemassharedbetweenthefrontendandbackend,andbuiltacanvasmanagementdashboardsupportingcreate,rename,delete,andslug-basedshareablelinks.
Haveaprojectinmind?
subhajitguchhait04@gmail.com