flutter_neumorphic_ui 0.0.1 copy "flutter_neumorphic_ui: ^0.0.1" to clipboard
flutter_neumorphic_ui: ^0.0.1 copied to clipboard

A Flutter package for creating customizable neumorphic (soft UI) widgets with theme, depth, and light source support.

🔮 Flutter Neumorphic UI #

A powerful and flexible Flutter package to create beautiful neumorphic (soft UI) elements that support deep customization across all widgets.

Inspired by skeuomorphic design principles, this package provides a modern, adaptive UI system with full support for light and dark themes, custom depth, light source, and styling options.


flutter_neumorphic_ui

✨ Features #

🌑 Light & Dark mode support
🌕 Adjustable depth, intensity, surfaceIntensity
🌈 Full color customization
🧱 Widget-level control: Text, Icon, Button, Container, Slider, Toggle, etc.
📐 Shape and box style customization (circle, stadium, beveled, etc.)
🎛️ Interactive LightSource manipulation (dx, dy)
👶 Beginner-friendly API

🚀 Installation #

Add the dependency in your pubspec.yaml:

dependencies:
  flutter_neumorphic_ui: ^0.0.1

Then run:

flutter pub get

🛠️ Getting Started #

Wrap your app with NeumorphicTheme:

import 'package:flutter_neumorphic_ui/flutter_neumorphic_ui.dart';

void main() {
  runApp(
    NeumorphicApp(
      debugShowCheckedModeBanner: false,
      theme: NeumorphicThemeData(
        baseColor: Color(0xFFE0E0E0),
        lightSource: LightSource.topLeft,
        depth: 6,
        intensity: 0.5,
      ),
      home: MyHomePage(),
    ),
  );
}

📦 Available Widgets #

🔹 NeumorphicContainer #

Neumorphic(
  style: NeumorphicStyle(
    depth: 4,
    color: Colors.grey[300],
    boxShape: NeumorphicBoxShape.roundRect(BorderRadius.circular(12)),
  ),
  child: Padding(
    padding: const EdgeInsets.all(16.0),
    child: Text("Neumorphic Box"),
  ),
)

🔹 NeumorphicButton #

NeumorphicButton(
  onPressed: () {},
  style: NeumorphicStyle(
    depth: 6,
    boxShape: NeumorphicBoxShape.stadium(),
    color: Colors.purpleAccent,
  ),
  child: Text("Click Me", style: TextStyle(color: Colors.white)),
)

🔹 NeumorphicText #

NeumorphicText(
  "Neumorphic",
  textStyle: NeumorphicTextStyle(
    fontSize: 36,
    fontWeight: FontWeight.w700,
  ),
  style: NeumorphicStyle(
    depth: 4,
    color: Colors.white,
  ),
)

🔹 NeumorphicSlider #

NeumorphicSlider(
  min: 0,
  max: 100,
  value: sliderValue,
  onChanged: (value) => setState(() => sliderValue = value),
)

🔹 NeumorphicToggle #

NeumorphicToggle(
  height: 40,
  selectedIndex: 0,
  displayForegroundOnlyIfSelected: true,
  children: [
    ToggleElement(child: Text("On")),
    ToggleElement(child: Text("Off")),
  ],
  thumb: Neumorphic(
    style: NeumorphicStyle(
      boxShape: NeumorphicBoxShape.circle(),
    ),
  ),
  onChanged: (index) => setState(() => toggleIndex = index),
)

⚙️ Customization Options #

Property Description
depth Controls shadow depth
intensity Light/Shadow brightness
surfaceIntensity Surface reflection feel
boxShape Round, Circle, Stadium, Beveled
lightSource Direction of light (topLeft, bottomRight, or custom dx/dy)
color Background color

🖤 Dark Mode #

You can switch between light and dark modes with themeMode:

NeumorphicTheme(
  themeMode: ThemeMode.dark,
  darkTheme: NeumorphicThemeData(
    baseColor: Color(0xFF121212),
    depth: 6,
    intensity: 0.6,
    accentColor: Colors.deepPurple,
  ),
  child: MyHomePage(),
)

🤝 Contributions #

7
likes
90
points
23
downloads
screenshot

Publisher

verified publisherdevcodespace.com

Weekly Downloads

A Flutter package for creating customizable neumorphic (soft UI) widgets with theme, depth, and light source support.

Repository (GitHub)
View/report issues

Documentation

API reference

License

MIT (license)

Dependencies

flutter

More

Packages that depend on flutter_neumorphic_ui