Skip to content

Instantly share code, notes, and snippets.

@rodydavis
rodydavis / material_navigation_view.dart
Created January 10, 2024 22:00
Navigation view similar to Fluent UI built with Material Design 3
import 'package:flutter/material.dart';
import 'package:go_router/go_router.dart';
import 'package:signals/signals_flutter.dart';
class NavigationView extends StatefulWidget {
const NavigationView({
super.key,
required this.appBar,
required this.items,
this.footerItems = const [],
import 'package:flutter/material.dart';
import 'package:signals/signals_flutter.dart';
class Editor extends StatefulWidget {
const Editor({super.key});
@override
State<Editor> createState() => _EditorState();
}
@rodydavis
rodydavis / rfw.dart
Created December 18, 2023 20:19
Flutter RFW Helper Widget
import 'package:flutter/material.dart';
import 'package:rfw/formats.dart';
import 'package:rfw/rfw.dart';
class Rfw extends StatefulWidget {
const Rfw({
super.key,
required this.source,
this.data = const {},
});
import 'package:sqlite3/sqlite3.dart';
import 'package:sqlite_async/sqlite_async.dart';
typedef RowParser<T> = T Function(Row row);
extension SqliteDatabaseUtils on SqliteDatabase {
Selectable<T> select<T>(
String sql, {
List<Object?> parameters = const [],
Set<String> tables = const {},
import 'package:flutter/material.dart';
import 'package:signals/signals_flutter.dart';
void main() => runApp(const MyApp());
class MyApp extends StatelessWidget {
const MyApp({super.key});
@override
Widget build(BuildContext context) => const MaterialApp(
import 'package:flutter/material.dart';
final brightness = signal(Brightness.light);
void main() => runApp(const MyApp());
class MyApp extends StatelessWidget {
const MyApp({super.key});
@override
// ignore_for_file: public_member_api_docs, constant_identifier_names
const _maxCallDepth = 100;
void cycleDetected() {
throw Exception('Cycle detected');
}
void mutationDetected() {
throw Exception('Computed cannot have side-effects');
}
import 'package:cronet_http/cronet_http.dart';
import 'package:cupertino_http/cupertino_http.dart';
import 'package:device_info_plus/device_info_plus.dart';
import 'package:fetch_client/fetch_client.dart';
import 'package:flutter/material.dart';
import 'package:http/http.dart';
import 'package:platform_info/platform_info.dart';
import 'package:flutter/foundation.dart';
void main() async {
@rodydavis
rodydavis / flutter_stream_widget.dart
Created November 2, 2023 23:16
Render a widget as a stream instead of a single funciton
import 'dart:async';
import 'package:flutter/widgets.dart';
abstract class StreamWidget extends StatefulWidget {
const StreamWidget({Key? key}) : super(key: key);
Stream<Widget> build(BuildContext context);
void initState() {}
@rodydavis
rodydavis / input_output_preview.dart
Created November 1, 2023 22:01
Flutter input, output, preview
import 'package:flutter/material.dart';
import 'two_pane.dart';
class InputOutputPreview extends StatefulWidget {
const InputOutputPreview({
super.key,
required this.title,
required this.input,
required this.output,