Skip to content

Instantly share code, notes, and snippets.

View RahmiTufanoglu's full-sized avatar
🎯
Focusing

Rahmi Tufanoglu RahmiTufanoglu

🎯
Focusing
View GitHub Profile
class FlexRow extends StatelessWidget {
const FlexRow({
super.key,
required this.children,
this.width = 150,
this.height = 50,
this.color,
this.borderRadius = const BorderRadius.all(Radius.circular(24)),
this.boxShadow,
});
@RahmiTufanoglu
RahmiTufanoglu / app_dialog.dart
Last active January 22, 2023 12:01
Custom app dialog
import 'package:flutter/material.dart';
import 'package:qwiz_ui/app_box_shadow.dart';
import 'package:qwiz_ui/qwiz_ui.dart';
class AppDialog extends PopupRoute {
AppDialog({
required Widget child,
double width = 300,
double height = 300,
Duration transitionDuration = const Duration(milliseconds: 300),
@RahmiTufanoglu
RahmiTufanoglu / app_box_shadow.dart
Created January 22, 2023 11:59
Custom BoxShadow
import 'package:flutter/material.dart';
class AppBoxShadow extends BoxShadow {
const AppBoxShadow({
super.color = Colors.black12,
super.offset = Offset.zero,
super.spreadRadius = 4,
super.blurRadius = 8,
super.blurStyle = BlurStyle.normal,
});
@RahmiTufanoglu
RahmiTufanoglu / app_checker.dart
Created January 12, 2023 23:13
AppStore and PlayStore App Checker
import 'dart:convert';
import 'package:http/http.dart' as http;
Future<String> checkAppAvailabilityInAppStore(String appId) async {
final uri = Uri.parse('https://itunes.apple.com/lookup?id=$appId');
final response = await http.get(uri);
if (response.statusCode != 200) {
throw Exception('Failed to check app availability');
}
@RahmiTufanoglu
RahmiTufanoglu / blurred_box.dart
Last active January 18, 2023 19:38
BlurredBox
import 'dart:ui';
import 'package:flutter/material.dart';
class BlurredBox extends StatelessWidget {
const BlurredBox({
super.key,
this.child,
this.blurredChild,
this.width,
@RahmiTufanoglu
RahmiTufanoglu / rest.dart
Created December 11, 2022 21:53
Simple Dart Rest API
import 'dart:io';
import 'package:http/http.dart' as http;
void main() async {
var server = await HttpServer.bind(InternetAddress.anyIPv4, 8080);
print('Listening on port ${server.port}...');
await for (var request in server) {
handleRequest(request);
}
@RahmiTufanoglu
RahmiTufanoglu / test.dart
Created December 7, 2022 10:16
Remove TextFormField counter property
buildCounter: (context, {currentLength, maxLength, isFocused}) => null,
@RahmiTufanoglu
RahmiTufanoglu / good_form.dart
Last active December 6, 2022 13:30
Form with RawKeyboardListener
import 'package:flutter/material.dart';
import 'package:flutter/services.dart';
import 'dart:developer' as developer;
void main() => runApp(const MyApp());
class MyApp extends StatelessWidget {
const MyApp({super.key});
@override
@RahmiTufanoglu
RahmiTufanoglu / increment_pub_version.dart
Last active December 4, 2022 17:26
Increment pubspec.yaml version
import 'dart:io';
import 'package:args/args.dart';
import 'package:yaml/yaml.dart';
class VersionType {
const VersionType._();
static const major = 'major';
static const minor = 'minor';
@RahmiTufanoglu
RahmiTufanoglu / my_stream.dart
Last active December 3, 2022 22:13
Dart/Flutter Stream
...
final _streamController = StreamController(); // Single Subscription Stream
final _streamController = StreamController<double>.broadcast(); // Broadcast Stream
late final StreamSubscription<double> _streamSubscription;
...
// Subscribe
onPressed: () {
final stream = _streamController.stream;