Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/sooraj-s-98/blog_app_nextjs_mongodb

Nextjs + MongoDB Blog APP
https://github.com/sooraj-s-98/blog_app_nextjs_mongodb

mongodb nextjs nodejs reactjs

Last synced: 19 days ago
JSON representation

Nextjs + MongoDB Blog APP

Awesome Lists containing this project

README

        

Blog App ❤️(Next.js + MongoDB)

:rocket: [Check out the demo](https://m-dev-tau.vercel.app/) :rocket:


Add MongoDB Atlas Search

Add MongoDB atlas index search See [this](https://docs.atlas.mongodb.com/atlas-search/).
![mongosea](https://user-images.githubusercontent.com/52352285/153125339-46e3238f-5c19-4feb-8f64-4d6af850443e.png)

Environmental variables

Environmental variables in this project include:

- `MONGODB_URI` The MongoDB Connection String (with credentials and database name)
- `WEB_URI` The _URL_ of your web app.
- `CLOUDINARY_URL` (optional, Cloudinary **only**) Cloudinary environment variable for configuration. See [this](https://cloudinary.com/documentation/node_integration#configuration).
- `NODEMAILER_CONFIG` (optional, if using nodemailer **only**) JSON stringified nodemailer config. eg. `{"service":"Gmail","auth":{"user":"[email protected]","pass":"sgbxGJjklmYunbbcGHJaSDROpLKg"}}`

Development

Start the development server by running `yarn dev` or `npm run dev`. Getting started by create a `.env.local` file with the above variables. See [Environment Variables](https://nextjs.org/docs/basic-features/environment-variables).

Deployment

This project can be deployed [anywhere Next.js can be deployed](https://nextjs.org/docs/deployment). Make sure to set the environment variables using the options provided by your cloud/hosting providers.

After building using `npm run build`, simply start the server using `npm run start`.

You can also deploy this with serverless providers given the correct setup.

Guide

:lock: Authentication and Account

- [x] Session-based authentication ([Passport.js](https://github.com/jaredhanson/passport))
- [x] Sign up/Log in/Sign out API
- [x] Authentication via email/password
- [ ] Authentication via OAuth (Google, Facebook, etc.)
- [x] Email verification
- [x] Password change
- [x] Password reset via email

:woman::man: Profile

- [x] Profile picture, username, name, bio, email
- [x] Update user profile

:eyes: Social

- [x] View others' profiles
- [x] Posts and comments
- [x] Search posts