Skip to content

Instantly share code, notes, and snippets.

View sondt2709's full-sized avatar

Sean Dang sondt2709

View GitHub Profile
@sondt2709
sondt2709 / flutter_persistent_draggable_bottom_widget.dart
Last active July 7, 2021 12:53
Flutter persistent draggable bottom widget
import 'package:flutter/material.dart';
class PersistentDraggableBottomWidget extends StatefulWidget {
PersistentDraggableBottomWidget() : super();
@override
_PersistentDraggableBottomWidgetState createState() => _PersistentDraggableBottomWidgetState();
}
class _PersistentDraggableBottomWidgetState extends State<PersistentDraggableBottomWidget> {
@sondt2709
sondt2709 / tplink-tapo-p100-connect.js
Created June 29, 2021 10:48
Trigger TP-Link Tapo P100 to turn ON/OFF
@sondt2709
sondt2709 / face_detection_opencv.py
Created June 16, 2021 14:51
Detect face from an image or RTSP
import cv2
import time
import numpy as np
import asyncio
width, height = 640, 480
cap = cv2.VideoCapture("rtsp://usr:pwd@localhost:554")
cap.set(3, width)
cap.set(4, height)
@sondt2709
sondt2709 / traefik-caddy-duckdns.docker-compose.yaml
Last active June 15, 2021 10:09
Traefik + Caddy + DuckDNS
version: "3.7"
services:
traefik:
image: traefik:v2.4
container_name: traefik
ports:
- 80:80
- 443:443
@sondt2709
sondt2709 / octokit-push-commit.js
Created May 11, 2021 18:37
Octokit push commit
// Source: https://dev.to/lucis/how-to-push-files-programatically-to-a-repository-using-octokit-with-typescript-1nj0
const { Octokit } = require('@octokit/rest')
const glob = require('globby')
const path = require('path')
const { readFile } = require('fs-extra')
// org or owner
const ORGANIZATION = process.env.ORGANIZATION
@sondt2709
sondt2709 / json-keyvalue-to-object-lodash.js
Last active May 7, 2021 09:06
Parse JSON key-value to JSON object using Lodash
const json = {
'key1': 'value1',
'key2': 'value2',
}
const lodash = require('lodash')
const result = lodash.reduce(json, (obj, v, k) => {
obj[k] = {
message: v,