A private clubhouse app where users can create anonymous messages.
Built as part of the The Odin Project curriculum to practice authentication, authorization, sessions, and role-based permissions.
- User signup and login
- Password hashing with bcrypt
- Authentication using Passport.js
- Session-based login system
- Create and view messages
- Secret member passcode
- Admin-only delete functionality
- Conditional UI rendering based on user role
- Node.js
- Express.js
- PostgreSQL
- Passport.js
- EJS
- CSS
- Can read messages anonymously
- Can create messages
- Can see message authors and timestamps
- Can delete messages
- Authentication vs authorization
- Session management
- Password hashing
- Route protection
- Role-based access control
- Backend security basics