Git Product home page Git Product logo

emanuelersp / cookingwiki-application-in-java Goto Github PK

View Code? Open in Web Editor NEW
0.0 1.0 0.0 42.91 MB

University project. The goal was to build a distributed Java application that consists of a graphical interface (using JavaFX) and by a service through which the application data is managed. Final project evaluation: 30/30 whit honours.

License: GNU General Public License v3.0

Java 96.91% CSS 3.09%
client desktop-app gitlab java javafx json server spring

cookingwiki-application-in-java's Introduction

CookingWiki: share and find kitchen recipes - Application backend/frontend development

GitHub Release GitHub license Stars

The project consists in the creation of a distributed Java application that is composed of a graphical interface built with JavaFX and by a service through which the application data is managed. Application data is stored in a mySQL DBMS database.

For any issue or question, please don't hesitate to contact me!

Documentation

This project was developed during "Advanced Programming" course for the Bachelor's degree in Computer Engineering at the University of Pisa, so inner workings and implementation details are described in italian.

The main documentation of the project is available here. Unfortunately, due to lack of time, the documentation is not so complete and detailed as it should be. However, it provides a presentation of the application from the point of view of the user, to be able to appreciate its main features.

If you want to check the assignment for the project, you can find them in the pdf file here.

Project structure

The project is structured in the following way:

  • CookingWikiClient/ client application folder;
  • CookingWikiServer/ server application folder;
  • docs/ folder containing the documentation of the project;
  • zip/ folder containing the two projects in zip format;
  • README.md the file you are reading right now :).

How to run the application

You can download the latest zip file released from here.

The release includes both client and server zip files: import them in your favourite IDE (such as Apache NetBeans IDE).

The application uses a DBMS MySQL database to store data, so you need to install it on your machine if you don't have it yet. You can find the installation guide here. The project database connection is configured as follows:

// Database connection parameters
String dbUrl = "jdbc:mysql://localhost:3306/cookingWiki";

// Database credentials
String username = "root";
String password = "root";

The application will use a database called cookingWiki and will try to connect to it using the default port 3306 with the user root and the password root. If you want to change these parameters, you can do it in the code.

Finally, you can run the two projects: the server first, then the client.

Final evaluation and comments

The project was evaluated with a score of 30/30 with honours.

The professor specially appreciated the quality of the code and the large number of features implemented in the application. He also appreciated the creativity and the effort put into the project.

The only negative notes were the lack of documentation and the file organization, because the source files are contained in the same directory and so it's not easy to manage them.

cookingwiki-application-in-java's People

Contributors

emanuelersp avatar

Watchers

 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.