Skip to content

Latest commit

 

History

History
718 lines (643 loc) · 32.5 KB

README.md

File metadata and controls

718 lines (643 loc) · 32.5 KB

🎲 PlayCafe Website

Welcome to the [PlayCafe] website repository! This project is part of GirlScript Summer of Code (GSSoC) Extended 🚀. Our cafe offers a warm and exciting environment for board game enthusiasts to gather, relax, and enjoy great food. This repository contains the code for the cafe's official website, aiming to create a fun and immersive online presence.


📚 Table of Contents

  1. ✨ Project Overview
  2. 🌐 Demo
  3. 🔥 Features
  4. 🛠️ Tech Stack
  5. ⚙️ Getting Started / 📥 Installation
  6. 📌 Usage
  7. 🔍 API Documentation
  8. 🤝 Contributing
  9. 🎯 Open Source Programs
  10. 🌟 Mentors
  11. 👀 Our Contributors
  12. ⭐ Support
  13. 📄 License
  14. 📬 Contact Us

✨ Project Overview

The PlayCafe Website project is an exciting open-source initiative under GSSoC 2024 Extended. We aim to build a modern and engaging website for the cafe, where visitors can learn about our games, book tables, and stay updated with our events and offers.

🎯 Goal: Create a seamless, user-friendly, and vibrant digital space for board game lovers.

🌐 Demo

🔗 Check out the live version of the website: Live Demo

🔥 Features

Feature Description
💻 Responsive Design Optimized for all screen sizes—from mobile to desktop.
🗓️ Event Booking System Users can book tables for upcoming events and game nights.
🎲 Game Library Browse the collection of board games available at the cafe.
📸 Photo Gallery Sneak peeks into the cafe's ambiance and game nights.
📞 Contact Form Easily get in touch with the cafe for any queries or feedback.
🎉 Special Offers Keep an eye out for exciting online deals and promotions!

🛠️ Tech Stack

Technology Description
Frontend JavaScript, React JS, Tailwind CSS
Backend Node.js, Express.js
Database MongoDB/MySQL
Deployment Vercel

⚙️ Getting Started / 📥 Installation

Ready to contribute to this fun project? Here's how to set up your development environment:
Make sure you follow our contributing guidelines: here.

  1. Fork this repository 🍴 and clone it to your local machine:
    git clone https://github.com/RamakrushnaBiswal/PlayCafe.git
  2. Install dependencies 🧩:
    npm install
  3. Run the development server ⚡:
    npm run dev
  4. Open your browser at http://localhost:3000 to see the project running! 🌟

Docker Setup

Set up using Dockerfile (Make sure you have Docker installed):

  1. Build Docker Image
    docker build -t playcafe .
  2. Run Docker Image
    docker run -p 5173:5173 -p 3000:3000 playcafe
  3. Open your browser at http://localhost:5173 to see the project running! 🌟

📌 Usage

Once the application is running, you can:

  • Navigate through the website to explore different sections.
  • Book a table for an event.
  • Contact us for inquiries.

🔍 API Documentation

The PlayCafe website communicates with a backend API to manage data. Here’s a brief overview of available API endpoints:

HTTP Method Endpoint Description
GET /api/games Fetches the list of available games.
POST /api/bookings Books a table for an event.
GET /api/events Retrieves upcoming events.
POST /api/contact Sends a message through the contact form.
GET /api/users Retrieves a list of registered users.
GET /api/users/:id Fetches details of a specific user by ID.
PUT /api/users/:id Updates user information based on user ID.
DELETE /api/users/:id Deletes a user from the system by ID.
GET /api/menus Retrieves the menu items available at PlayCafe.
POST /api/orders Places a new order for food and beverages.
GET /api/orders/:id Fetches details of a specific order by ID.
GET /api/reviews Retrieves customer reviews for the cafe.
POST /api/reviews Submits a new review for a game or event.
GET /api/bookings/:id Retrieves details of a specific booking by ID.
DELETE /api/bookings/:id Cancels a specific booking by ID.

Troubleshooting

If you encounter issues while setting up or using the PlayCafe website, here are some common problems and solutions:

1. Issue: Unable to install dependencies

Solution: Make sure that you have Node.js installed. Run npm install again after confirming the Node.js installation.

2. Issue: Website not starting

Solution: Run npm start and ensure that the correct port is open. If the error persists, check for any error logs in the terminal and ensure no other applications are using the same port.

3. Issue: Database connection error

Solution: Verify that your database is running, and the connection details (host, username, password) are correct in the .env file.

4. Issue: CSS/JavaScript not loading properly

Solution: Check if all static assets are being served correctly. Ensure that the paths to your CSS and JS files are correct and that they are being compiled if you're using a build tool like Webpack or Gulp.

5. Issue: CORS (Cross-Origin Resource Sharing) error

Solution: Ensure the backend server has appropriate CORS policies configured to allow the frontend to communicate with it. If you're working with APIs, make sure that the necessary headers are included in server responses.

6. Issue: Environment variables not working

Solution: Double-check the .env file configuration. Ensure that all required variables are defined and that the file is correctly loaded by your server or build system.

Debugging Tips

  • Use console.log statements to track the flow of the code.
  • Check browser developer tools for any front-end errors.
  • Look into server logs for detailed error messages.
  • Use Logging Libraries: Incorporate logging libraries like winston or morgan for better server-side error tracking.
  • Check Permissions: If you're running the server on a remote machine, ensure that you have the necessary permissions (e.g., read/write access to necessary directories).
  • API Testing: Use tools like Postman or Insomnia to test API endpoints individually if issues arise in data fetching.
  • Browser DevTools: Use Chrome DevTools (F12) or Firefox Developer Tools (F12) for debugging.
  • React DevTools: Install React Developer Tools browser extension for component debugging.
  • Network Tab: Monitor API calls and responses in the Network tab.
  • Console Patterns: Use console.table() for debugging arrays and objects.

Resources

🤝 Contributing

We love contributions! 💙 Whether you're a participant in GSSoC or an open-source enthusiast, we welcome your input. Here's how you can contribute:

  • 📝 Create Issues: If you find any bugs or have feature suggestions, feel free to open an issue.
  • 🔨 Submit Pull Requests: Got a fix or new feature? Fork the repo, create a new branch, and submit a pull request.

🎯 Open Source Programs

This project is part of GirlScript Summer of Code 2024 (GSSoC) Extended, an initiative to help aspiring developers get involved in the open-source community.

GSSoC 2024 Extd
Hacktober fest 2024

-----------------------------------------------------

💵 How to Contribute

1. Fork the repository to your GitHub account.

2. Clone the forked repository to your local machine.

git clone https://github.com/<github_username>/PlayCafe.git

3. Create a new branch for your changes.

git checkout -b feature/your-feature

4. Make your changes, whether they're bug fixes, new features, or improvements.

5. add the change in your branch

git add .

6. Commit your changes with descriptive commit messages.

git commit -m "Add your descriptive commit message here"
git push origin feature/your-feature

7. Open a Pull Request (PR) against the main repository.

Additional Notes

Start working on the issue, Don't wait to get it assigned by the maintainers

Your every contribution counts, Thanks for contributing to PlayCafe

-----------------------------------------------------

🌟 Mentors

Special thanks to our amazing mentors who are guiding this project! 🙌

Feel free to reach out for guidance and support throughout the development process!

👥 Our Contributors

We extend our heartfelt gratitude to all the amazing contributors who have made this project what it is today. Your efforts are driving PlayCafe to new heights! 🚀

🌟 Show some love by giving a ⭐ to our repository!


RamakrushnaBiswal
Ramakrushna Biswal
samar12-rad
Samarth Vaidya
17arindam
Arindam
jainaryan04
Aryan Ramesh Jain
haseebzaki-07
Haseeb Zaki
alo7lika
alolika bhowmik
Ashwinib26
Ashwini_ab
itznayan
Mahera Nayan
tejasbenibagde
Tejas Benibagde
Shirisha-16
Tyarla Shirisha
meghanakn22
meghanakn22
VinayLodhi1712
Vinay Anand Lodhi
Amnyadav
Aman Yadav
NilanchalaPanda
Nilanchal
Suhas-Koheda
Suhas Koheda
Sumanbhadra
Suman Bhadra
Sawan-Kushwah
Sawan kushwah
PavanTeja2005
PavanTeja2005
sajalbatra
Sajal Batra
vishnuprasad2004
Vishnu Prasad Korada
Jay-1409 Sourabh782
Sourabh Singh Rawat
harshbhar0629
Harsh Bhardwaj
sajalbatra
Sajal Batra
PavanTeja2005
Jay shah
AbhijitMotekar99
Abhijit Motekar
Navneetdadhich
Navneet Dadhich
lade6501
Vishal Lade
REHAN-18
MD REHAN
T-Rahul-prabhu-38
t rahul prabhu
Aditya90456
Aditya Bakshi
vaishnavipal1869
vaishnavipal1869
tanishirai
Tanishi Rai
Picodes10
Sushree Manaswini Biswal
Sourabh782
Sourabh Singh Rawat
Shiva-Bajpai
Shiva Bajpai
Pushpa472
Pushpa Vishwakarma
Mansi07sharma
Mansi Sharma
devxMani
MANI
meghanakn473
K N Meghana
Ayush215mb
Ayush Yadav
smog-root
smog-root
vaibhav-yerkar
Vaibhav._Y
Vaibhav-Kumar-K-R
Vaibhav-Kumar-K-R
Syed-Farazuddin
Syed Faraz
stutxi
Stuti
Sapna127
Sapna Kul
Nikhil0-3
Nikhil More
MutiatBash
Bashua Mutiat
Mohitranag18
Mohit Rana
jaidh01
Jai Dhingra
harjasae2001
Harjas Singh
mishradev1
Dev Mishra
chikatlarakesh
CHIKATLA RAKESH
amiya-cyber
Amiya Singh
AliGates915
Ali Gates

Stargazers ❤️

Stargazers repo roster for @RamakrushnaBiswal/PlayCafe

Forkers ❤️

Forkers repo roster for @RamakrushnaBiswal/PlayCafe

⭐ Support

Your support keeps us going! Here's how you can help:

  • 💰 Sponsor us: Become a sponsor and help us keep growing. Become a Sponsor.
  • ⭐ Star our Repo: Show some love by starring the repository. Your stars motivate us to continue developing and improving!

Thank you for supporting PlayCafe! 💖

📄 License

This project is licensed under the MIT License. See the LICENSE file for more details.

📬 Contact Us

We’d love to hear from you! Whether you have questions, feedback, or collaboration ideas, feel free to reach out.

✨ Join the Conversation

Stay updated and engage with our community on social media:

We are always here to help you! Don’t hesitate to connect with us and be part of the PlayCafe journey.