Skip to content
This repository has been archived by the owner on Jan 26, 2025. It is now read-only.

YZ1GO/L.EIC023_LBAW_PRJ

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation


STEAL! is an online marketplace focused on selling CD Keys. It offers a secure, user-friendly platform for gamers seeking affordable game keys, aiming to become the top destination for accessible, high-quality digital gaming.

"SO AFFORDABLE IT'S LIKE STEALING!"

Features

  • 🎮 Personalized Recommendations: Suggests games based on past orders and top-sellers
  • 🔍 Advanced Search: Easily find games with filters
  • 🔔 Wishlist Alerts: Real-time notifications for sales and restocks
  • 🎁 Rewards: Earn S-coins for discounts on future purchases.
  • 💰 Flexible Checkout: Buy single games or entire carts with multiple payment options.

Software dependencies

To prepare the computer, you need to install:

  • PHP version 8.3 or higher
  • Composer version 2.2 or higher

Recommendation: Ubuntu 22.04.5 LTS or newer that ships with these versions.

sudo apt update
sudo apt install git composer php8.3 php8.3-mbstring php8.3-xml php8.3-pgsql php8.3-curl

On macOS, install using Homebrew:

brew install php@8.3 composer

If you use Windows WSL, ensure you are using Ubuntu 24.04 inside WSL. Previous versions do not provide the required packages. After setting up WSL, follow the Ubuntu instructions above.

Running locally (for development)

1. Create own .env file and fill in variables (Google OAuth and MailTrap)

cp .env.template .env

2. Install local PHP dependencies

composer install

3. PostgreSQL and pgAdmin4 setup

The Docker Compose file provided sets up PostgreSQL and pgAdmin4 as local Docker containers.

Start the containers from the project root:

docker compose up -d

Open your browser and navigate to http://localhost:4321 to access pgAdmin4.

In pgAdmin4, Add New Server:

  • Name: postgres
  • Host name/address: postgres
  • Port: 5432
  • Maintenance database: postgres
  • Username: postgres
  • Password: pg!password

Stop the containers when needed:

docker compose down

4. Developing the project

# Seed database from the SQL file
# Required: first run and after database script changes
php artisan db:seed

# Start the development server
php artisan serve

To stop the server: Press Ctrl-C

The application will be available at http://localhost:8000

Running the product

Login to GitLab's Container Registry (using FEUP VPN/network):

docker login gitlab.up.pt:5050

To start the Docker image available at GitLab Container Registry using the production database, use the following command:

docker run -d --name lbaw2435 -p 8001:80 gitlab.up.pt:5050/lbaw/lbaw2425/lbaw2435

For ARM users (e.g., Apple Silicon Macs) you can run the image with:

docker run --platform linux/arm64 -d --name lbaw2435 -p 8001:80 gitlab.up.pt:5050/lbaw/lbaw2425/lbaw2435

To stop and remove the container:

docker stop lbaw2435
docker rm lbaw2435

The application will be available at http://localhost:8001

Usage

Administration Credentials

Username Email Password
admin admin@example.com 1234

User Credentials

Type Username Email Password
Buyer Account buyer1 buyer1@example.com 1234
Seller Account seller1 seller1@example.com 1234

Product Video

alt text

Video Available at https://youtu.be/bTJrHXjnlQc

Contributors

GROUP2435, LBAW 2024/2025

Grades

Requirement Specification (ER) Component: 95%
Database Specification (EBD) Component: 89%
Architecture Specication and Prototype (EAP) Component: 93%
Product and Presentation (PA) Component: 92%
Final Grade: 18.4/20.0