What it does
- Accounts with bcrypt-hashed passwords and sessions stored in MongoDB.
- Structured recipes with ingredients, numbered steps, prep and cook times, servings and a photo.
- Search by name, description or ingredient, with shareable result URLs.
- Photo uploads to Cloudinary, or to disk when Cloudinary isn't set up.
- Server-rendered pages where all user content is escaped, so scripts can't be injected.
