Skip to content

thefaraazkhan/Dev-Diary

Repository files navigation

DevDiary

DevDiary is a blog-like social media web app designed for developers and others to share their thoughts in a blog format. Users can follow each other and view posts from the users they follow on their home screen. Additionally, users can engage in public chat conversations with each other.

Features

  • User Authentication: Implemented session-based authentication from scratch, providing secure login and registration functionality without relying on external libraries like Passport.
  • RESTful API: Built a robust API with authentication through web tokens, enabling secure communication between the client and server.
  • Security Features: Implemented input sanitization and added CSRF tokens to protect against cross-site scripting (XSS) attacks and other security vulnerabilities.
  • Post Search: Integrated database indexing and AJAX to enable efficient post search functionality for a better user experience.
  • Public Chat: Leveraged web sockets using Socket.io to create a real-time public chat feature, allowing users to engage in conversations with each other.
  • MVC Architecture: Developed the web app following the Model-View-Controller (MVC) architectural pattern, enhancing code organization and maintainability.

Technologies Used

  • JavaScript
  • Bootstrap 5
  • Node.js
  • Express
  • MongoDB
  • Socket.io
  • Webpack

Installation

  1. Clone the repository: git clone https://github.com/your-username/DevDiary.git
  2. Install dependencies: npm install
  3. Set up the MongoDB connection in the appropriate configuration file.
  4. Start the server: npm start
  5. Access the application at http://localhost:3000.

Usage

  1. Create an account or log in to an existing account.
  2. Share your thoughts by creating blog-like posts.
  3. Follow other users to see their posts on your home screen.
  4. Engage in public chat conversations with other users.
  5. Explore, connect, and engage with the DevDiary community.

Contributing

Contributions are welcome! If you find any issues or have suggestions for improvements, please feel free to submit a pull request or open an issue.

About

A blogging app for developers.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published