Live-Laugh-Lockheed-Martin

🚀 Welcome to Live-Laugh-Lockheed-Martin

ci-badge

Table of Contents

Our Vision

At Live-Laugh-Lockheed-Martin, we are dedicated to pushing the boundaries of technology and innovation. Our mission is to create solutions that make the world safer, more connected, and full of possibilities.

We envision a future where advanced technology and human ingenuity come together to solve the world’s most pressing challenges. From aerospace and defense to everyday life, our teams are committed to excellence and innovation.

What We Do

Overview

Project Title: Campus Cravings

Main Objective: The core purpose of this project is to solve the challenge of navigating the wide variety of food options on the University of Hawai‘i at Mānoa campus. With multiple food vendors—such as Campus Center, food trucks, Manoa Gardens, Paradise Palms, and vending machines—students often struggle to find specific types of food or track when a favorite dish is available.

The app will provide students with real-time access to menu items across all campus food locations, filtered by their food preferences. This will simplify decision-making and increase satisfaction by reducing the time and effort spent finding meals they enjoy.

Key Points of Development for Success:

Core App Features:

Status

The project is finished. View our GitHub Repository View our project boarrds:

User Guide

Homepage

Users will land on the homepage when they visit the Campus Cravings site. The homepage provides steps on how to access and use the website. Depending on what type of user they are logged in as (User, Vendor, or Admin), they will see a corresponding navigation menu bar. If they are not logged in to any account, the menu bar will not show any links.

Homepage

Sign In

The Sign In page allows registered users to access their accounts by entering their login credentials.

Sign In page

Sign Up

New users can create an account on the Sign Up page by providing their name, email, and password.

Sign Up page

Users

🍽️ Available Menu

The Available Menu page is the user-facing menu discovery page. It lists all active food items across vendors and includes a live search bar where users can search by name, cuisine, ingredient, or vendor name. Clicking the 'View Details' button reveals the item's description and ingredients. Additionally, clicking the name of the vendor brings up a pop-up that displays relevant information on the vendor's profile, including their email address, physical address, and operating hours. Clicking on the physical address link sends users to the location viewed on Google Maps.

User Available Menu page User Available Menu page showing details

Top Picks

The "Top Picks For You" page shows a curated list of menu items tailored to the user's food preferences and aversions or if the item is marked as a special. It includes search functionality and links to go back to the full list or update preferences.

User Top Picks page

User Profile

Users can edit their food preferences and aversions here. Each entry appears as a tag that can be removed. They can add new tags (e.g., "Hawaiian", "Chinese") and save to update what appears on the Top Picks page.

User Profile page

Vendors

Vendor Dashboard

Vendors can view their profile information on the card to the left and any menu items they have created in the table to the right. By clicking on a table row, they can expand the box to show the description, price, ingredients and special scedule status of the item. Additionally, they can click expand all or hide all to display/hide information.

Vendor Dashboard page

Update Vendor Profile

Vendors can update their business name, location, cuisine types (comma-separated), and operating hours for each day of the week. Time inputs make it easy to manage availability. This ensures accurate visibility for users browsing by vendor or filtering by open hours.

Update Vendor Profile page

Add Menu Item

Vendors can add a new menu item by filling out details such as name, description, price, ingredients, category, and cuisine. Special days can also be tagged using checkboxes for each day of the week. This page ensures that all vendor entries are clear, searchable, and updated in real time.

Add Menu Item page

Edit Menu Items

Vendors can edit existing menu items by changing the details listed on the page. The page comes preloaded with the menu item's current items. Clicking 'Submit' will save any changes to made. Clicking the 'Reset' button will reset any changes made to the item's preloaded details. Pressing 'Cancel' will take the user back to the vendor dashboard page.

Edit Menu Item page

Admin

Admin Dashboard

The Admin Dashboard page provides admin users with the ability to view all registered users, their id number in the database, and their roles, and the ability to update any existing user to the role of Vendor by clicking the 'Add Vendor' button.

Admin Dashboard page

Add Vendors

The Add Vendor page provides admin with the ability to update any existing user to the role of Vendor. When doing so, the admin will fill out the vendors's name and optionally their phone number and address.

Admin Add Vendor page

Testing Guidelines

Playwright test summary with 15 tests passed Playwright test report showing tests run across Chromium, Firefox, and WebKit

Community Feedback

The website was demonstrated to 5 students from UH Manoa and feedback was received via word-of-mouth. All interviewees reflected overall positive responses. One student stated that it was helpful to know the operating times of the food trucks in food truck row as they frequent the food trucks regularly. Another student said that the user dashboard and filter system was really clean and she could see herself using the app to pick out what she wanted to eat for the day. Another student expressed his desire to see support for vending machines added should the project be continued. He said that sometimes, vending machines are down or out of stock on certain food items and a way to know that before hand would be nice. Yet another student says that he sometimes stays afterschool late and expressed his interest to see other food places nearby campus added to the list of vendors, citing that it would be helpful to see what is there to eat in the evening.

Developer Guide

This guide will show how to download, install, run, and modify the project. The project will not be downloaded with any

  1. Clone the repo to your local machine, run npm install and then npm run dev to bring it up.
  2. Create a postgreSQL database with createdb [database name].
  3. Create an .env file and copy the following into it:
DATABASE_URL="postgresql://user:password@localhost:5432/mydb?schema=public"

NEXTAUTH_SECRET=secret
NEXTAUTH_URL=http://localhost:3000

POSTGRES_DATABASE="verceldb"
POSTGRES_HOST="***"
POSTGRES_PASSWORD="***"
POSTGRES_PRISMA_URL="postgres://default:***@***/verceldb?pgbouncer=true&connect_timeout=15&sslmode=require"
POSTGRES_URL="postgres://default:***@***/verceldb?sslmode=require"
POSTGRES_URL_NON_POOLING="postgres://default:***@***/verceldb?sslmode=require"
POSTGRES_URL_NO_SSL="postgres://default:***@***/verceldb"
POSTGRES_USER="default"
  1. Edit the .env file to set the DATABASE_URL to postgresql://:@localhost:5432/digits?schema=public
  2. Then run npx prisma migrate dev and npx prisma db seed to seed the database.
  3. Start Next.js using npm run dev, and check http://localhost:3000 (and the console) to ensure that the new landing page displays correctly.

Team Contract

View our Team Contract

Deployment

Our app is deployed and live on Vercel:
https://manoa-munchies-nextjs.vercel.app/

Review our Code!

Milestone 1 (M1) Project Page

View M1 Project Board

Milestone 2 (M2) Project Page

View M2 Project Board

Milestone 3 (M3) Project Page

View M3 Project Board

GitHub Hosting Guidelines

This page adheres to the GitHub hosting guidelines.

Join Us

Are you passionate about innovation and technology? We’re always looking for talented individuals to join our team. Explore Careers

Contact Us

Have questions or need more information? Reach out to us at contact@livelaughlockheedmartin.com.

Back to the top


Empowering Innovation. Securing the Future.