Skip to content

SnapTalk is an engaging social media platform built using Node.js for the backend and EJS for the frontend. It allows users to seamlessly share snapshots of their daily lives with a vibrant community.

License

Notifications You must be signed in to change notification settings

NK-Works/SnapTalk

Repository files navigation

SnapTalk 🎉

A Social Media Platform for Sharing Daily Snaps 📸

Welcome to SnapTalk! This is an interactive web-based platform that allows users to share moments from their daily life through snaps (photos) with a community of people. Built with Node.js for the backend and EJS for templating, SnapTalk offers a seamless way to connect, engage, and share memories with others.

Features ✨

  • User Authentication: Secure sign-up, login, and logout functionality 🔒.
  • Post Snaps: Upload and share images with captions 🖼️.
  • Like & Comment: Interact with others by liking snaps and leaving comments ❤️💬.
  • Feed: View a feed of snaps from other users 📰.
  • Responsive Design: Optimized for mobile and desktop views 📱💻.
  • Profile Page: View your profile and the snaps you've shared 👤.
  • Real-time Updates: See real-time interactions (likes and comments) on snaps ⏱️.

Tech Stack 🛠️

  • Backend: Node.js, Express.js
  • Frontend: EJS, HTML5, CSS3, JavaScript
  • Database: MongoDB for data storage 🗄️
  • Authentication: Passport.js for user authentication 🔐
  • File Storage: Multer for handling file uploads 📂

Getting Started 🚀

Prerequisites

  • Node.js installed
  • MongoDB running locally or through a cloud service like MongoDB Atlas

Installation

  1. Clone the repository:

    git clone https://github.com/your-username/SnapTalk.git
  2. Install the dependencies:

    npm install

    or

    yarn install
  3. Set up your .env file with the following variables:

MONGOOSE_URI=your_mongo_db_connection_string
  1. Run the development server:
    npm start
    or
    yarn start

Usage 🚀

  • Signup/Login: Create an account or log in to post and interact with snaps.
  • Post a Snap: Upload an image with an optional caption to share with the community.
  • Like and Comment: Engage with other users' posts by liking and commenting on them.
  • View Feed: Browse through the latest snaps posted by other users.

Contributing

We welcome contributions to SnapTalk! Please check out our Contributing Guidelines to get started. For code of conduct and community standards, review our Code of Conduct.

Contributor License Agreement (CLA) 📝

By contributing to SnapTalk, you agree that your contributions will be licensed under the MIT License.

Thank You! 🙏

Thank you for contributing to SnapTalk! Your efforts help make this project better for everyone. We appreciate your time and contributions!

About

SnapTalk is an engaging social media platform built using Node.js for the backend and EJS for the frontend. It allows users to seamlessly share snapshots of their daily lives with a vibrant community.

Topics

Resources

License

Code of conduct

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published