Skip to content

Instantly share code, notes, and snippets.

View miguelpruivo's full-sized avatar
🚀
Fluttering

Miguel Ruivo miguelpruivo

🚀
Fluttering
View GitHub Profile
Future<bool> checkConnection() async {
try {
final result = await InternetAddress.lookup('google.com');
if (result.isNotEmpty && result[0].rawAddress.isNotEmpty) {
return true;
}
} on SocketException catch (_) {}
return false;
}
import 'dart:math';
import 'package:cached_network_image/cached_network_image.dart';
import 'package:flutter/material.dart';
import 'package:jnation/resources/constants.dart';
const double _kPercentageOfScreenAppBar = 0.25;
const double _kListViewTopBottomPadding = 25.0;
const double _kAppbarScrollOffset = 75.0;
@miguelpruivo
miguelpruivo / carousel.dart
Created December 28, 2018 13:14
A carousel widget
@miguelpruivo
miguelpruivo / tracking_progress_line.dart
Created December 28, 2018 13:12
A progress line that goes from a starting date to an end date
class MyProgressLine extends CustomPainter {
MyProgressLine({this.shipped, this.estDelivery});
final DateTime shipped;
final DateTime estDelivery;
@override
void paint(Canvas canvas, Size size) {
Paint paint = Paint()
..color = Colors.green
@miguelpruivo
miguelpruivo / polygon_widget.dart
Created December 13, 2018 12:19
Polygon Widget
class ClipPolygon extends StatelessWidget {
final Widget child;
final int sides;
ClipPolygon({
@required this.child,
@required this.sides,
});
@override
import 'dart:math';
import 'package:flutter/material.dart';
const double _kMaxWidthRatio = 0.90;
const double _kMinWidthRatio = 0.45;
const int _kMaxCharRow = 25;
void main() => runApp(MaterialApp(home: Screen()));