Skip to content

Plugin: SkyCultureMaker#4454

Merged
gzotti merged 249 commits intoStellarium:masterfrom
Integer-Ctrl:master
Sep 21, 2025
Merged

Plugin: SkyCultureMaker#4454
gzotti merged 249 commits intoStellarium:masterfrom
Integer-Ctrl:master

Conversation

@Integer-Ctrl
Copy link
Copy Markdown
Contributor

Description

Sky Culture Maker is a plugin for Stellarium, designed to simplify the creation and customization of sky cultures. With this tool, users can easily define new sky cultures, draw constellations, and visualize their arrangements directly within Stellarium.

The plugin provides an intuitive interface for both amateur astronomers and advanced users to:

  • Create sky cultures directly in Stellarium with real-time visualization
  • Define new constellations by drawing directly in the Stellarium sky view
  • Convert .fab data into JSON

Dependencies

Maker

  • Stellarium already comes with everything you need.

Converter

  • Tidy HTML (used for formatting HTML descriptions)

Type of change

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to change)
  • This change requires a documentation update
  • Housekeeping

How Has This Been Tested?

This plugin was developed as part of a university project with five active contributors. We followed a collaborative development process with frequent code reviews and functional testing across team members. The changes were tested manually on Linux, Windows, and macOS to ensure cross-platform compatibility.

Checklist:

  • My code follows the code style of this project.
  • I have performed a self-review of my own code
  • I have commented my code, particularly in hard-to-understand areas
  • I have made corresponding changes to the documentation (header file)
  • I have updated the respective chapter in the Stellarium User Guide
  • My changes generate no new warnings
  • I have added tests that prove my fix is effective or that my feature works
  • New and existing unit tests pass locally with my changes
  • Any dependent changes have been merged and published in downstream modules

RivinHD and others added 30 commits May 1, 2025 12:33
* Switched to bundel MSVC

Added windows mingw to ci

* Fixed vcpkg install

* Update bundle-build.yml

* Fixed workflows

* Swichted to poweshell & vcpkg not requiered

* Removed windows ci

* Added new icons

* Revert "Added new icons"

This reverts commit 9ff982a.

* Update bundle-build.yml

* Removed zipped does not work

* Update bundle-build.yml

* don't create a desktop icon
…figure-lines

feat: eraser for stick figure lines (#56)
…Overview

feat: Display constellations in SC Overview and make constellations removable (#52)(#53)
@sushoff
Copy link
Copy Markdown
Contributor

sushoff commented Sep 17, 2025

omega Cen was the case for which we introduced it

@gzotti
Copy link
Copy Markdown
Member

gzotti commented Sep 17, 2025

Yes, for the stick figure. But do you have some artwork texture that cannot be successfully linked with neighbouring stars?

@sushoff
Copy link
Copy Markdown
Contributor

sushoff commented Sep 17, 2025

ah! artwork ...there, I think, I don't really care because artworks has many points (pixels) more than stickfigures

@Integer-Ctrl
Copy link
Copy Markdown
Contributor Author

Integer-Ctrl commented Sep 17, 2025

Hey everybody!

First, @xLPMG, thank you very much for all your work implementing so much of the feedback in this PR.

@gzotti @10110111 @alex-w, thank you as well for gathering feedback and helping make the plugin even better while aligning it with the current Stellarium.

@sushoff, we also appreciate your active participation in the discussions related to this PR.

Overall, the developer team considers this project complete. This started as a university project to demonstrate team workflows using agile methods, and I’m proud to say we’ve achieved that with excellent results. We knew some work might be needed after creating the PR for the master repository, but now we are reaching the end.

@10110111, we will not implement merging line segments into polylines, as this would require significant refactoring of something that already works well for us. Of course, you three are the maintainers and have the final word, but we will not be investing additional time in this.

@sushoff, from our side, there will not be any further meetings to improve the plugin or documentation. None of us have the capacity to continue work on this project.

Stellarium for us has been, and continues to be for many others, a highly practical and useful software for education, hobbyists, and researchers. We appreciate the work behind it and hope it continues to be maintained and expanded for many years to come. However, as none of us work in this field and this began purely as a university project, our resources are now exhausted.

Regarding the remaining conversation items (aside from the polylines), the last issues seems to be:

The current code outputs description with some level-2 headings that aren't really supported in the format. There only can be Introduction, Description, Constellations, References, Authors, License. Any other sections are subordinate to some of these.

The References section should be formatted in a particular way, see the format description. Currently it's a free-form text.

The Constellations section should also be formatted in a particular way (this might not currently be followed by some of the existing SCs, which should be fixed by their authors).

The blank line between headings and section bodies is still lacking.

I haven't looked at this precisely, but it sounds like more than a minor adjustment. Including specific formatting is likely to take more than a few minutes. And the other:

@xLPMG

Another issue just occurred from a test student: initially (after starting the SCM), the date-place menu opens, but the SCM-window might be hidden behind the Stellarium star map. Hence, the user can set date and time, but if the user doesn't know that the window is there, they don't see how to draw / input anything.

@sushoff, as my colleague mentioned, none of us encountered these issues. If they are infrequent, this might have been a misunderstanding, and that should be acceptable.

We hope you understand our perspective. Please comment if you have any objections or concerns. With this, we officially signal the end of our work on this plugin. I am still reachable, will keep an eye on the conversation of the PR, and will stay involved in the conversation.

Best regards and thanks from all of us: @Integer-Ctrl, @MherMnatsakanyan03, @RivinHD, @xLPMG, and @ZeyxRew

@sushoff
Copy link
Copy Markdown
Contributor

sushoff commented Sep 17, 2025

I know, the semester ends in Jena - and marks are given (I guess)

as I am neither employed in Jena nor paid for teaching nor involved in grading, I can only thank you all for your work

@gzotti
Copy link
Copy Markdown
Member

gzotti commented Sep 20, 2025

It's a pity you jump off deck days before release. :-( But we should not mourn. I know, busy semesters etc., still thank you for probably a good addition with potential to become important and long-lasting (not just a semester). Susanne and her peers need it urgently (and hopefully new students will continue), so I still am positive about a merge, even if it does not completely fulfill our own wishes. After all, it does not break anything AFAICS. As in most minority plugins, the default installation state should be "plugin not activated".

  • Lines/vertex doubles: That's IMO a minor issue. At least the desktop version splits longer lines back into vertex pairs.
  • I still want a section in the User Guide. If the authors (who know the project best) decline, @sushoff and her group should convert private notes from their upcoming tests to 1-3 pages of User Guide in 25.4.
  • A few improvements will be up to us: Guidelines in the help string in the entry fields about how references are formatted. And @10110111 I never saw the guidelines about leaving an empty line after the section title. Is section 9.1 missing something that you could add?

I just tried the raster linker. It works, at least somehow, unfortunately not with an image preview. I just chose some FullHD color PNG image I had lying around. I can move the three green dots in my image preview, select stars in the sky, and save the result. For whatever reason, the texture is then not displayed, though. The logfile says nothing. I don't see an issue in the JSON. Does anyone has success with that?

All in all, the plugin does something, but maybe the final result should still be checked by the SC author to make it compliant with the specs in the User Guide.

@10110111
Copy link
Copy Markdown
Contributor

I never saw the guidelines about leaving an empty line after the section title.

There were none, but I asked for this change because of 1) it's like so in the example in the SC repo, 2) it looks better, and 3) it should be a trivial change in the code.

All in all, the plugin does something, but maybe the final result should still be checked by the SC author to make it compliant with the specs in the User Guide.

It would be not good at all if it emits a completely wrong chapter structure. For me this is a major issue, since the emitted document will be used by the SC authors as a reference that's supposed to follow all guidelines.

@gzotti
Copy link
Copy Markdown
Member

gzotti commented Sep 20, 2025

OK, the bad structure is an issue to be solved ASAP (for 25.4) by one of us or by the next developer group if there is one. I was not aware that the structure was so critically important. Anyhow, I read the authors won't do it. I doubt you will be flooded with ill-formatted SCs now, however. Silent inclusion in 25.3 should allow an uncomplicated user test run for @sushoff 's peers. If she instructs them that they must fix the text after creation (and do it), it's OK for me. We could put up a note in their plugin startup page: NOTE: Test only. The result does not yet comply to Stellarium's formatting rules.

@10110111
Copy link
Copy Markdown
Contributor

10110111 commented Sep 20, 2025 via email

@xLPMG
Copy link
Copy Markdown
Contributor

xLPMG commented Sep 20, 2025

Thank you for not giving up on this PR :)
While I agree that it is very unfortunate timing for us to abondon work on this plugin, the timing is not really something we 'chose'. Most of us are either travelling now or have a lot of work to do (all of us work part time whenever we don't have classes).

Anyway, would it be possible to create a project for this plugin in the Stellarium repo? Then we could copy some of the leftover tickets from our fork and create new tickets for the critical issues you mentioned in this PR. I suppose after this PR is merged, we will delete our fork and with it all the remaining open feature requests...

@gzotti
Copy link
Copy Markdown
Member

gzotti commented Sep 20, 2025

Well, once it's merged it is part of master. "Tickets" (called issues here) should be deposited in the main repo then. Maybe mark them SCM:... in the issue title for easier identification.

@alex-w and @10110111 , this is a big PR with 249 commits. The authors will abandon work. IMHO it's OK to squash this to one commit, unless someone of you wants to do code archaeology. After merge, we will have to do some immediate improvements for 25.3 (this warning and editing hints.).

@alex-w
Copy link
Copy Markdown
Member

alex-w commented Sep 20, 2025

OK to squash for me

@gzotti
Copy link
Copy Markdown
Member

gzotti commented Sep 20, 2025

@xLPMG just to be sure: Did texture linking work for you?

@xLPMG
Copy link
Copy Markdown
Contributor

xLPMG commented Sep 20, 2025

@xLPMG just to be sure: Did texture linking work for you?

I tried it right now and it works for me. If the image is not shown immediately, try moving the anchor points around in the preview to make it become visible. I dont know the details, but if the image is distorted in a weird way, it might not be shown at all.

@gzotti
Copy link
Copy Markdown
Member

gzotti commented Sep 20, 2025

Ah yes, now it worked, with a real example. OK, not "any" triangle works then.

@10110111
Copy link
Copy Markdown
Contributor

IMHO it's OK to squash this to one commit, unless someone of you wants to do code archaeology

It's new code, so OK to squash.

@gzotti gzotti merged commit 0ae56e4 into Stellarium:master Sep 21, 2025
16 of 17 checks passed
@github-project-automation github-project-automation bot moved this from In review to Done in Skycultures 2.0 Sep 21, 2025
@sushoff
Copy link
Copy Markdown
Contributor

sushoff commented Sep 21, 2025

thank you all ... this release falls into my most busy week of the month, so I was distracted by other urgent duties. as you all know, I am always busy to not overcharge people and to look for support for all of you (good people need to be protected). Just to clarify @gzotti: as I had told you orally, I am not the supervisor of this student developing project (only the product owner); I will ask the dear former colleagues if they want to continue this in winter term.

  1. thanks for merging @gzotti
  2. I agree that changing the output will be an easy and quick change @10110111
  3. there are some other developments ongoing (test by student from other faculty and myself during the next few months), as I delayed the contribution of new SCs and reworking old ones for this project
  4. thanks for being willing to further provide help for other students @xLPMG

@gzotti
Copy link
Copy Markdown
Member

gzotti commented Sep 21, 2025

I have just modified the description wizard panel. I hope the result is now in line with the description.md format specified by @10110111 in SUG section 9.1:

  • added Introduction
  • Description now includes a cultural description and then (optional) sky features apart from constellations
  • Constellations with formatting hint provided. (The string has literal \n, not sure how to just make a newline!)
  • References shows formatting hint
  • Authors now include About and Acknowledgements section

@sushoff I suggested you will hopefully provide the section in the SUG for 25.4 because you and your peers are the ones who are going to use the plugin.

@10110111
Copy link
Copy Markdown
Contributor

The string has literal \n, not sure how to just make a newline!

Just make a real new line in the XML (or, I suppose, paste a newline into the Designer's input field for the placeholder). I've pushed this fix.

@alex-w alex-w added the state: published The fix has been published for testing in weekly binary package label Sep 22, 2025
@github-actions
Copy link
Copy Markdown

Hello @Integer-Ctrl!

Please check the fresh version (development snapshot) of Stellarium:
https://github.com/Stellarium/stellarium-data/releases/tag/weekly-snapshot

@alex-w alex-w removed the state: published The fix has been published for testing in weekly binary package label Sep 29, 2025
@github-actions
Copy link
Copy Markdown

Hello @Integer-Ctrl!

Please check the latest stable version of Stellarium:
https://github.com/Stellarium/stellarium/releases/latest

@axd1967
Copy link
Copy Markdown
Contributor

axd1967 commented Oct 6, 2025

@sushoff I suggested you will hopefully provide the section in the SUG for 25.4 because you and your peers are the ones who are going to use the plugin.

@sushoff thanks for the idea and the effort.

A recurring issue that I have observed over and over in my lifetime as software engineer is that many developers (including former professional colleagues) think that documentation is not part of the process/branch; "someone else will deal with it...".

A bare minimum dev effort should be to include some skeleton plugin section in the UG.

A branch should not be merged as long as no minimal UG entry was made. Because now the average user had no idea how to use this plugin.

Meanwhile users could be directed to https://github.com/Stellarium/stellarium/blob/master/plugins/SkyCultureMaker/README.md ?

Maybe add that link in the plugin info screen?
image

@axd1967
Copy link
Copy Markdown
Contributor

axd1967 commented Oct 6, 2025

Where can I find skycultures/ when running an AppImage?

@sunshuwei
Copy link
Copy Markdown
Contributor

I tried this plugin and it works well. However, I don't seem to have found the feature for naming celestial bodies. How can I assign local names to stars and planets?

@alex-w
Copy link
Copy Markdown
Member

alex-w commented Oct 6, 2025

I tried this plugin and it works well. However, I don't seem to have found the feature for naming celestial bodies. How can I assign local names to stars and planets?

Ouch... missing feature :( Please fill the feature request

@gzotti
Copy link
Copy Markdown
Member

gzotti commented Oct 6, 2025

ecause now the average user had no idea how to use this plugin.

If you care to dig deeper into the plugin discussion, you find the plugin is not yet to be used by the average user (Therefore the warning in the welcome screen) and therefore has not been presented in the SUG foreword. Consider it public beta for personally invited users.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

feature Entirely new feature purpose: cultural astronomy Issues, pull requests and proposals with cultural astronomy purposes subsystem: plugins The issue is related to plugins of planetarium... subsystem: skycultures The issue is related to skycultures of planetarium...

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

Asterism Development Tools