Giter VIP home page Giter VIP logo

resistorcalculatorapp's Introduction

Resistor calculator application for mobile phone and desktop

Linux JAR and Native MacOS Windows Linux Android iOS

About the application

Proof-of-concept application created with JavaFX as a true "write once, run everywhere". Uses Gluon tools and GitHub actions to build native applications for all platforms.

Diagram showing the flow from a single JavaFX code through GitHub actions to multiple applications

For more info, check these posts which describe the full flow in detail:

Based on

Gluon Mobile Applications are Java applications written in JavaFX. These applications ensure that developers can create high performance, great looking, and cloud connected mobile apps from a single Java code base.

Get the app

This application is published to the Google Play and Apple App Store from the fork on GluonHQ

QR code to get the application

Screens and functionalities

The application provides two views.

Calculate the value of a resistor based on the color bands

Resistor color bands screen

Calculate the required resistor value for a LED in an electronics project

LED resistor value screen

Pre-requisites

Please checkout the prerequisites to run this application as a Maven project at the Gluon website.

How to use the code on development PC

Note: The following are command line instructions. For IDE specific instructions please checkout IDE documentation of the gluonfx plugin.

These applications can run on the JVM on desktop platforms. To run the application, execute the following command:

mvn gluonfx:run

The same application can also run natively on any targeted OS, including Android, iOS, Linux, Mac and Windows.

To create a native image, execute the following commands (Use sdkman - https://sdkman.io/):

sdk install java 21.0.0.r11-grl
export GRAALVM_HOME=${SDKMAN_CANDIDATES_DIR}/java/21.0.0.r11-grl
echo $GRAALVM_HOME
mvn gluonfx:build gluonfx:run

Note: The above gluonfx commands are target-platform dependent and might change depending on the platform. For more details, please check GluonFX Maven Goals.

GitHub Actions

Separate GitHub Actions files are included in this repository:

Configuration

To configure the GluonFX plugin, please checkout the Configuration documentation.

Gradle

Use Gradle to build native image:

./gradlew build nativeCompile nativeLink

Executable found in build/gluonfx/XXXX/resistor-calculator-app

More information

Here are some helpful links:

resistorcalculatorapp's People

Contributors

erwin1 avatar fdelporte avatar jperedadnr avatar jskov-jyskebank-dk avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

resistorcalculatorapp's Issues

ColorBandSelection takes all possible width

ColorBandSelection has a scene listener that sets tbColor's min/pref/max width based on the scene's width and number of colors.

When ColorBandCalculator tries to set a different width (columnWidth), fails.
It is probably better to set the listener to the parent container.

Missing OrientationServices implementations

There is no orientation in the AttachList, therefore there are no platforms implementations (like AndroidOrientationService), and orientation is always set to Horizontal.

Same for the Browser service.

MacOS App is blurry

I am also trying some stuff with native JavaFX apps: https://github.com/ArloL/gitfx

And I was wondering if you ever noticed that the build result from GitHub Actions is blurry:

Screenshot 2021-09-16 at 11 03 29

Do you maybe have an idea what might be causing this? And maybe an idea on how to prevent this? Thanks :)

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.