Skip to content

Instantly share code, notes, and snippets.

View rutvik110's full-sized avatar
🎡
Humming

Rutvik Tak rutvik110

🎡
Humming
View GitHub Profile
@rutvik110
rutvik110 / algolia_data_parser.ts
Created December 20, 2021 06:53
Normal Data to Algolia Format data parser
import { dataProcessor } from "./processors";
export const parseDataToAlgoliaFormat = (snapshot: { [key: string]: any }) => {
let payload: {
[key: string]: boolean | string | number;
} = {
objectID: snapshot.id ?? snapshot.objectID,
path: snapshot.path
};
@rutvik110
rutvik110 / audio_data_parser.dart
Last active December 13, 2023 01:21
Audio Data parse
import 'dart:convert';
import 'dart:math' as math;
List<double> loadparseJson(String jsonBody) {
final data = jsonDecode(jsonBody);
final List<int> points = List.castFrom(data['data']);
List<int> filteredData = [];
// Change this value to number of audio samples you want.
// Values between 256 and 1024 are good for showing [RectangleWaveform] and [SquigglyWaveform]
@rutvik110
rutvik110 / future_state_notifier.dart
Created December 17, 2021 10:23
FutureState Notifier Riverpod
import 'package:flutter_riverpod/flutter_riverpod.dart';
//a state notifier that can be used to call a future after an event.
//it will automatically update the state when the future completes
//call [doRequest] to call the future
//pass in [request] to the [doRequest] function or in the constructor
//the [request] in the doRequest function will take precendence over the [request] in the constructor
class FutureStateNotifier<T> extends StateNotifier<AsyncValue<T>> {
FutureStateNotifier({this.request}) : super(AsyncValue<T>.loading());
final Future<T> Function()? request;
class JsonParserIsolate {
final String input;
JsonParserIsolate(this.input);
Future parseJson({Function(String)? onError}) async {
final completer = Completer();
var port = ReceivePort();
var errorPort = ReceivePort();
@rutvik110
rutvik110 / analysis_options.yaml
Created December 12, 2021 08:02
Analysis Options file for flutter projects which uses VGV analysis and dart-code-metrics.
include: package:very_good_analysis/analysis_options.yaml
linter:
rules:
analyzer:
exclude:
- test/
plugins:
- dart_code_metrics
@rutvik110
rutvik110 / export_to_csv_on_web.dart
Created December 1, 2021 08:59
Export To CSV on Web
import 'dart:convert';
import 'dart:html';
import 'package:csv/csv.dart';
String parseDataToCsvString(List<List<dynamic>> data) {
final String csvString =
ListToCsvConverter().convert(data, fieldDelimiter: ",");
return csvString;
}
@rutvik110
rutvik110 / audio_data.json
Last active January 16, 2025 13:16
Audio Data Json
This file has been truncated, but you can view the full file.
{
"version": 2,
"channels": 1,
"sample_rate": 48000,
"samples_per_pixel": 256,
"bits": 16,
"length": 38795,
//Only thing we need is πŸ‘‡ this data points list.
"data": [
0,
@rutvik110
rutvik110 / audio_track_visualizer.dart
Created November 20, 2021 15:24
Audio Track Visualizer
import 'dart:convert';
import 'dart:developer';
import 'dart:math' as math;
import 'dart:ui';
import 'package:audioplayers/audioplayers.dart';
import 'package:flutter/foundation.dart';
import 'package:flutter/material.dart';
import 'package:flutter/services.dart';
import 'package:flutter/widgets.dart';
@rutvik110
rutvik110 / my_explicit_animation.dart
Created November 4, 2021 09:25
My Explicit Animation
import 'package:flutter/material.dart';
class MyExplicitAnimation extends StatefulWidget {
const MyExplicitAnimation({Key? key}) : super(key: key);
@override
_MyExplicitAnimationState createState() => _MyExplicitAnimationState();
}
class _MyExplicitAnimationState extends State<MyExplicitAnimation>
@rutvik110
rutvik110 / gist:debcaaab19ceeb51059a4388b5531fd6
Last active October 6, 2021 14:15
MyCustom Implicit Animation
class MyCustomImplicitAnimation extends StatelessWidget {
const MyCustomImplicitAnimation({Key? key}) : super(key: key);
static final dimensionsTween = Tween<double>(begin: 100.0, end: 200.0);
@override
Widget build(BuildContext context) {
return Scaffold(
body: TweenAnimationBuilder<double>(