{"id":15055910,"url":"https://github.com/neuralcortex/sun","last_synced_at":"2026-01-02T10:03:46.762Z","repository":{"id":176940497,"uuid":"656037274","full_name":"NeuralCortex/Sun","owner":"NeuralCortex","description":"A JavaFX App for calculation of sun and moon positions and phases.","archived":false,"fork":false,"pushed_at":"2024-02-07T13:12:32.000Z","size":210,"stargazers_count":0,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-21T00:39:59.081Z","etag":null,"topics":["java","javafx","javafx-application","javafx-desktop-apps","moon","moon-phase","sunrise-sunset"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/NeuralCortex.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2023-06-20T06:23:52.000Z","updated_at":"2023-07-19T14:27:33.000Z","dependencies_parsed_at":"2023-10-29T10:23:40.769Z","dependency_job_id":null,"html_url":"https://github.com/NeuralCortex/Sun","commit_stats":null,"previous_names":["neuralcortex/sun"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NeuralCortex%2FSun","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NeuralCortex%2FSun/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NeuralCortex%2FSun/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NeuralCortex%2FSun/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/NeuralCortex","download_url":"https://codeload.github.com/NeuralCortex/Sun/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243532532,"owners_count":20306152,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["java","javafx","javafx-application","javafx-desktop-apps","moon","moon-phase","sunrise-sunset"],"created_at":"2024-09-24T21:47:03.870Z","updated_at":"2026-01-02T10:03:46.757Z","avatar_url":"https://github.com/NeuralCortex.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# SunLab\n\n![SunDowner Logo](https://github.com/NeuralCortex/Sun/blob/main/images/sun.png)\n\n## Overview\n\nSunLab is a JavaFX application that calculates and visually displays the positions and phases of the sun and moon. It utilizes nearly all features of the [commons-suncalc](https://shredzone.org/maven/commons-suncalc/index.html) library, available on GitHub and Maven.\n\n### Features\n\nSunLab provides the following features, accessible via tabs in the application:\n\n- Daily Information\n- Calendar\n- Moon Phases\n- Moon Parameters\n- Solar Parameters\n- Sun and Moon Times\n- Big Data\n- Sunrise and Sunset\n- Altitude and Local Time\n- Altitude and Azimuth\n- Earth-Moon Distance\n- Earth-Sun Distance\n- Sun Position Diagram (Cartesian)\n- Sun Position Diagram (Polar)\n\n## Important Note\n\nThe accuracy of the calculated data depends on geographic information, requiring an internet connection to set the location using OpenStreetMap. To select a location, right-click on the map within the application.\n\n## Prerequisites\n\nTo run SunDowner, ensure the following are installed:\n\n- **Java SDK**: [Java 24](https://www.oracle.com/java/technologies/downloads/#jdk24-windows)\n- **JavaFX SDK**: [JavaFX](https://gluonhq.com/products/javafx/)\n- **SceneBuilder**: [Gluon SceneBuilder](https://gluonhq.com/products/scene-builder/) (for GUI development, optional for running)\n- **Apache NetBeans 27 IDE**: [NetBeans 27](https://netbeans.apache.org/) (optional, used for development)\n\n## Installation\n\n1. **Download the JavaFX SDK**: Extract it to a known location (e.g., `C:\\javafx-sdk-24`).\n2. **Ensure Java 24 is installed**: Verify the `java` command is accessible in your system's PATH.\n3. **Obtain the SunDowner JAR**: Place the `Sun-1.0.0.jar` file in a directory of your choice.\n\n## Running the Application\n\n### Windows\nUse the provided batch file to launch SunDowner:\n\n1. Save the following as `run_sundowner.bat` in the same directory as `Sun-1.0.0.jar`:\n\n```batch\n@echo off\nREM Batch file to launch the SunDowner JavaFX application\n\nREM Set the path to the SunDowner JAR file\nSET JAR_FILE=Sun-1.0.0.jar\n\nREM Set the path to the JavaFX SDK lib folder (update to match your JavaFX SDK location)\nSET JAVAFX_LIB=C:\\path\\to\\javafx-sdk-24\\lib\n\nREM Specify the main class (update if different or remove if specified in the JAR's manifest)\nSET MAIN_CLASS=your.main.Main\n\nREM Run the SunDowner application with required JavaFX modules\njava --module-path \"%JAVAFX_LIB%\" --add-modules javafx.controls,javafx.fxml,javafx.swing -jar %JAR_FILE% %MAIN_CLASS%\n\nREM Pause to keep the window open for debugging (optional, remove if not needed)\npause\n```\n\n2. Update the `JAVAFX_LIB` variable to point to your JavaFX SDK `lib` folder (e.g., `C:\\javafx-sdk-24\\lib`).\n3. If the main class is not specified in the JAR's manifest, update `MAIN_CLASS` to the correct fully qualified class name (e.g., `your.main.Main`). Otherwise, remove `%MAIN_CLASS%` from the `java` command.\n4. Double-click `run_sundowner.bat` or run it from the command prompt.\n5. Ensure an internet connection is available for OpenStreetMap functionality.\n\n### Linux/macOS\nFor non-Windows systems, create a shell script (e.g., `run_sundowner.sh`):\n\n```bash\n#!/bin/bash\n# Script to launch the SunDowner JavaFX application\n\n# Set the path to the SunDowner JAR file\nJAR_FILE=Sun-1.0.0.jar\n\n# Set the path to the JavaFX SDK lib folder (update to match your JavaFX SDK location)\nJAVAFX_LIB=/path/to/javafx-sdk-24/lib\n\n# Specify the main class (update if different or remove if specified in the JAR's manifest)\nMAIN_CLASS=your.main.Main\n\n# Run the SunDowner application with required JavaFX modules\njava --module-path \"$JAVAFX_LIB\" --add-modules javafx.controls,javafx.fxml,javafx.swing -jar $JAR_FILE $MAIN_CLASS\n```\n\n1. Update the `JAVAFX_LIB` and `MAIN_CLASS` as needed.\n2. Make the script executable: `chmod +x run_sundowner.sh`.\n3. Run the script: `./run_sundowner.sh`.\n\n## Troubleshooting\n\n- **JavaFX Path Error**: Ensure the `JAVAFX_LIB` path points to the correct JavaFX SDK `lib` folder.\n- **Missing Modules**: If the application fails to start, add required JavaFX modules (e.g., `javafx.graphics`) to the `--add-modules` flag.\n- **Internet Connection**: Verify an active internet connection for OpenStreetMap functionality.\n- **Main Class Not Found**: Confirm the `MAIN_CLASS` variable matches the application's main class or is specified in the JAR's manifest.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fneuralcortex%2Fsun","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fneuralcortex%2Fsun","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fneuralcortex%2Fsun/lists"}