Skip to content

Instantly share code, notes, and snippets.

View JohanScheepers's full-sized avatar

Johan Scheepers JohanScheepers

  • Durban South Africa
View GitHub Profile
@JohanScheepers
JohanScheepers / main.dart
Created June 26, 2026 18:45
Google Cloud Summit 2026 Johannesburg
import 'package:flutter/material.dart';
import 'dart:async';
void main() {
runApp(const CloudSummitApp());
}
class CloudSummitApp extends StatelessWidget {
const CloudSummitApp({super.key});
@JohanScheepers
JohanScheepers / main.dart
Created June 21, 2026 08:00
Pure render-object Flutter app — zero widget layer.
import 'dart:ui' as ui;
import 'package:flutter/gestures.dart';
import 'package:flutter/rendering.dart';
// =============================================================================
// Pure render-object Flutter app — zero widget layer.
//
// Boot sequence:
// 1. Initialise the rendering binding (scheduler, gestures, painting, etc.)
import 'package:flutter/widgets.dart';
import 'dart:ui';
import 'package:signals/signals_flutter.dart';
/// Entry point of the application.
void main() {
runApp(const App());
}
/// The root widget of the application.
@JohanScheepers
JohanScheepers / main.dart
Last active September 7, 2025 15:05
Use of MultiChildRenderObjectWidget layout widgets dependent on size
/*--------------------------------------------------------------------------------
A talk on MultiChildRenderObjectWidget @FlutterNFriends 2025 by Ingvild Sandstad
https://gist.github.com/JohanScheepers/58c1aab94b4af6d0c61b516a78f91893
--------------------------------------------------------------------------------*/
import 'dart:math' as math;
@JohanScheepers
JohanScheepers / main.dart
Created August 31, 2025 19:18
fl_dart example for dartpad.dev
import 'package:flutter/material.dart';
import 'package:fl_chart/fl_chart.dart';
void main() {
runApp(const ChartExampleApp());
}
class ChartExampleApp extends StatelessWidget {
const ChartExampleApp({super.key});
@JohanScheepers
JohanScheepers / main.dart
Created July 18, 2025 20:02
ConfusionApp
// Copyright 2022 Me. All rights reserved.
// ConfusionApp
// Intensionally cause confusion between width and height
import 'package:flutter/material.dart';
void main() {
runApp(const ConfusionApp());
}
import 'package:flutter/material.dart';
void main() {
runApp(
const MyApp(),
);
}
@JohanScheepers
JohanScheepers / main.dart
Last active April 8, 2025 20:37
Dashboard Screen
// Needs some more refinement
import 'package:flutter/material.dart';
import 'dart:async';
import 'dart:math' as math; // Keep dart:math import
void main() {
runApp(const MyApp());
}
import 'package:flutter/material.dart';
void main() {
runApp(MyApp());
}
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
@JohanScheepers
JohanScheepers / main.dart
Last active March 6, 2025 20:26
Applying theming to Flutter App
// Work in progress
import 'package:flutter/material.dart';
void main() {
runApp(const MyApp());
}
class MyApp extends StatelessWidget {
const MyApp({super.key});