GithubHelp home page GithubHelp logo

anonymous961 / campusswap Goto Github PK

View Code? Open in Web Editor NEW
2.0 1.0 0.0 3.44 MB

Welcome to campusSwap! ๐ŸŽ“ A project designed for individuals looking to buy or sell items within their university or college campus community. With campusSwap, you can easily connect with others nearby to trade textbooks, gadgets, and more. Join us in simplifying the process of finding and exchanging goods right where you are. Happy swapping! ๐Ÿš€

Home Page: https://campusswap.onrender.com/

JavaScript 23.13% HTML 0.74% CSS 0.56% TypeScript 75.57%
expressjs monogodb neondb postgresql reactjs sequelize socket-io

campusswap's Introduction

CampusSwap

Welcome to campusSwap, your go-to platform for trading and swapping goods within the campus community! Whether you're a student looking to sell textbooks, trade gadgets, or even find a roommate, campusSwap provides a seamless solution for buying, selling, and swapping items within your university or college campus.

Features

  • User Authentication: Secure user authentication system allows users to sign up, log in, and manage their profiles.
  • Product Listings: Easily create, edit, and delete product listings with detailed descriptions and images.
  • Search and Filter: Efficient search and filter functionality to find products based on categories, keywords, or location.
  • Real-time Chat: Integrated real-time chat system using Socket.IO for instant communication between buyers and sellers.
  • Hybrid Database: Utilizes a hybrid database structure with MongoDB for flexibility and PostgreSQL for relational data using Sequelize ORM.
  • Responsive Design: Fully responsive design ensures optimal viewing and interaction experience across devices.

Tech Stack

  • Frontend: React.js
  • Backend: Express.js
  • Database: MongoDB, PostgreSQL
  • ORM: Sequelize
  • Real-time Communication: Socket.IO

Installation

  1. Clone the repository:
git clone https://github.com/your-username/campusSwap.git
  1. Navigate to the project directory:
cd campusSwap

2.1 For Backend

cd server
  • Install dependencies
yarn
  • Set up envrironment variables:
#create .env file and it should look like this
MYPORT=4000
RANDOM=123
MONGO_URI=<MONGODB_URL>
SECRET=<SECRET_PHRASE>
DATABASE_URL=<POSTGRESSQL_URL>
FRONTEND_URL=<FRONTEND_URL>
  • run server
yarn run dev

2.2 For frontend

cd client
  • Install dependencies
yarn
  • Set up envrironment variables:
#create .env file and it should look like this
VITE_APP_BACKEND_URL=<BACKEND_URL>
  • run frontend
yarn run dev
  1. Open your browser and navigate to http://localhost:5173 to view the application.

Contributing

Contributions are welcome! If you'd like to contribute to CampusSwap, please follow these steps:

  1. Fork the repository.
  2. Create a new branch (git checkout -b feature/improvement).
  3. Make your changes.
  4. Commit your changes (git commit -am 'Add new feature').
  5. Push to the branch (git push origin feature/improvement).
  6. Create a new Pull Request.

campusswap's People

Contributors

anonymous961 avatar

Stargazers

Atrayee Jha avatar  avatar

Watchers

 avatar

campusswap's Issues

S3 bucket integration for uploading file

Is your feature request related to a problem? Please describe.
Currently, server is deployed on render.com and it is storing images locally. There is some limitation to the storage of server.

image


Describe the solution you'd like
Creating a S3 bucket and integrating it to the server.

Email verification

Is your feature request related to a problem? Please describe.
Currently, anyone can create account and list anything, which is not good.

Describe the solution you'd like
Adding a function to the server to send verification email. Adding a verification page to frontend.

Describe alternatives you've considered
using a third party service.

Admin panel missing

Is your feature request related to a problem? Please describe.
Yes, people can spam random and obscene picture. So we need to remove it manually.

Describe the solution you'd like
diving in 2 parts.

  • creating a frontend for admin panel
  • integrating endpoints

Describe alternatives you've considered
NA

Additional context
NA

Chat is malfunctioning after texting something

Describe the bug
After trying chat with anyone. Only last message is showing instead of showing all previous messsages.

To Reproduce
Steps to reproduce the behavior:

  1. Go to chats
  2. Click on any chat
  3. Scroll down to recent chat
  4. Start typing anything
  5. It will only show the last text
  6. Change chat room and return
  7. It will show all chats

Expected behavior
Show all chats

Screenshots
image

About page is incomplete

Is your feature request related to a problem? Please describe.
Currently , I've removed about page. Still thinking of what to add in about page.

Delete button is not given to user to delete their item

Is your feature request related to a problem? Please describe.
It is necessarry to provide user a delete button. Otherwise the item is uploaded, It can't be removed by user

image

Describe the solution you'd like
Verify the user and provide delete button.

Mark as sold feature integration with backend

Is your feature request related to a problem? Please describe.
No

Describe the solution you'd like
Toggle button is already there in frontend. Just need to integrate it with backend.

Describe alternatives you've considered
Delete button for owner of products.

Additional context
image

Pagination on home page and in profile page

Is your feature request related to a problem? Please describe.
Home page is fetching all the items which is not necessary.

image

Describe the solution you'd like
Adding pagination to the endpoints. page and limits.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.