Giter VIP home page Giter VIP logo

lunch_buddies's Introduction

WELCOME TO LUNCH BUDDIES!!!

An application that lets you find and match with like-minded students on campus to study, have a meal with, and more!


Table of Contents

  1. Install
  2. Usage
  3. Debugging
  4. Contributing

Install

  • To start, clone the repository: git clone https://github.com/ufosc/Lunch_Buddies.git
  • Navigate to the project directory cd Lunch_Buddies
  • If you haven't already, install Node.js (version 16.18.0) through this link: Download Node.js
    • To check if you have successfully installed Node.js, you should see the current version of Node.js installed on your computer if you type this into the terminal: node --version or npm --version
  • You will also need to install Golang, which is what we are using for the API. You can do through this link: Download Golang
  • The back-end uses a MySQL database, so you will need to install MySQL on your local machine and create a user. The instructions in the Usage section will explain what you need to do with your MySQL login.
  • After installing MySQL, enter your database and coppy the full code from api/database.sql and paste it in. This will ensure that your MySQL installation contains the same database and table schema as everyone else.
  • Once this is finished, start VS Code and open the "Lunch_Buddies" file. Open the terminal within VS Code and cd Lunch_Buddies.
  • After this, enter the client directory with the command cd client and type npm install to download the required packages for the front-end.
    • If you havent already dowloaded Expo CLI, type this into the terminal: npm i expo-cli
  • Then, enter the api directory with the command cd ../api and run the command go get to download the go packages that are needed.`

Usage

  • Before running the application, copy the .env.example file into a file called .env and fill in the corresponding credentials.

  • To run the front-end, use the command npm run start in the client folder.

  • To run the server, enter the api folder and run go build, and then run the executable that is created.

  • Download the "Expo Go" app in order to emulate the current version of your app.

    • You need to create an Expo account
    • NOTE: Make sure your dev machine(desktop, laptop, etc.) and your smartphone are on the same wi-fi network
    • After running npm run start in the client folder, a QR code should be generated
    • For iOS: scan QR code with iPhone camera
    • For Android: use the Expo Go app to scan the QR code

Debugging

  • Expo provides tools to debug the app
  • Error messages are displayed on your phone, any speccific errors can be searched online or discussed with tech leads
  • Shaking the device will open the developer menu, which allows you to refresh the app
  • Remote JS debugging is available in a browser, and the element inspector will list the characteristics of a given component.

Contributing

  • All contributions are welcome and appreciated!!
    • Programming Languages: JavaScript, Go
    • UI software framework: React Native

Front-End

  • The React Native documentation has the most useful information for beginners
  • Some components (ex. sliders) can lead to crashes on Android. It's strongly encouraged to test on both operating systems, if possible
  • A Figma file is available here (https://www.figma.com/file/XakFXYjXOjFdD0Gljp51Rj/draft-(Copy)?node-id=0%3A1)
    • These screens are a helpful guide, but won't neccesarily reflect the final product.

Tips:

lunch_buddies's People

Contributors

prayujt avatar anyilin2002 avatar dylantallon avatar hadiplays avatar sn00pyw00dst0ck avatar kthchew avatar ercz16 avatar heonheo23 avatar kanielv avatar ssihala avatar eileen-an1 avatar

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.