prop
Version, currently 0.7.18 versions
github.com/Nicolab/crystal-prop
Properties utilities for Crystal lang (improved getter, IoC, factory, ...).
6 stars
0 dependents
License: MIT
Installation
# Add this to your shard.yml
dependencies:
prop:
github: Nicolab/crystal-prop
version: ~> 0.7.1Then run:
shards installshard.yml
- Crystal
>= 0.36.1- License
- MIT
- Author
- Nicolas Talle <dev@nicolab.net>
- Target
propfrom src/prop.cr
Dependencies
Development Dependencies
README
# Prop
[](https://github.com/Nicolab/crystal-prop/actions) [](https://github.com/Nicolab/crystal-prop/releases) [](https://nicolab.github.io/crystal-prop/)
Properties utilities for Crystal lang.
Mixin module that should be included in a class or a struct.
This module improves the std's accessor macros (`getter`, `getter!`, `getter?`, `property`, ...).
It provide a kind of IoC (Inversion Of Control).
## Installation
1. Add the dependency to your `shard.yml`:
```yaml
dependencies:
prop:
github: nicolab/crystal-prop
```
2. Run `shards install`
## Usage
📘 [API doc](https://nicolab.github.io/crystal-prop/).
> If you are looking for a validator to validate data before instantiating a class or a struct,
you may be interested by [validator](https://github.com/Nicolab/crystal-validator).
This [validator](https://github.com/Nicolab/crystal-validator) shard uses `Prop` internally
to define and handle validation rules on each instance variable.
## Development
Install dev dependencies:
```sh
shards install
```
Run:
```sh
crystal spec
```
Clean before commit:
```sh
crystal tool format
./bin/ameba
```
## Contributing
1. Fork it (https://github.com/Nicolab/crystal-prop/fork)
2. Create your feature branch (`git checkout -b my-new-feature`)
3. Commit your changes (`git commit -am 'Add some feature'`)
4. Push to the branch (`git push origin my-new-feature`)
5. Create a new Pull Request
## LICENSE
[MIT](https://github.com/Nicolab/crystal-prop/blob/master/LICENSE) (c) 2021, Nicolas Talle.
## Author
| [](https://github.com/sponsors/Nicolab) |
|---|
| [Nicolas Talle](https://github.com/sponsors/Nicolab) |
| [](https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=PGRH4ZXP36GUC) |
Documentation
Built from the current release. The first visit to a release nobody has asked for starts its build.
Links
This release
- Version
0.7.1- Tagged
- Jun 19, 2021
- Commit
e496c4d614ed- Crystal
>= 0.36.1- Indexed
- yes
Dependents
No indexed shard depends on this one yet.
Repository
github.com/Nicolab/crystal-prop
Metadata
- Created
- Aug 12, 2026
- Updated
- Aug 13, 2026
- Synced
- Aug 13, 2026
- Versions
- 8