imlib2cr
imlib2cr is a set of bindings against
Imlib2 for the
Crystal programming language. It is still early in
development, and the higher-level API may change as time goes on. But the lower
level bindings (LibImlib2
) are totally usable and stable.
Documentation
Documentation isn't yet available for these bindings themselves, but the C API reference should get you going.
There are a few very short examples in the examples/
directory.
Installation
Add this to your application's shard.yml:
dependencies:
imlib2cr:
fossil: https://chiselapp.com/user/MistressRemilia/repository/imlib2cr
Development
Style info
I use a somewhat non-standard style for my code.
- Keep lines 118 characters or shorter. Obviously sometimes you can't, but please try. Use 80 or 115 characters for Markdown files, though.
- Please use pascalCase for variable and method names. Use CamelCase for type names. Use UPPER_SNAKE_CASE for constants.
- ALWAYS put parentheses around method parameters, except for these methods:
puts
,pp
,p
,raise
,sleep
,spawn
,loop
, andexit
. - Always the full
do |foo|...end
syntax with blocks, except when it's all on one line, then always use { and }. - The type name for exceptions end with Error. For example,
ExternalProgramError
.
How do I contribute?
- Go to https://chiselapp.com/user/MistressRemilia/repository/imlib2cr and clone the Fossil repository.
- Create a new branch for your feature.
- Push locally to the new branch.
- Create a bundle with Fossil that contains your changes.
- Get in contact with me.
Contributors
- Remilia Scarlet - creator and maintainer
- Homepage: https://alexa.partition36.com/
- Mastodon: @MistressRemilia@mastodon.sdf.org
- Email: zremiliaz@postzeoz.jpz My real address does not contain Z's
License
See the COPYING file for license information (same license as Imlib2). COPYING-PLAIN is a more plain-English wording of the license.