Tailwind classes in OCaml
1let () = 2 Printf.printf "=== Advanced Tailwind Features ===\n"; 3 4 (* V4 Container Queries *) 5 let container_responsive = Tailwind.V4.container_query `Lg 6 (Tailwind.Css.make "text-2xl") in 7 Printf.printf "Container Query (V4): %s\n" (Tailwind.to_string container_responsive); 8 9 (* V4 Starting Style *) 10 let starting_animation = Tailwind.V4.starting_style 11 (Tailwind.Css.make "opacity-0") in 12 Printf.printf "Starting Style (V4): %s\n" (Tailwind.to_string starting_animation); 13 14 (* V4 Text Shadow *) 15 let text_shadow = Tailwind.V4.text_shadow `Lg in 16 Printf.printf "Text Shadow (V4): %s\n" (Tailwind.to_string text_shadow); 17 18 (* Advanced Variants - Pseudo-classes *) 19 let hover_effect = Tailwind.Variants.hover (Tailwind.Css.make "bg-blue-600") in 20 Printf.printf "Hover Effect: %s\n" (Tailwind.to_string hover_effect); 21 22 let focus_visible = Tailwind.Variants.apply 23 (Tailwind.Variants.pseudo `Focus_visible (Tailwind.Css.make "ring-2")) 24 (Tailwind.Css.make "input") in 25 Printf.printf "Focus Visible: %s\n" (Tailwind.to_string focus_visible); 26 27 (* Responsive with Media Features *) 28 let dark_mode = Tailwind.Responsive.(apply 29 (media `Dark (Tailwind.Css.make "bg-gray-900")) 30 (Tailwind.Css.make "bg-white")) in 31 Printf.printf "Dark Mode: %s\n" (Tailwind.to_string dark_mode); 32 33 let motion_safe = Tailwind.Responsive.(apply 34 (media `Motion_safe (Tailwind.Css.make "transition-all")) 35 (Tailwind.Css.make "transform")) in 36 Printf.printf "Motion Safe: %s\n" (Tailwind.to_string motion_safe); 37 38 (* Advanced Effects *) 39 let backdrop_blur = Tailwind.Effects.(to_class (backdrop_blur `Lg)) in 40 Printf.printf "Backdrop Blur: %s\n" (Tailwind.to_string backdrop_blur); 41 42 let transform_origin = Tailwind.Effects.(to_class (transform_origin `Top_right)) in 43 Printf.printf "Transform Origin: %s\n" (Tailwind.to_string transform_origin); 44 45 let scale_transform = Tailwind.Effects.(to_class (scale `X 125)) in 46 Printf.printf "Scale Transform: %s\n" (Tailwind.to_string scale_transform); 47 48 let rotate_transform = Tailwind.Effects.(to_class (rotate 45)) in 49 Printf.printf "Rotate Transform: %s\n" (Tailwind.to_string rotate_transform); 50 51 let translate_transform = Tailwind.Effects.(to_class (translate `Y (Tailwind.Size.rem 2.0))) in 52 Printf.printf "Translate Transform: %s\n" (Tailwind.to_string translate_transform); 53 54 (* Complex Combination *) 55 let complex_card = Tailwind.tw [ 56 Tailwind.Color.bg (Tailwind.Color.make `White ()); 57 Tailwind.Effects.rounded_lg; 58 Tailwind.Effects.shadow_md; 59 backdrop_blur; 60 Tailwind.Spacing.(to_class (p (Tailwind.Size.rem 1.5))); 61 Tailwind.Effects.(to_class (transform `Gpu)); 62 Tailwind.Effects.transition `All; 63 hover_effect; 64 ] in 65 Printf.printf "Complex Card: %s\n" (Tailwind.to_string complex_card)