SMITEARIFIC is a project, which is a part of my study programme in ICT at Fontys University of Applied Sciences.
Table of Contents
The project itself is a website, that helps SMITE players get access to game and esports statistics displayed in a variety of easy to comprehend ways, informational articles, and more so that they can become better at the game.
- The front-end is done via ReactJS
- The back-end is done utilizing Spring
SMITEARIFIC utilizes a number of frameworks and software to work:
- ReactJS - A JavaScript library for building user interfaces.
- NextJS - The React Framework for Production.
- React-Bootstrap - The most popular front-end framework rebuilt for React.
- SCSS - The most mature, stable, and powerful professional grade CSS extension language in the world.
- Spring - Spring makes programming Java quicker, easier, and safer for everybody. Spring’s focus on speed, simplicity, and productivity has made it the world's most popular Java framework.
- Docker - Docker is a set of platform as a service products that use OS-level virtualization to deliver software in packages called containers.
- HiRezAPI - Reactive Java API Wrapper for Hi-Rez Studios games.
- ParseHub - A free web scraper that is easy to use.
This section explains how to run the project locally.
- Clone the repository
git clone https://github.com/RealSnowKid/smitearific
- Install dependencies for the Web App and build it, after it is built - start it
cd smitearific_web_app
npm install
npm run build
npm run start
- Run the APIs with Docker
cd smitearific_api
docker-compose build
docker-compose up -d
Now the project is ready to be run locally. Default URLs:
- Website URL: http://localhost:3000
- Stats API URL: http://localhost:8080
- Info API URL: http://localhost:8081
This section explains how to setup the project locally to be ready for development.
- An IDE (Visual Studio Code with Java extenstions recommended, could also use IntelliJ IDEA for the Java back-end)
- A local database (MySQL recommended)
- Clone the repository
git clone https://github.com/RealSnowKid/smitearific
- Install dependencies for the Web App and run it
cd smitearific_web_app
npm install
npm run dev
- Create an application-dev.properties file for all APIs
The currently available APIs are info and stats
cd smitearific_api\[api-name]\src\main\resources
cp application.properties application-dev.properties
Modify the values in the new file according to your environment, it is recommended to add a server.port value also.
- Start the APIs
cd smitearific_api\[api-name]\src\main\resources
mvn spring-boot:run -D spring-boot.run.profiles=dev
Now the project is set-up locally, and is ready for development Note: The APIs need to be restarted after changes occur.