Z Energy is a leading New Zealand fuel distributor, providing high-quality fuel and convenience services. This project aims to redesign the Z Energy station locator and fuel price information pages to enhance user experience, addressing issues faced by users like Alex, a road trip enthusiast. The application allows users to efficiently locate gas stations, filter services, compare fuel prices across different locations, and order products online.
- Station Locator: Easily find gas stations based on specific criteria such as service offerings.
- Fuel Price Comparison: View and compare fuel prices at different stations on a map.
- Order Online: Conveniently order products from Z Energy stations directly through the app.
- Responsive Design: Optimized for mobile devices to ensure easy navigation and selection without zooming.
- Controllers: Handles the business logic and API requests.
- Models: Defines the database schema using Mongoose.
- Routes: Manages the API endpoints for station and price data.
- Scripts: Contains utility scripts, including data seeding.
- Components: Reusable UI elements for building the interface.
- Pages: Contains the main pages like Price Comparison, Station Locator, and Order Online.
- Layouts: Defines the structure of the application.
- Assets: Stores images and other static resources.
- Node.js: Ensure you have Node.js installed.
- MongoDB: A running instance of MongoDB is required for data storage.
- Docker (Optional): Docker is available on Maryanne's branch for containerized deployment.
-
Clone the repository:
git clone https://github.com/MaryanneG3/mission-5.git
-
Backend Setup:
-
Navigate to
z-fuel-backendand install dependencies:cd mission-5/z-fuel-backend npm install
-
-
Frontend Setup:
-
Navigate to
z-fuel-frontendand install dependencies:cd ../z-fuel-frontend npm install
-
-
Start the backend server:
npm run dev
-
Start the frontend development server:
npm run dev
Alternatively, to run with Docker (available on Maryanne's branch
mary):docker build -t z-fuel-backend . docker run -p 5002:5002 --name z-fuel-backend-container zfuel-backend
- Access the application via the frontend server URL.
- Use the station locator to filter stations by services.
- Compare fuel prices directly on the map interface.
- Order products online through the "Order Online" page.
- Developer 1: Maryanne Galo (https://github.com/MaryanneG3) - Homepage, Order Online
- Developer 2: Rhya Johns (https://github.com/rhyaj1) - Find Fuel Station, Share Tank
- Developer 3: Caitlin Sanderson (https://github.com/caitlincode) - Price Comparison
Utilized Figma for prototyping, focusing on intuitive navigation, enhanced filtering options, and improved visibility of fuel prices. The redesign addresses key pain points and aims to provide a seamless user experience.
⚠️ Docker setup is only available on themarybranch.
-
Switch to the
marybranch:git switch mary
-
Build and run the app using Docker:
docker-compose build docker-compose up
-
Visit the app at http://localhost:5173
To clean up Docker containers:
docker ps # Get container ID
docker stop <id> && docker rm <id>