Skip to main content

flux_wireframe_theme_cli 0.1.0 copy "flux_wireframe_theme_cli: ^0.1.0" to clipboard
flux_wireframe_theme_cli: ^0.1.0 copied to clipboard

A CLI tool for scaffolding Flutter apps with wireframe theme and interactive project tour.

FLUX Wireframe CLI #

Flutter UI Experience - Wireframe

A powerful CLI tool for scaffolding Flutter applications with a beautiful wireframe aesthetic. Get a production-ready app with dark mode, custom layouts, and professional theming in seconds.

pub package

โœจ Features #

  • ๐ŸŽฏ Interactive Menu - Easy-to-use guided interface for all commands
  • ๐ŸŽจ 4 Professional Layouts - Sidebar, Bottom Navigation, Grid, and Split View
  • ๐ŸŒ“ Dark Mode - Built-in theme switching with persistent state
  • ๐Ÿ”ค IBM Plex Mono - Professional monospace typography via Google Fonts
  • ๐ŸŽจ Icon Sets - Choose between Material Icons or Remix Icons
  • ๐Ÿ“ฑ Responsive Design - Adaptive layouts with smart breakpoints
  • ๐Ÿ”’ Safe - Automatic backups of existing files
  • โšก Fast - Complete project setup in ~30 seconds
  • ๐Ÿฅ Health Check - Built-in doctor and status commands
  • ๐Ÿงน Clean Reset - One command to reset to clean Flutter project

๐Ÿš€ Quick Start #

Installation #

dart pub global activate flux_wireframe_theme_cli

Usage #

# Interactive menu (recommended)
flux_wireframe

Menu options:

โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•
  FLUX Wireframe CLI
  Flutter UI Experience - Wireframe
โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•

Available commands:

  1) tour       - Interactive project setup wizard
  2) status     - Show project status
  3) doctor     - Check environment health
  4) clear      - Reset to clean Flutter project

  0) exit       - Exit FLUX CLI

Select option (0-4):

Quick Commands #

# Run commands directly
flux_wireframe tour        # Interactive setup wizard
flux_wireframe status      # Project status
flux_wireframe doctor      # Environment health check
flux_wireframe clear       # Reset project

Individual Commands #

flux_wireframe_tour        # Interactive setup wizard
flux_wireframe_status      # Project status
flux_wireframe_doctor      # Environment check
flux_wireframe_clear       # Reset project

๐Ÿ“ Available Commands #

๐ŸŽฏ Tour - Interactive Setup Wizard #

The main scaffolding wizard that guides you through project setup:

flux_wireframe tour

Interactive prompts:

Choose layout:
  a) Sidebar
  b) Bottom navbar
  c) Grid
  d) Split view
Select (a/b/c/d): 

Icon set:
  m) Material (default)
  r) Remix
Select (m/r): 

App title (shown in AppBar) [FLUX_WIREFRAME]: 

Theme storageKey (SharedPreferences) [myapp_isDarkMode]: 

What it does:

  • โœ… Creates lib/main.dart with theme setup
  • โœ… Generates lib/screens/ with chosen layout
  • โœ… Creates lib/icons/app_icons.dart abstraction
  • โœ… Adds required dependencies to pubspec.yaml
  • โœ… Backs up existing files as .bak
  • โœ… Enables Material Design icons

๐Ÿ“Š Status - Project Overview #

Shows comprehensive project status:

flux_wireframe status

Example output:

๐Ÿ“ฆ Project: my_awesome_app
๐Ÿ“Œ Version: 1.0.0+1

Dependencies:
  โœ“ wireframe_theme
  โœ“ provider
  โœ“ shared_preferences
  โ—‹ remixicon (optional)
  โœ“ cupertino_icons (optional)

Generated files:
  โœ“ lib/main.dart
  โœ“ lib/screens/
     โ””โ”€ 1 screen(s)
        โ€ข home_screen.dart
  โœ“ lib/icons/
     โ””โ”€ 1 icon file(s)

โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•
  โœ… FLUX Wireframe project - fully scaffolded
โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•

๐Ÿฅ Doctor - Environment Health Check #

Diagnoses your development environment:

flux_wireframe doctor

Checks:

  • โœ“ Flutter installation and version
  • โœ“ Dart SDK availability
  • โœ“ Valid Flutter project
  • โœ“ Required dependencies
  • โœ“ FLUX generated files
  • โœ“ Material Design icons setup

Example output:

Checking Flutter... โœ“
  Flutter 3.16.0 โ€ข channel stable

Checking Dart... โœ“
  Dart 3.2.0 (stable)

Checking Flutter project... โœ“
  Project: my_app

Checking wireframe_theme... โœ“ installed

โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•
  โœ… Everything looks good!
โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•

๐Ÿงน Clear - Reset Project #

Resets project to clean Flutter state:

flux_wireframe clear

What it does:

  • โš ๏ธ Deletes lib/main.dart
  • โš ๏ธ Removes lib/screens/ directory
  • โš ๏ธ Removes lib/icons/ directory
  • โš ๏ธ Deletes all .bak backup files
  • โœ… Runs flutter create . --overwrite automatically
  • โœ… Creates fresh Flutter counter app

โš ๏ธ Warning: This action cannot be undone! Commit to git first.

๐Ÿ“ Layouts #

Desktop-first layout with NavigationRail.

Best for: Admin dashboards, content management systems, desktop apps

Features:

  • Persistent sidebar navigation
  • Multiple content pages
  • Material NavigationRail component

Bottom Navigation Bar #

Mobile-friendly layout with BottomNavigationBar.

Best for: Mobile apps, social media apps, e-commerce

Features:

  • 3-tab navigation
  • IndexedStack for state preservation
  • Mobile-optimized touch targets

Grid Layout #

Responsive grid with automatic column adjustment.

Best for: Portfolios, product catalogs, image galleries

Breakpoints:

  • โ‰ฅ1100px โ†’ 4 columns
  • โ‰ฅ800px โ†’ 3 columns
  • โ‰ฅ520px โ†’ 2 columns
  • <520px โ†’ 1 column

Split View (Master-Detail) #

Adaptive layout with master-detail pattern.

Best for: Email clients, file browsers, settings panels

Features:

  • Side-by-side view on wide screens (โ‰ฅ840px)
  • Stack navigation on narrow screens
  • 25 sample items included

๐ŸŽจ Theming #

Wireframe Theme Package #

Uses wireframe_theme which provides:

  • โœจ Monochromatic color scheme (black/white)
  • ๐Ÿ”ค IBM Plex Mono typography
  • ๐Ÿ“ 2px borders on all components
  • ๐Ÿšซ Zero elevation/shadows
  • โฌœ Sharp corners (no border radius)
  • ๐ŸŽฏ Clean, minimal aesthetic

Dark Mode Support #

Built-in theme switching with persistent storage:

// Toggle dark mode
context.read().toggle();

// Check current mode
final isDark = context.watch().isDarkMode;

// Access colors
final foreground = WireframeTheme.getForeground(isDark);
final background = WireframeTheme.getBackground(isDark);

Persistence: Theme preference is saved using SharedPreferences and persists across app restarts.

๐Ÿ“ฆ Generated Project Structure #

lib/
โ”œโ”€โ”€ main.dart                    # App entry point
โ”‚   โ”œโ”€โ”€ ThemeController setup
โ”‚   โ”œโ”€โ”€ Provider configuration
โ”‚   โ””โ”€โ”€ MaterialApp with themes
โ”‚
โ”œโ”€โ”€ icons/
โ”‚   โ””โ”€โ”€ app_icons.dart          # Icon abstraction layer
โ”‚       โ”œโ”€โ”€ Material OR Remix icons
โ”‚       โ””โ”€โ”€ Consistent API
โ”‚
โ””โ”€โ”€ screens/
    โ”œโ”€โ”€ home_screen.dart        # Main screen (layout-specific)
    โ””โ”€โ”€ detail_screen.dart      # Detail screen (split view only)

Backup System #

Before overwriting, automatic backups are created:

lib/main.dart           โ†’ lib/main.dart.bak
lib/screens/foo.dart    โ†’ lib/screens/foo.dart.bak

Restore: mv lib/main.dart.bak lib/main.dart

๐Ÿ”ง Dependencies #

Automatically Added to pubspec.yaml #

dependencies:
  flutter:
    sdk: flutter
  
  # Wireframe theme from pub.dev
  wireframe_theme: ^1.0.4
  
  # State management
  provider: ^6.0.0
  
  # Persistent storage
  shared_preferences: ^2.0.0
  
  # iOS icons
  cupertino_icons: ^1.0.8
  
  # Remix icons (if selected)
  remixicon: ^1.0.0

flutter:
  uses-material-design: true

๐ŸŽฏ Icon Sets #

Material Icons (Default) #

import 'package:flutter/material.dart';

class AppIcons {
  static const IconData dashboard = Icons.dashboard_outlined;
  static const IconData inbox = Icons.inbox_outlined;
  static const IconData settings = Icons.settings_outlined;
  static const IconData home = Icons.home_outlined;
  static const IconData search = Icons.search_outlined;
  static const IconData profile = Icons.person_outline;
  static const IconData chevronRight = Icons.chevron_right;
  static const IconData darkMode = Icons.dark_mode;
  static const IconData lightMode = Icons.light_mode;
}

Remix Icons (Optional) #

import 'package:flutter/widgets.dart';
import 'package:remixicon/remixicon.dart';

class AppIcons {
  static const IconData dashboard = Remix.dashboard_line;
  static const IconData inbox = Remix.inbox_line;
  static const IconData settings = Remix.settings_3_line;
  static const IconData home = Remix.home_2_line;
  static const IconData search = Remix.search_2_line;
  static const IconData profile = Remix.user_3_line;
  static const IconData chevronRight = Remix.arrow_right_s_line;
  static const IconData darkMode = Remix.moon_line;
  static const IconData lightMode = Remix.sun_line;
}

๐Ÿ—๏ธ Generated Code Structure #

main.dart #

import 'package:flutter/material.dart';
import 'package:provider/provider.dart';
import 'package:wireframe_theme/wireframe_theme.dart';

import 'screens/home_screen.dart';

Future main() async {
  WidgetsFlutterBinding.ensureInitialized();

  final theme = ThemeController(storageKey: 'myapp_isDarkMode');
  await theme.init();

  runApp(
    ChangeNotifierProvider.value(
      value: theme,
      child: const App(),
    ),
  );
}

class App extends StatelessWidget {
  const App({super.key});

  @override
  Widget build(BuildContext context) {
    final theme = context.watch();

    return MaterialApp(
      title: 'MyApp',
      debugShowCheckedModeBanner: false,
      theme: WireframeTheme.getTheme(false),
      darkTheme: WireframeTheme.getTheme(true),
      themeMode: theme.isDarkMode ? ThemeMode.dark : ThemeMode.light,
      home: const HomeScreen(),
    );
  }
}

State Management with Provider #

// Access theme state
final theme = context.watch();

// Toggle dark mode
context.read().toggle();

// Set mode explicitly
context.read().setDarkMode(true);

๐Ÿ“ฑ Responsive Breakpoints #

Layout Breakpoint Behavior
Sidebar N/A Always shows sidebar
Bottom Nav N/A Always shows bottom bar
Grid 1100px / 800px / 520px 4 โ†’ 3 โ†’ 2 โ†’ 1 columns
Split View 840px Side-by-side โ†” Stack navigation
# 1. Create Flutter project
flutter create my_awesome_app
cd my_awesome_app

# 2. Install FLUX Wireframe CLI
dart pub global activate flux_wireframe_theme_cli

# 3. Check environment (optional)
flux_wireframe doctor

# 4. Run interactive setup
flux_wireframe tour
# OR use the menu
flux_wireframe

# 5. Install dependencies
flutter pub get

# 6. Run your app
flutter run

# 7. Check status anytime
flux_wireframe status

๐Ÿ› Troubleshooting #

Icons showing as squares #

Solution:

flutter pub get

Verify pubspec.yaml has:

flutter:
  uses-material-design: true

"Package not found" #

Solution: The CLI automatically adds dependencies. If issues persist:

flutter clean
flutter pub get

Environment issues #

Solution:

flux_wireframe doctor

This will diagnose:

  • โœ“ Flutter installation
  • โœ“ Dart SDK
  • โœ“ Project validity
  • โœ“ Dependencies

Backup files cluttering project #

Solution: Delete .bak files manually:

# Unix/Mac
find lib -name "*.bak" -delete

# Windows
del /s lib\*.bak

๐Ÿ’ก Pro Tips #

  1. ๐Ÿ”„ Start Fresh - Run on a new flutter create project for best results
  2. ๐Ÿ“ Git First - Commit before running to easily revert changes
  3. ๐Ÿฅ Use Doctor - Run flux_wireframe doctor to check environment
  4. ๐Ÿ“Š Check Status - Use flux_wireframe status for project overview
  5. ๐ŸŽจ Experiment - Try different layouts - backups protect you
  6. ๐Ÿ“ฑ Mobile First - Bottom nav is most mobile-friendly
  7. ๐ŸŽฏ Menu Mode - Use flux_wireframe (no args) for guided experience

๐Ÿ“„ License #

MIT License - see LICENSE file for details.

๐Ÿค Contributing #

Contributions are welcome! Areas for improvement:

  • โŒ More layout options (drawer, tabs, etc.)
  • โŒ Additional theme variants
  • โŒ Color scheme customization
  • โŒ Animation presets
  • โŒ Custom component library
  • โŒ Testing suite
  • โŒ Video tutorials

How to contribute:

  1. Fork the repository
  2. Create a feature branch
  3. Make your changes
  4. Submit a pull request

๐Ÿ“ž Support #

Need help?

๐ŸŽฏ Philosophy #

FLUX Wireframe CLI embraces:

  • โœจ Minimalism - Clean, focused interfaces
  • ๐ŸŽฏ Consistency - Predictable patterns across layouts
  • ๐Ÿ“– Readability - Monospace typography for clarity
  • ๐Ÿ”ง Flexibility - Easy to customize and extend
  • โšก Speed - Get productive in seconds, not hours

Built with โค๏ธ for the Flutter community

Scaffold smarter, build faster. ๐Ÿš€

FLUX - Flutter UI Experience CLI

0
likes
140
points
26
downloads

Documentation

API reference

Publisher

unverified uploader

Weekly Downloads

A CLI tool for scaffolding Flutter apps with wireframe theme and interactive project tour.

License

MIT (license)

Dependencies

args, io, path

More

Packages that depend on flux_wireframe_theme_cli