Jekyll2023-11-02T18:18:17+00:00https://helioviewer-project.github.io/feed.xmlHelioviewer ProjectVisualization of solar and heliospheric dataHAPI with Helioviewer2023-11-02T05:00:00+00:002023-11-02T05:00:00+00:00https://helioviewer-project.github.io/2023/11/02/helioviewer-hapi-server<p>Helioviewer supports HAPI for listing images and some image metadata.</p>
<p><a href="https://api.helioviewer.org/hapi/">Helioviewer’s HAPI interface</a></p>
<h1 id="what-is-hapi">What is HAPI?</h1>
<p><a href="https://hapi-server.github.io/">HAPI</a> stands for Heliophysics Data Application Programmer’s Interface.
It is a modern API that makes it very simple to deliver time series data to applications.
You can interact with HAPI directly from the browser or within a programming language.</p>
<h2 id="using-hapi">Using HAPI</h2>
<p>You could use the <a href="https://api.helioviewer.org/hapi/">HAPI Interface</a> to browse
the image datasets available from Helioviewer.
(You could also do this on <a href="https://helioviewer.org">Helioviewer.org</a> since all image datasets are retrievable with HAPI.)</p>
<p>Below are examples of using HAPI with Python and JavaScript.
You can find a list of officially supported clients <a href="https://github.com/hapi-server/?q=client-&type=all">here</a>.</p>
<p>If your desired language isn’t supported, you can review the <a href="https://github.com/hapi-server/data-specification">API specification</a>
to write a new client.</p>
<h3 id="with-python">With Python</h3>
<div class="language-python highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="o">>>></span> <span class="kn">from</span> <span class="nn">hapiclient</span> <span class="kn">import</span> <span class="n">hapi</span>
<span class="o">>>></span> <span class="n">data</span><span class="p">,</span> <span class="n">meta</span> <span class="o">=</span> <span class="n">hapi</span><span class="p">(</span>
<span class="p">...</span> <span class="s">"https://api.helioviewer.org/hapi/helioviewer/hapi"</span><span class="p">,</span>
<span class="p">...</span> <span class="s">"AIA_304"</span><span class="p">,</span>
<span class="p">...</span> <span class="s">"url"</span><span class="p">,</span>
<span class="p">...</span> <span class="s">"2023-01-01T00:00:00Z"</span><span class="p">,</span>
<span class="p">...</span> <span class="s">"2023-01-01T23:59:59Z"</span>
<span class="p">...</span> <span class="p">)</span>
<span class="o">>>></span> <span class="k">print</span><span class="p">(</span><span class="n">data</span><span class="p">)</span>
<span class="p">[(</span><span class="sa">b</span><span class="s">'2023-01-01T00:00:05Z'</span><span class="p">,</span> <span class="s">'https://helioviewer.org/jp2/AIA/2023/01/01/304/2023_01_01__00_00_05_129__SDO_AIA_AIA_304.jp2'</span><span class="p">)</span>
<span class="p">(</span><span class="sa">b</span><span class="s">'2023-01-01T00:00:41Z'</span><span class="p">,</span> <span class="s">'https://helioviewer.org/jp2/AIA/2023/01/01/304/2023_01_01__00_00_41_131__SDO_AIA_AIA_304.jp2'</span><span class="p">)</span>
<span class="p">(</span><span class="sa">b</span><span class="s">'2023-01-01T00:01:17Z'</span><span class="p">,</span> <span class="s">'https://helioviewer.org/jp2/AIA/2023/01/01/304/2023_01_01__00_01_17_130__SDO_AIA_AIA_304.jp2'</span><span class="p">)</span>
<span class="p">...</span>
<span class="p">(</span><span class="sa">b</span><span class="s">'2023-01-01T23:58:17Z'</span><span class="p">,</span> <span class="s">'https://helioviewer.org/jp2/AIA/2023/01/01/304/2023_01_01__23_58_17_132__SDO_AIA_AIA_304.jp2'</span><span class="p">)</span>
<span class="p">(</span><span class="sa">b</span><span class="s">'2023-01-01T23:58:53Z'</span><span class="p">,</span> <span class="s">'https://helioviewer.org/jp2/AIA/2023/01/01/304/2023_01_01__23_58_53_131__SDO_AIA_AIA_304.jp2'</span><span class="p">)</span>
<span class="p">(</span><span class="sa">b</span><span class="s">'2023-01-01T23:59:29Z'</span><span class="p">,</span> <span class="s">'https://helioviewer.org/jp2/AIA/2023/01/01/304/2023_01_01__23_59_29_140__SDO_AIA_AIA_304.jp2'</span><span class="p">)]</span>
</code></pre></div></div>
<h3 id="with-javascript">With JavaScript</h3>
<div class="language-javascript highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="c1">// Include hapi-0.0.1.js from https://github.com/hapi-server/client-javascript</span>
<span class="c1">// <script src="hapi-0.0.1.js"></script></span>
<span class="nx">hapi</span><span class="p">(</span><span class="dl">"</span><span class="s2">https://api.helioviewer.org/hapi/helioviewer/hapi</span><span class="dl">"</span><span class="p">,</span>
<span class="dl">"</span><span class="s2">AIA_304</span><span class="dl">"</span><span class="p">,</span>
<span class="dl">"</span><span class="s2">url</span><span class="dl">"</span><span class="p">,</span>
<span class="dl">"</span><span class="s2">2023-01-01T00:00:00Z</span><span class="dl">"</span><span class="p">,</span>
<span class="dl">"</span><span class="s2">2023-01-01T23:59:59Z</span><span class="dl">"</span><span class="p">,</span>
<span class="p">(</span><span class="nx">data</span><span class="p">,</span> <span class="nx">meta</span><span class="p">)</span> <span class="o">=></span> <span class="p">{</span>
<span class="nx">console</span><span class="p">.</span><span class="nx">log</span><span class="p">(</span><span class="nx">data</span><span class="p">);</span>
<span class="p">}</span>
<span class="p">);</span>
<span class="cm">/**
* {
* Time: ["2023-01-01T00:00:05Z", "2023-01-01T00:00:41Z"...]
* url: ["https://helioviewer.org/jp2/AIA/2023/01/01/304/2023_01_01__00_00_05_129__SDO_AIA_AIA_304.jp2"...]
* }
*/</span>
</code></pre></div></div>Daniel Garcia BrisenoHelioviewer supports HAPI for listing images and some image metadata.Opening Movies in JHelioviewer2023-10-31T05:00:00+00:002023-10-31T05:00:00+00:00https://helioviewer-project.github.io/2023/10/31/open-in-jhelioviewer<p>Helioviewer now supports opening helioviewer.org movies in <a href="https://www.jhelioviewer.org/">JHelioviewer</a>!</p>
<h2 id="background">Background</h2>
<p>This feature is enabled by <a href="https://www.ivoa.net/documents/SAMP/">SAMP</a>,
a standard by the International Virtual Observatory Alliance.
SAMP is a protocol that allows different applications to send messages to each other.
When JHelioviewer is running, it acts as a SAMP Hub and accepts requests to
load images specified in the SAMP message.</p>
<p>Helioviewer can communicate with JHelioviewer thanks to <a href="https://github.com/astrojs/sampjs">sampjs</a>,
a JavaScript library which implements the SAMP protocol, and a library we developed called <a href="https://www.npmjs.com/package/jhvrequest">jhvrequest</a> which provides a
JavaScript interface for sending datasets to JHelioviewer.</p>
<p>Technically speaking, the mp4 itself is not sent to JHelioviewer. Instead,
the list of the layers in the movie and the movie’s timespan are sent to Jhelioviewer so that it can reconstruct the movie.</p>
<h2 id="limitations">Limitations</h2>
<p>Currently movies containing XRT layers are not supported.</p>
<h2 id="how-to">How To?</h2>
<p>To open a movie in JHelioviewer, first have JHelioviewer running, then open one of your movies in <a href="https://helioviewer.org">helioviewer.org</a>.</p>
<p>In the bottom right of the movie player window you will see an “Open in JHelioviewer” button.</p>
<p><img src="/images/uploads/2023/jhv-video.jpg" alt="Movie player window with JHelioviewer button" /></p>
<p>If JHelioviewer is not running, the button will say “JHV is not open”, and the button will not be clickable. Make sure to open JHelioviewer first.</p>
<p>When you click the button, JHelioviewer will display a notification asking if you’d like to accept the incoming request.</p>
<p><img src="/images/uploads/2023/security.jpg" alt="SAMP Hub Security popup" /></p>
<p>Click <strong>Yes</strong> to load the movie in JHelioviewer.</p>Daniel Garcia BrisenoHelioviewer now supports opening helioviewer.org movies in JHelioviewer!Coordinates return to Helioviewer2023-09-12T15:30:00+00:002023-09-12T15:30:00+00:00https://helioviewer-project.github.io/2023/09/12/mouse-coordinates<p>Knowing the position of the mouse pointer in a solar coordinate system when using Helioviewer.org has been widely requested by users.</p>
<p>We have been working on this for some time and we’re happy to announce that coordinates are back on Helioviewer. Users can show the mouse position in helioprojective Cartesian or radial coordinates. <strong>The mouse position provided by Helioviewer.org approximates the true position</strong>. While we do believe the coordinates returned to be reasonably accurate, there may be cases where the displayed mouse coordinate is incorrect. Users are encouraged to use other tools for work that requires more accuracy.</p>
<p>We tested the veracity of the Helioviewer.org mouse position using <a href="https://sunpy.org/">sunpy</a>, a free and open-source Python package for solar physics data analysis that has a sophisticated and well-tested coordinate framework.</p>
<p>The image below shows the mouse pointer hovering over a sunspot. Helioviewer.org shows the coordinate position as (-593, -264) arcseconds.
<img src="/images/uploads/2023/hv_mouse.jpg" alt="Image of the mouse hovering over a sunspot on helioviewer with the top bar showing coordinates (-593, -264) arcseconds" /></p>
<p>If we take the Helioviewer.org coordinate position, and use <a href="https://sunpy.org/">sunpy</a> to plot that position on the same data (red dot), we get the following image:
<img src="/images/uploads/2023/sunpy_mouse.jpg" alt="Image of the same sunspot and coordinates plotted with sunpy" /></p>
<p>The red dot in the <em>sunpy</em> image is in approximately the same position as the location of the mouse in the Helioviewer.org image above.</p>Daniel Garcia Briseno & Jack IrelandKnowing the position of the mouse pointer in a solar coordinate system when using Helioviewer.org has been widely requested by users.Flare predictions now available2023-04-10T17:00:00+00:002023-04-10T17:00:00+00:00https://helioviewer-project.github.io/2023/04/10/Flare-predictions-now-available<p>Solar flare predictions provided by the <a href="https://ccmc.gsfc.nasa.gov/">Community Coordinated Modeling Center</a> (CCMC) are now available on helioviewer.org.</p>
<p>They can be found by clicking on <em>Data Sources > Features and Events > CCMC</em>.</p>
<p><img src="https://user-images.githubusercontent.com/983575/231274256-875e4387-d833-4fca-a812-cb7803447258.png" alt="fp_where_to_find" /></p>
<p>The CCMC is a multi-agency partnership enabling, supporting, and performing research and development for next-generation space science and space weather models. The CCMC <a href="https://ccmc.gsfc.nasa.gov/scoreboards/flare/">collects flare predictions</a> based on a number of different algorithms and makes them available via an API and <a href="https://iswa.gsfc.nasa.gov/IswaSystemWebApp/index.jsp?i_1=606&l_1=7&t_1=33&w_1=1721&h_1=865&s_1=0">their own browsing tools</a>.</p>
<p>Each flare prediction shows the probability of GOES C, M and X flares
in the local area of the pin.</p>
<p><img src="https://user-images.githubusercontent.com/983575/231274356-1d547859-bff8-4b33-a18d-238f89f58311.png" alt="fp_pin" /></p>
<p>Clicking on the pin itself pops up a window with a little more detail</p>
<p><img src="https://user-images.githubusercontent.com/983575/231274395-86ab2f0b-045c-4067-b5ed-1b4aba617f60.png" alt="fp_popup" /></p>
<p>Clicking on “View source data” brings up a larger window that shows the complete data associated with that particular flare prediction</p>
<p><img src="https://user-images.githubusercontent.com/983575/231274461-b70a0e7d-ba8c-44a6-ab0c-9720bdc3e7fb.png" alt="fp_view_source_data" /></p>
<p>You can also overlay features and events from the HEK. Here is <a href="https://helioviewer.org/?date=2023-03-22T19:15:05.000Z&imageScale=2.42044088&centerX=-116.18116224&centerY=4.84088176&imageLayers=%5BSDO,AIA,171,1,100,0,60,1,2023-04-07T10:35:29.000Z.000Z.000Z%5D&eventLayers=%5BER,EruptionPatrol,1%5D,%5BFP,AMOS_v1_REGIONS;ASAP_1_REGIONS,1%5D&eventLabels=true&celestialBodies=%7B%22soho%22:%5B%22soho-mercury-tree-label%22,%22soho-venus-tree-label%22,%22soho-saturn-tree-label%22%5D,%22stereo_a%22:%5B%5D,%22stereo_b%22:%5B%5D%7D">an example showing HEK Eruption, AMOS V1 REGIONS, and ASAP 1 REGIONS results overlaid on an AIA image</a></p>
<p><img width="500" alt="Screen Shot 2023-04-11 at 16 18 16" src="https://user-images.githubusercontent.com/983575/231279903-5c4ce168-d9ce-47a2-abd5-0369338f64ab.png" /></p>
<p>A small note about the display of flare prediction results. Since flares occur in active regions, the flare prediction pins wll often overlay each other
and other HEK information for active regions. Mousing over the result type you want will highlight the particular HEK or Flare Prediction pins shown.</p>
<p>For example, in this example, the mouse is over <em>HEK > Eruption > EruptionPatrol</em> and only those results are shown:</p>
<p><img width="500" alt="Screen Shot 2023-04-11 at 16 17 34" src="https://user-images.githubusercontent.com/983575/231279799-0af630cc-ca84-4349-b669-7e535748121e.png" /></p>
<p>Similarly, we can show the ASAP 1 REGIONS results only by mousing-over <em>CCMC > Flare predictions > ASAP 1 REGIONS</em> .</p>
<p><img width="500" alt="Screen Shot 2023-04-11 at 16 18 00" src="https://user-images.githubusercontent.com/983575/231280301-597c51fe-0958-428d-a0e0-2056792a46bc.png" /></p>
<p>If you have any questions or comments regarding flare predictions, please <a href="mailto:HelioViewerDevelopment@nasa.onmicrosoft.com">send us an
email</a> or <a href="https://github.com/Helioviewer-Project/helioviewer.org/issues">file an
issue on the Helioviewer.org project page</a>.</p>JackSolar flare predictions provided by the Community Coordinated Modeling Center (CCMC) are now available on helioviewer.org.Helioviewer.org - now mobile friendly2022-11-29T16:40:00+00:002022-11-29T16:40:00+00:00https://helioviewer-project.github.io/2022/11/23/helioviewer.org-now-mobile-friendly<p><a href="https://www.helioviewer.org">helioviewer.org</a> is now much easier to use on mobile devices. You can view the latest images of the Sun and inner heliosphere, overlay features and events, and make screenshots and movies, just as you can using <a href="https://www.helioviewer.org">helioviewer.org</a> on a laptop or desktop.</p>
<p><img src="https://user-images.githubusercontent.com/983575/203576629-85a6b077-5fad-4287-a960-7aad7157c635.jpeg" alt="Unknown" /></p>
<p>Comments? Questions? Bugs? Send us an <a href="mailto:helioviewerdevelopment@nasa.onmicrosoft.com">email</a> or post an <a href="https://github.com/Helioviewer-Project/helioviewer.org/issues">issue on GitHub</a></p>Jack Irelandhelioviewer.org is now much easier to use on mobile devices. You can view the latest images of the Sun and inner heliosphere, overlay features and events, and make screenshots and movies, just as you can using helioviewer.org on a laptop or desktop.Solar Orbiter EUI images now available2022-07-13T21:00:00+00:002022-07-13T21:00:00+00:00https://helioviewer-project.github.io/2022/07/12/Solar-Orbiter-EUI-images-now-available<p>Solar Orbiter Extreme Ultraviolet Imager (EUI) images are now
available via <a href="https://www.helioviewer.org">helioviewer.org</a>.</p>
<p><a href="https://www.esa.int/Science_Exploration/Space_Science/Solar_Orbiter">Solar Orbiter</a>
was launched on February
9th, 2020. <a href="https://www.nasa.gov/solar-orbiter">It is designed</a> to
take in-situ measurements of the inner heliosphere and nascent solar
wind, and perform observations of the Sun’s polar regions. Solar
Orbiter orbits the Sun (not the Earth) and its orbital inclination and
distance from the Sun will change substantially during the mission
lifetime to get ever better views of the Sun’s polar regions. Most
observations will be from off the Sun-Earth line (note that most
STEREO observations have been taken from well away from the Sun-Earth
line). Additionally, given the mission profile, data download rates
and latencies can vary, and so images close to real time are nominally
not available.</p>
<p><a href="https://doi.org/10.1051/0004-6361/201936663">EUI</a> observes the Sun
in extreme ultraviolet light, and consists of two High Resolution
Imagers (HRIs) and one Full Sun Imager (FSI). The HRIs take high
resolution images of portions of the solar atmosphere - they do not
view the entire disk of the Sun. The FSI views the full disk of the
Sun, and also images a wider field of view compared to AIA, and so can
image the extended solar corona.</p>
<p>Data from EUI are processed into images for use with helioviewer.org
and <a href="https://jhelioviewer.org">JHelioviewer</a> by the
<a href="https://github.com/helioviewer-project">Helioviewer Project</a> partner
institute the
<a href="https://www.astro.oma.be/en/scientific-research/solar-physics-space-weather/">Royal Observatory of Belgium</a>. We
hope you enjoy examining EUI images.</p>Jack IrelandSolar Orbiter Extreme Ultraviolet Imager (EUI) images are now available via helioviewer.org.Maintenance Update2022-05-02T21:00:00+00:002022-05-02T21:00:00+00:00https://helioviewer-project.github.io/2022/05/02/helioviewer-update<p>Update 2022-05-04 18:30</p>
<ul>
<li>SOHO and STEREO pipelines have been restored and images will
become available on helioviewer as they’re made available to us.</li>
</ul>
<p>Update 2022-05-02 21:20</p>
<ul>
<li>The JPIP Server is up. GSFC is now available in JHelioviewer.</li>
</ul>
<p>The helioviewer migration to the new server is nearly complete. The
<a href="https://helioviewer.org">Helioviewer Website</a> is up and running.</p>
<p>We are still working on setting up the data pipeline for SOHO and
STEREO so these image sources will not be updated for some
time. Another update will follow when these image sources are
updated. This impacts both GSFC and GSFC Beta</p>
<p>We are still working on bringing up the JPIP server, which should be
up shortly. In the meantime GSFC Beta is still available.</p>Daniel Garcia BrisenoUpdate 2022-05-04 18:30 SOHO and STEREO pipelines have been restored and images will become available on helioviewer as they’re made available to us.Scheduled Maintenance2022-04-18T13:50:00+00:002022-04-18T13:50:00+00:00https://helioviewer-project.github.io/2022/04/18/scheduled-maintenance<p>Helioviewer will be down on May 2nd between 13:00:00 UTC to 21:00:00
UTC</p>
<p>We will be migrating helioviewer to a new server with more available
storage space. This will resolve the problems we have been having
lately with images not loading, and image sources lagging behind what
should be available.</p>
<p>Another announcement will be made on May 2nd when the migration is
complete.</p>Daniel Garcia BrisenoHelioviewer will be down on May 2nd between 13:00:00 UTC to 21:00:00 UTCContributing to Helioviewer2022-04-08T16:51:00+00:002022-04-08T16:51:00+00:00https://helioviewer-project.github.io/2022/04/08/contribute-to-helioviewer<h1 id="helioviewer-development---getting-started-guide">Helioviewer Development - Getting Started Guide</h1>
<p>Daniel here, as one of the newer members to the Helioviewer Project,
I’ve put together this guide for setting up a development environment
and using git to make pull requests to help with onboarding any future
contributors we may have.</p>
<p>This page is here to describe the process for setting up a local
development environment that can be used for testing changes for
https://helioviewer.org. This document also goes over setting up a
branch on GitHub for making pull requests, which you may skip if
you’re already familiar with git and the pull request process. If you
have any questions about the steps here, please let us know by
emailing contact@helioviewer.org so we can update these steps.</p>
<p>In Summary, this page will go over:</p>
<ol>
<li>Forking helioviewer on GitHub</li>
<li>Cloning the project locally</li>
<li>Setting up the development environment with Docker</li>
<li>Guidance on the general workflow (branching, pushing, and pull
requests)</li>
</ol>
<p>If you’re already familiar with GitHub and git, then you’ll most
likely just be interested in section 3 on setting up the local
environment. All other sections go over how to use GitHub to fork our
repositories, clone the project, and make a pull request. If you know
how to do these things already then you can ignore these sections. If
you’re new to GitHub and git, I recommend going through all sections.</p>
<h2 id="1-fork-helioviewer">1. Fork Helioviewer</h2>
<p>If you haven’t worked on Helioviewer yet, you’ll want to start
here. In this section, you’ll make your own copies of the
helioviewer.org repositories on GitHub that you can use to make pull
requests later on. You’ll need to create a GitHub account which is not
covered here.</p>
<p>Once you have an account, log in and go to the <a href="https://github.com/Helioviewer-Project/api">API
Page</a> and click fork in
the top right corner (See images below). After forking the API, create
a fork for the
<a href="https://github.com/Helioviewer-Project/helioviewer.org">helioviewer.org</a>
repository as well.</p>
<p><img src="/images/uploads/2022/github_fork.png" alt="Fork instructions" /></p>
<p>After forking, you should see the api and helioviewer.org on your
GitHub account in your repositories list. Like this:</p>
<p><img src="/images/uploads/2022/github_repositories.png" alt="Your github
repositories" /></p>
<h2 id="2-cloning-helioviewer">2. Cloning Helioviewer</h2>
<p>Next, you need to clone your forks to your computer so you can make
changes and test them there. I’ll do this with Github Desktop since
it’s very user-friendly, but if you’re already familiar with Git, feel
free to use whatever tools you’re comfortable with.</p>
<ul>
<li>Download <a href="https://desktop.github.com/">Github Desktop</a>.</li>
<li>Sign in with your Github credentials and authorize Github Desktop.</li>
<li>Github will ask which email you want to use, select the Github
email and continue</li>
<li>Next, click “clone a repository from the internet” and clone the
API you just forked, save the path you clone it to as you’ll need
it for later steps.</li>
<li>Tell Github you would like to use this fork for contributing to the
parent project.</li>
<li>Click the sidebar to clone another repository</li>
</ul>
<p><img src="/images/uploads/2022/github_clone.png" alt="clone repository" /></p>
<p><img src="/images/uploads/2022/github_select.png" alt="select repository" /></p>
<p><img src="/images/uploads/2022/github_upstream.png" alt="keeping upstream" /></p>
<p>Repeat the steps to clone helioviewer.org as well.</p>
<h2 id="3-setting-up-the-local-environment">3. Setting up the local environment</h2>
<p>Great, now you have your own copy of helioviewer on Github, and on
your computer! Now you’re ready to run the application yourself. To do
this, you will need
<a href="https://www.docker.com/products/docker-desktop">Docker</a> (or podman if
you’d rather not use docker). The instructions that follow are for
Docker.</p>
<p>A container has already been set up to manage a lot of things for
you. The Helioviewer development container will automatically download
images, delete any images older than 1 day (to conserve space), and
configure your local copy of helioviewer for running on localhost.</p>
<p>To run the container, you’ll need the paths to your API and
Helioviewer.org repositories that you saved in step #2.</p>
<p>Select the command below based on your environment (windows cmd,
windows powershell, mac, or linux). Execute the appropriate command in
your desired terminal.</p>
<p>For Windows Users (cmd.exe):</p>
<pre><code class="language-cmd">cd C:\Path\To\Github
docker run ^
-p 127.0.0.1:8080:80 ^
-p 127.0.0.1:8081:81 ^
-v "%cd%/api":"/var/www/api.helioviewer.org" ^
-v "%cd%/helioviewer.org":"/var/www/helioviewer.org" ^
-d -t dgarciabriseno/helioviewer.org-docker:v1.4_setup_done
</code></pre>
<p>Also windows if using powershell (PowerShell.exe):</p>
<div class="language-powershell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="n">cd</span><span class="w"> </span><span class="nx">C:/Path/To/Github</span><span class="w">
</span><span class="n">docker</span><span class="w"> </span><span class="nx">run</span><span class="w"> </span><span class="se">`
</span><span class="w"> </span><span class="nt">-p</span><span class="w"> </span><span class="nx">127.0.0.1:8080:80</span><span class="w"> </span><span class="se">`
</span><span class="w"> </span><span class="nt">-p</span><span class="w"> </span><span class="nx">127.0.0.1:8081:81</span><span class="w"> </span><span class="se">`
</span><span class="w"> </span><span class="nt">-v</span><span class="w"> </span><span class="nv">${PWD}</span><span class="nx">/api:</span><span class="s2">"/var/www/api.helioviewer.org"</span><span class="w"> </span><span class="se">`
</span><span class="w"> </span><span class="nt">-v</span><span class="w"> </span><span class="nv">${PWD}</span><span class="nx">/helioviewer.org:</span><span class="s2">"/var/www/helioviewer.org"</span><span class="w"> </span><span class="se">`
</span><span class="w"> </span><span class="nt">-d</span><span class="w"> </span><span class="nt">-t</span><span class="w"> </span><span class="nx">dgarciabriseno/helioviewer.org-docker:v1.4_setup_done</span><span class="w">
</span></code></pre></div></div>
<p>For Mac/Linux users:</p>
<div class="language-bash highlighter-rouge"><div class="highlight"><pre class="highlight"><code>docker run <span class="se">\</span>
<span class="nt">-p</span> 127.0.0.1:8080:80 <span class="se">\</span>
<span class="nt">-p</span> 127.0.0.1:8081:81 <span class="se">\</span>
<span class="nt">-v</span> <span class="s2">"/Path/To/API"</span>:<span class="s2">"/var/www/api.helioviewer.org"</span> <span class="se">\</span>
<span class="nt">-v</span> <span class="s2">"/Path/To/helioviewer.org"</span>:<span class="s2">"/var/www/helioviewer.org"</span> <span class="se">\</span>
<span class="nt">-d</span> <span class="nt">-t</span> dgarciabriseno/helioviewer.org-docker:v1.4_setup_done
</code></pre></div></div>
<p>For details on the above command, see the <a href="https://docs.docker.com/engine/reference/commandline/run/">Docker run
reference</a></p>
<p>Now verify the container is working as expected. In docker desktop go
to the Containers / Apps tab (see image below). You will see that it
created a container. Next click the open in browser button to see
Helioviewer running on your computer, complete with images of the sun!
By default the container’s pre-installed images are in December 2021,
don’t worry, in a few minutes you’ll be able to jump to today’s date
and see the latest AIA images of the sun.</p>
<p>If the UI doesn’t work, or you just get a blank white screen, or you see
the helioviewer UI, but no sun, please open an issue on the
<a href="https://github.com/Helioviewer-Project/helioviewer.org-docker">container’s github
page</a>
for assistance.</p>
<p><img src="/images/uploads/2022/docker_desktop.png" alt="Docker containers/apps" /></p>
<h2 id="4-development-workflow">4. Development Workflow</h2>
<p>Now that you have a local copy and development environment for
Helioviewer. You’re ready to start modifying the source code. A
typical workflow for Helioviewer looks like this:</p>
<ol>
<li>Create A New Branch Based on Beta</li>
</ol>
<p>Beta contains the latest development changes, so all new changes
should be branched from the latest commit on beta.</p>
<ul>
<li>In GitHub Desktop, click the branch tab an select that you want to
checkout upstream/beta.</li>
<li>Next select “New Branch” and select that you want to branch off
“beta” Enter a name for your branch, this can be whatever you
want. Something like “fix-for-issue-1234” or “update-xyz” This name
is for you to know what code you have on this branch.</li>
</ul>
<p><img src="/images/uploads/2022/github_branch.png" alt="github branching" /></p>
<p>Next you can make changes and test them in your container. When
testing javascript or CSS changes, use the URL:
https://127.0.0.1:8080?debug=True</p>
<p>The <code class="language-plaintext highlighter-rouge">?debug=True</code> will tell Helioviewer to use non-minified
CSS/JavaScript.</p>
<p>After making changes you can commit them with GitHub desktop. The left
sidebar will show files you have changed. Please uncheck changes to
Config.js. The container modifies this file for running on localhost
and should not be committed. Generally you should commit often with
descriptions of what you did in each commit so it’s easy to rollback a
change if necessary.</p>
<p><img src="/images/uploads/2022/github_commit.png" alt="GitHub Desktop Commit" /></p>
<p>Once a change is ready to submit to helioviewer, you can make a pull
request after you publish your changes to GitHub. Use the “Publish
branch” button in GitHub desktop to push your changes to your GitHub
fork. You can do this as often as necessary. When you’re ready to
submit a change to helioviewer, you’ll need to make a pull request.</p>
<p>Sometimes GitHub will have a message on top for “Compare & pull
request” If this doesn’t show, you can make a pull request like this:</p>
<p><img src="/images/uploads/2022/github_pr_branch.png" alt="select the branch on
GitHub" /></p>
<p><img src="/images/uploads/2022/github_pr.png" alt="then select contribute, then open pull
request" /></p>
<p>When making a pull request, set the target branch to beta. Then update
your commit message to mention the change you’re making.</p>
<p><img src="/images/uploads/2022/github_pr_descr.png" alt="pull request form" /></p>
<p>Lastly click “Create a Pull Request” and we’ll review your change.</p>Daniel Garcia BrisenoHelioviewer Development - Getting Started GuideUnexpected Outage2022-03-23T17:51:00+00:002022-03-23T17:51:00+00:00https://helioviewer-project.github.io/2022/03/23/unexptected-outage<p><em>Services are back up as of 2022-03-23 19:25:00 UTC</em></p>
<p>Helioviewer services are experiencing an outage at this time. It appears
services went out at approximately 2:00 AM UTC Time on March 23.</p>
<p>We are working to bring it back online and will update this post when service returns.</p>Daniel Garcia BrisenoServices are back up as of 2022-03-23 19:25:00 UTC