Skip to content

Instantly share code, notes, and snippets.

View hawkkiller's full-sized avatar
🎯
Focusing

Michael Lazebny hawkkiller

🎯
Focusing
View GitHub Profile
import 'package:meta/meta.dart';
void main() {
// iterates only first element.
gen().first;
print('Iterated first item because of first\n');
// iterates each element
gen().toList();
print('Iterated List\n');
gen().last;
@hawkkiller
hawkkiller / main.dart
Created April 25, 2022 07:54
An example of using intents and actions API
import 'package:flutter/material.dart';
import 'dart:async';
import 'package:meta/meta.dart';
const Color darkBlue = Color.fromARGB(255, 18, 32, 47);
void main() {
runApp(
const MyApp(),
);
void main() {
print(formatByDigits(10000));
print(formatByDigits(9999));
print(formatByDigits(12000));
print(formatByDigits(12000000));
}
String formatByDigits(int number) {
final s = number.toString().split('');
return s.reversed
@hawkkiller
hawkkiller / class.dart
Created June 23, 2022 08:50
Freezed vs Plain Class
@freezed
class UserCardsState with _$UserCardsState {
const UserCardsState._();
bool get inProgress => maybeMap(
fetching: (_) => true,
orElse: () => false,
);
bool get isFetched => maybeMap(
fetched: (_) => true,
@hawkkiller
hawkkiller / http.dart
Last active August 8, 2022 19:10
Create HTTP get request without using any libraries
import 'dart:io';
Future<void> main() {
final sock = await Socket.connect('www.google.com', 80);
sock.write('GET / HTTP/1.0\r\nHost: www.google.com\r\n\r\n');
sock.listen((event) {
print(String.fromCharCodes(event));
});
}
@hawkkiller
hawkkiller / debounced_restartable.dart
Created August 8, 2022 19:54
Debounced restartable which can help you implement the right search behavior, for example.
class DebouncedRestartableTransformer extends StreamTransformerBase<int, int> {
@override
Stream<int> bind(Stream<int> stream) {
return stream.debounce(const Duration(seconds: 1)).switchMap(Stream.value);
}
}
@hawkkiller
hawkkiller / animatable_textfield.dart
Last active August 12, 2022 20:21
A textfield that contain animated widget. Like telegram new update has. A breakthrough in mobile engineering as Durov said ✌️
import 'package:flutter/material.dart';
void main() {
runApp(const MainApp());
}
class MainApp extends StatelessWidget {
const MainApp({super.key});
@override

General Purpose

part 'theme.g.dart';

@ThemeGen(name: 'Light')
class _$AppThemeLight {}

@ThemeGen(name: 'Dark')
class _$AppThemeDark {}
@hawkkiller
hawkkiller / no_transition_page.dart
Created October 29, 2022 12:08
No Transition Page Dart, useful for nested nav
import 'package:flutter/material.dart';
class NoTransitionPage extends Page<Object> {
const NoTransitionPage({
required this.child,
this.fullscreenDialog = false,
this.maintainState = true,
this.barrierColor,
this.barrierLabel,
});
import 'package:flutter/material.dart';
import 'package:themegen_annotation/themegen_annotation.dart';
part 'example.g.dart';
@ThemeGen(
extensions: {
_$AppColorsLight,
_$AppFontStylesLight,
},