Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/haminimi/messaging-app
The messaging app includes authentication and authorization functionality using JWT, following Jamstack architecture.
https://github.com/haminimi/messaging-app
authentication authorization express jamstack jwt messaging-app mongodb nodejs react theodinproject
Last synced: 25 days ago
JSON representation
The messaging app includes authentication and authorization functionality using JWT, following Jamstack architecture.
- Host: GitHub
- URL: https://github.com/haminimi/messaging-app
- Owner: Haminimi
- Created: 2024-02-21T17:52:38.000Z (9 months ago)
- Default Branch: main
- Last Pushed: 2024-05-22T12:47:53.000Z (6 months ago)
- Last Synced: 2024-09-29T14:01:26.826Z (about 1 month ago)
- Topics: authentication, authorization, express, jamstack, jwt, messaging-app, mongodb, nodejs, react, theodinproject
- Language: JavaScript
- Homepage: https://messaging-app-rosy.vercel.app
- Size: 217 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# ChitChatHub - Messaging App
![Screenshot of the ChitChatHub app.](/screenshot.png)
## Description
The messaging app includes authentication and authorization functionality using JWT, following Jamstack architecture. [The project](https://www.theodinproject.com/lessons/nodejs-messaging-app) is a part of [The Odin Project](https://www.theodinproject.com/dashboard)'s Node course within [The Odin Project](https://www.theodinproject.com/dashboard)'s curriculum. The Odin Project provides a high quality web development education maintained by an open source community.
## Live Preview and Backend
You can check out [the app here](https://messaging-app-rosy.vercel.app/), and [the backend code here](https://github.com/Haminimi/messaging-app-backend).
If you don't want to create a new account, you can log in with these credentials:
```js
[email protected]
Password123!
```
## Main Features
- **Jamstack**
- **Auth with JWT**
- **Profile Customization****To Do:**
- [ ] **Sending Media**
- [ ] **Show Online Friends**
- [ ] **Group Chats**
- [ ] **Friend Requests**
- [ ] **Updating Password**
- [ ] **Responsive Design**
## Tech
**The project is built with:**
- React
- Node.js/Express
- MongoDB
- Vanilla CSS**Tools**
- Visual Studio Code
- Git
## Covered Topics
**This section mentions the main topics covered during project work and prior lessons**
- Jamstack
- SPA / React Router
- Authentication and Authorization / JWT
- Password Hashing
- REST API
## Reflection
The project provided a great practice in authentication, authorization, REST API, connecting the frontend with the backend, working with MongoDB, and various other topics. There is a lot of space for expanding the app, however, I am very satisfied with the outcome and everything that I have picked up along the course of the project.Note on JWT verification: Even though it is inconsistent approach, I have used both the Passport JWT strategy and custom JWT verification for the purpose of practice.
## Credits
- Icon used for the favicon image is one of the [Email icons created by Pixel perfect - Flaticon](https://www.flaticon.com/free-icons/email).
- [User icons created by Smashicons - Flaticon](https://www.flaticon.com/free-icons/user)
- [User icons created by kmg design - Flaticon](https://www.flaticon.com/free-icons/user)
## Happy coding!