prism_flutter 2.0.0
prism_flutter: ^2.0.0 copied to clipboard
Flutter extensions for the Prism color library. Prism is an optimized, zero-dependency color manipulation library for Dart & Flutter with multiple color models, accessibility tools, and pre-built palettes.
Prism Flutter 🌈 #
Flutter extensions for the Prism color manipulation library. Provides conversion between RayRgb8
and Flutter Color
objects.
Resources #
Features #
- 🔄 Easy conversion: Extensions for
RayRgb8
↔Color
conversion - 🎨 Full ARGB support: Perfect fidelity round-trip conversions
- ⚡ Zero overhead: Direct value conversions
- 🌈 Enhanced manipulation: Access Prism's color operations from Flutter Colors
Quick Start #
import 'package:prism_flutter/prism_flutter.dart';
// Convert RayRgb8 to Flutter Color
final ray = RayRgb8.fromHex('#FF0000');
final color = ray.toColor();
// Convert Flutter Color to RayRgb8
final backToRay = Colors.red.toRayRgb8();
Usage #
RayRgb8 to Flutter Color #
final red = RayRgb8.fromHex('#FF0000');
final color = red.toColor();
final transparent = red.toColorWithOpacity(0.5);
Flutter Color to RayRgb8 #
final color = Colors.blue;
final ray = color.toRayRgb8();
Enhanced Color Operations #
// Chain operations using both Flutter and Prism methods
final result = Colors.red
.toRayRgb8()
.withOpacity(0.8)
.lerp(Colors.blue.toRayRgb8(), 0.3)
.toColor();
// Generate accessibility schemes
final scheme = Spectrum.fromRay(Colors.blue.toRayRgb8());
final textColor = scheme.source.onRay.toColor();
Color Palettes #
Access pre-built color palettes with Flutter integration:
import 'package:prism_flutter/prism_flutter.dart';
import 'package:prism/palettes/rgb/material.dart';
final materialBlue = MaterialRgb.blue.shade500.toColor();
final primaryColor = MaterialRgb.indigo.source.toColor();
API Reference #
RayRgb8 Extensions #
toColor()
- Convert to Flutter ColortoColorWithOpacity(double opacity)
- Convert with specific opacity
Flutter Color Extensions #
toRayRgb8()
- Convert to RayRgb8
License #
MIT License © 2025 Jimmy Forrester-Fellowes - see LICENSE file for details.
For an introduction to Prism see Jimmy's blog post.