A simple voice-based note-taking webapp, built on the MERN stack.
Authenticated state maintained across different pages with React's useContext
API. Two higher-order components, PrivateRoute
and PublicRoute
, return react-router
routes based on authentication status. AuthService
handles authentication endpoints, and note-taking relies on the SpeechRecognition
interface from the Web Speech API.
Node with Express backend. Uses Passport.js
for issuing JSON web tokens to users, Mongoose
for querying users and notes, and bcrypt
for password hashing. Frontend served via Express route.