Frontend Link: Link
Github Link: Github
This project involves creating an online event booking application that facilitates Customers in booking tickets for live music events. The application serves one Administrator responsible for managing multiple music venues across Australia, which host live music events. Comparable to Ticketek, Event Planners list their events on the platform, and Customers utilize it for ticket bookings.
Admin User Username: [email protected] Password: Admin123
Event Planner User Username: [email protected] Password: Plan123
Customer User Username: [email protected] Password: Jdoe123
- Tomcat v.10.0.27+
- Java Development Kit (JDK) v.17+
- Maven v.3.9
- PostgreSQL v.15
- Docker
- Create a new Running configuration and select Tomcat from the list:
- In the deployment tab, select the exploded .war as the artifact to be deployed, as well as set the path for the base of the web service in the bottom text input:
- In the Startup/Connection tab be sure to pass the required environment variables for the sever:
An example of the JAVA_OPTS environment value is the following:
-Djdbc.uri=jdbc:postgresql://<db-url>/<db-name> -Djdbc.username=<username> -Djdbc.password=<password> -Dcors.origins.ui=<frontend-url> -Dcookie.domain=''
- Run the configuration.
- Package the project:
cd mvn clean package -DwarName=server
- Copy the generated .war file to the
webapps/
directory inside your local Tomcat installation. - Execute the startup script:
<tomcat-dir>/bin/startup.sh
The url for the backend will be as follows:
http://localhost:8080/<package-name>/
- Ensure that Docker is open and running on your computer.
- Run the following command:
docker build -t <name-for-the-image> .
- Once the build is finished start the server by passing the environment variables in the Docker command. For example:
docker run -p 8080:8080 -e JAVA_OPTS='-Djdbc.uri=jdbc:postgresql://host.docker.internal:5432/<db-name> -Djdbc.username=<db-username> -Djdbc.password=<db-password> -Dcors.origins.ui=http://host.docker.internal:3000' <image-name>
Note that for referencing services running the localhost we need to use "host.docker.internal" instead of the word " localhost" so that the container can access it.
Before you begin, make sure you have the following installed on your system:
- Node.js (at least version v18)
- PNPM (you can install it globally using npm install -g pnpm)
- Navigate to frontend folder Open your terminal and navigate to the directory that contains the frontend client. Then execute the following commands
cd src/client/
- Install dependencies using PNPM In the client directory, install the project dependencies using PNPM
pnpm install
- Start the development server To start the development server and launch the client with the following command,
pnpm run dev
- Holds all project documentation, including reports, diagrams and meeting minutes.
- Holds all the project source code.
- Holds all of the project source code for the frontend.
- The frontend components and routes are located under /src/client/src.
- Holds all of the project source code for the backend.
- The server controllers and handlers are located under /src/server/src/main/java/com/getset/alfie/server.
Anjaney Chirag Mahajan | Sebastian Bobadilla-Chara | Joel Fressard Kenna | Georgia Rose Lewis |
---|---|---|---|