Welcome to our project for the course TDDD27 Advanced Web Programming at Linköping University 2024. We have created a web-based multiplayer golf platform where players can compete against each other in real-time. The golf game is based on a previous project in the course TNM085 Modelling Project, which deals with physics simulation through Euler approximation (link to GitHub repo: Grantallkotten/Modelling-and-animation). Beyond gameplay, players can interact via chat during sessions, access personal statistics, and compete for the top spot on the leaderboard.
We use the following technologies and frameworks:
- React.js: For building the user interface.
- Firebase: For storing player data, game statistics, and other relevant information.
- Three.js: For creating the game.
- Anime.js: For simple UI related animations.
- User accounts
- User statistics
- Lobby codes to join games
- Game chat
- Real-time gameplay
To be able to run the code on your own machine, you need to take the following steps:
- Clone the Repository:
git clone https://gitlab.liu.se/rassv453/tddd27-aweb.git
- Install Dependencies:
npm install
- Set Up Environment Variables: Create a .env file in the root of the project directory and add your Firebase API Key (It can be found at Firebase Console, but you need access). Then add the following line in your .env
REACT_APP_API_KEY=your_api_key_here
- Run the Development Server:
npm start