Giter Site home page Giter Site logo

flashcards's Introduction

Flashcard

Simple app that helps you study languages.

Table of Contents

General Info

Flashcard is a university project but also helps me to better understand Spring, Hibernate and client-server architecture. I think everybody knows paper flashcard, but I think better option it to use technology. With this app you can easily create new set, change languages, check your score and personalize your set with colors.

Technologies Used

  • Java 17
  • JavaFX 17
  • CSS
  • PostgreSQL
  • Hibernate
  • Spring
  • Gson

Setup

You can download it here
After downloading and unzip you will see two folders client and server.
All you have to do is open terminal, go to server folder and run java -jar serverFlashcard.jar. After that you can go to client folder and run Flashcard.exe.
I needed to add some VM options in Intellij to properly run this program:
--add-modules=ALL-SYSTEM --add-opens=com.flashcard/com.flashcard=ALL-UNNAMED --add-opens=com.flashcard/com.flashcard=spring.core --add-opens=com.flashcard/com.flashcard.controller=spring.core

Database

In this project I'm using postgreSQL as my database, you can download script to create all tables. Also, here is database structure:
database.png

First steps

Rules:
After clicking on set and choosing language you will see rectangle with sentence. You can check translate by clicking on rectangle then you can choose if you knew it or not. Sets are shuffled and sentence where you choose correct will not be visible until you reset score in Score view.

Create new set:
Just click Create new, under set name you can pick color of your set.
No field can be empty and set name has to be unique.

Reset score:
You can reset score for language in Score view then by clicking X button next to your score.

flashcards's People

Contributors

bladeours 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.