celestine
Version, currently main branch1 version
- main branchlatestOct 5, 2026
github.com/celestinecr/celestine
Fast, pure-Crystal SVG generation library with a fluent DSL and object model.
Installation
# Add this to your shard.yml
dependencies:
celestine:
github: celestinecr/celestine
branch: mainmain is a branch, not a release, so this tracks it rather than pinning a version.
Then run:
shards installshard.yml
- Crystal
>= 1.20.0- License
- MIT
- Author
- Ian Rash
- Targets
logofrom src/make_logo.crcarbonfrom lib/carbon/src/carbon/cli.crjasperfrom lib/jasper/src/jasper_cli.crbenchmarkfrom src/benchmark.cr
Dependencies
Development Dependencies
README
Celestine

A neat library and DSL for creating graphics using SVG
Installation
Add to shards.yml
dependencies:
celestine:
github: celestinecr/celestine
Docs
Documentation is cool, you can view the docs for Celestine at:
SVG Stuff It Can Do
A full list is here.
TODO
- Full SVG support for all elements and attributes
- Finish adding all filters
- Add pattern
- Add gradients
Examples
If you'd like to see how the logo was made, check out make_logo
Here are some more intricate examples. procedural_art
Real world examples made with Celestine. All of these are flat SVG files with no JS inside, using only functions built into Celestine.
- Inward
- Mineshift
- Hypnos1
- Hypnos2
- Pschyoflower
- Semicircle Patchwork 1
- Semicircle Patchwork 2
- Chromatic Aberration
- Polar Spins
- Genuary 01 2021
- Genuary 02 2021 (10)
- Genuary 02 2021 (20)
- Genuary 02 2021 (40)
Community Examples
These are some examples of cool stuff other people have done with Celestine!
- sunrise @ github by SugarFi
- Uses the very strong Turbulence and DisplacementMap filters to create a very neat water effect.
Development
HMU via issues or make a pull request or something I don't know.
Contributing
- Fork it (https://github.com/celestinecr/celestine/fork)
- Create your feature branch (
git checkout -b my-new-feature) - Commit your changes (
git commit -am 'Add some feature') - Push to the branch (
git push origin my-new-feature) - Create a new Pull Request to the
developmentbranch at celestinecr/celestine
Contributors
Documentation
Built from the current release. The first visit to a release nobody has asked for starts its build.
Links
This branch
- Branch
main- Seen
- Oct 5, 2026
- Crystal
>= 1.20.0- Indexed
- yes
Dependents
Repository
github.com/celestinecr/celestine
Metadata
- Created
- Aug 12, 2026
- Updated
- Nov 8, 2026
- Synced
- Nov 8, 2026
- Versions
- 1