+
Skip to content

heidi37/bird-journal

Repository files navigation

Bird Journal

This is an application for tracking your observations in the wild. When you upload a photo you have the option of getting suggestions for the bird's Common Name, Latin Name an a fun fact using AI.

Live Project

screenshot of nature Journal

How It's Made:

This is a node.js/Express API, using EJS templates and a MongoDB database. I built this for #100devs.

I originally had all my application logic in server.js but I separated the logic based on MVC architecture.

Tech Used:

  • Javascript
  • node.js
  • Express
  • EJS
  • MVC
  • MongoDB
  • Mongoose
  • Cloudinary
  • Multer
  • Passport
  • Gemini Flash 1.5 API

Optimizations

  • Use a middleware to compress large photos
  • Use a WYSIWYG editor for entering observations
  • Add a list of other posts about the same bird on the entry page
  • Add the ability to have "friends" on the app with shortcuts to their posts
  • Add ability to post multiple photos

Lessons Learned

CRUD

I learned about implementing the CRUD operations in a full stack web application.

.env

The .env file is where you hide secrets and keys that should not be exposed to the public.

MongoDB & Mongoose

I learned about connecting to MongoDB and Mongoose to simplify access the database.

I learned how to use different names for your collections inside the application.

The userId on an entry should be the data type "ObjectId".

Cloudinary

I learned how to utilize Cloudinary for image hosting.

Related Projects

Let's Do Brunch App | Repo
screenshot of Let's Do Brunch web application
My Portfolio | Repo
screenshot of web development portfolio built with Python

About

Full stack web application using Node.js, Express, EJS, MongoDB and vanilla Javascript.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published
点击 这是indexloc提供的php浏览器服务,不要输入任何密码和下载