GithubHelp home page GithubHelp logo

fedeai / ing-sw-2022-preatoni-sarrocco-vacca Goto Github PK

View Code? Open in Web Editor NEW

This project forked from alessandrovacca/ing-sw-2022-preatoni-sarrocco-vacca

0.0 0.0 0.0 171.59 MB

JavaScript 0.38% Java 14.15% CSS 0.49% HTML 84.97%

ing-sw-2022-preatoni-sarrocco-vacca's Introduction

Final Project of Software Engineering

picture

Getting Started

Java implementation of the table game Eriantys by the italian company Cranio Creations as part of the Bachelor of Science thesis. This is formally part of the Software Engineering course at Politecnico di Milano (A.Y. 2021 / 2022). The aim of this project is the design and realization of a distributed client-server software based on object-oriented programming, using the MVC (Model-View-Controller) design model.

More information about the game can be found here

Requirements

  • The game requires Java 17 to run.
  • In order to properly display the CLI client an UTF-8 and ANSI colors compatible console is needed.
  • To build the project, Maven is required.

Features

The features we have realized are listed as follows:

  • Base rules ☑️
  • Complete rules ☑️
  • Socket ☑️
  • CLI ☑️
  • GUI ☑️
  • Additional feature - 12 character cards ☑️
  • Additional feature - Multiple games ☑️
  • Additional feature - Disconnection recovery ☑️

Building the project

  • The project is build as an Uber-jar that is comprehensive of CLI, GUI and Server.
  • The executable provides a small launcher with all the options, no arguments are needed to run it. After cloning the repo, build the project by running:
cd ing-sw-2022-preatoni-sarrocco-vacca
mvn clean package

You will find the output jar in the newly created "target" folder with the name GC30-1.0-SNAPSHOT-jar-with-dependencies.jar.

Running the executable

To run the jar executable just issue this command in the console:

java -jar GC30-1.0-SNAPSHOT-jar-with-dependencies.jar

Sidenote for Apple Silicon macOS users

For AArch64-based Macs we have provided a specific jar. This is due to a JavaFX dependency conflict, as explained here.

Sidenote for Windows users

On Windows, if don't plan on using the Windows Terminal app, in order to properly display the CLI client you should enable the console UTF-8 character encoding beta feature.

Docs

In this section you will find all the documentation regarding the project:

UML diagrams

JavaDoc

You can find our JavaDocs in the following link

Peer Reviews

Tests with Coverage

This is an image

Built with

Libraries e Plugins

Libraries/Plugin Description
maven Project management tool that is based on POM (project object model)
junit Unit testing framework for the Java programming language
JavaFx Java set of graphics and media packages
UML-Generator Usefull plugin for autogenerate UML by the source code
Lucidchart UML drowing tool

List of Authors:

ing-sw-2022-preatoni-sarrocco-vacca's People

Contributors

alessandrovacca avatar davideprea avatar fedeai avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.