figma_tokens_builder 0.0.3+2
figma_tokens_builder: ^0.0.3+2 copied to clipboard
A build_runner code generator that converts Figma design token JSON files (W3C format) into type-safe Dart ThemeExtension classes with multi-mode presets, BuildContext extensions, and responsive themi [...]
import 'package:example/resources/figma.g.dart';
import 'package:example/utils/theme_extensions.dart';
import 'package:flutter/material.dart';
void main() => runApp(const MyApp());
class MyApp extends StatelessWidget {
const MyApp({super.key});
@override
Widget build(BuildContext context) {
return MaterialApp(
// theme: ThemeData(extensions: extensions),
builder: (context, child) {
final extensions = switch (context.width) {
> 1024 => Figma.desktop,
> 600 => Figma.tablet,
_ => Figma.mobile,
};
return Theme(
data: Theme.of(context).copyWith(extensions: extensions),
child: child!,
);
},
home: const HomePage(),
);
}
}
class HomePage extends StatelessWidget {
const HomePage({super.key});
@override
Widget build(BuildContext context) {
return Scaffold(
body: Padding(
padding: EdgeInsets.all(context.spacing.spaceBlock),
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
children: <Widget>[
const Text('You have pushed the button this many times:'),
Text('_counter', style: context.textTheme.headlineMedium),
],
),
),
);
}
}