Skip to content

Instantly share code, notes, and snippets.

View rodydavis's full-sized avatar
:electron:
Creative Coding

Rody Davis rodydavis

:electron:
Creative Coding
View GitHub Profile
@rodydavis
rodydavis / main.dart
Last active January 14, 2026 10:39
Flutter App as a MCP server
import 'dart:convert';
import 'package:flutter/material.dart';
import 'package:flutter/services.dart';
import 'package:provider/provider.dart';
import 'mcp_service.dart';
void main() async {
WidgetsFlutterBinding.ensureInitialized();
runApp(const McpApp());
@rodydavis
rodydavis / main.dart
Last active December 25, 2025 23:33
SQLite CRDT + Session Extension
import 'dart:ffi';
import 'dart:io';
import 'dart:typed_data';
import 'package:sqlite3/sqlite3.dart';
import 'package:sqlite3/src/ffi/implementation.dart';
void main() {
final lib = DynamicLibrary.open('cr-sqlite/core/dist/sqlite3');
final sqlite3 = FfiSqlite3(lib);
import 'dart:math';
import 'dart:typed_data';
enum ChangeOp { insert, delete, modify, equal }
class DiffNode {
final ChangeOp op;
final String key;
final Object? oldValue;
final Object? newValue;
@rodydavis
rodydavis / object_transform.dart
Created December 24, 2025 04:01
Object Transform in Dart
import 'dart:convert';
// =============================================================================
// --- CORE ALGORITHM (The Diff Engine) ---
// =============================================================================
/// Sentinel value for deleted keys
class Deleted {
const Deleted();
Map<String, dynamic> toJson() => {'_op': 'd'};
@rodydavis
rodydavis / myers_diff.dart
Created December 24, 2025 04:00
Myers Diff in Dart
import 'dart:typed_data';
import 'package:collection/collection.dart';
enum DiffType { insert, delete, equal }
class DiffOperation<T> {
final DiffType type;
final T data;
final int
index; // Index in newList (for insert) or oldList (for delete/equal)
@rodydavis
rodydavis / benchmark_chain.c
Last active November 14, 2025 01:30
Preact Signals in C
#include <stdio.h>
#include <stdlib.h> // For malloc, free
#include <time.h> // For clock_gettime
#include <stdint.h> // For intptr_t
#include "signals.h" // Your signals library
// How many computed signals to chain together
#define CHAIN_DEPTH 100
// How many times to update the head signal
#define NUM_UPDATES 100000
@rodydavis
rodydavis / UIAlertController.swift
Last active October 2, 2025 23:44
Swift 4 Alert Controller Examples
//Updated for Swift 4
//One Button
class ViewController: UIViewController {
@IBAction func showAlertButtonTapped(_ sender: UIButton) {
// create the alert
let alert = UIAlertController(title: "My Title", message: "This is my message.", preferredStyle: UIAlertControllerStyle.alert)
@rodydavis
rodydavis / podcast_rss_feed.xml
Created April 27, 2020 22:22
Podcast RSS Feed Example
<?xml version="1.0" encoding="UTF-8" ?>
<rss xmlns:googleplay="http://www.google.com/schemas/play-podcasts/1.0" xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:rawvoice="http://www.rawvoice.com/rawvoiceRssModule/" xmlns:content="http://purl.org/rss/1.0/modules/content/" version="2.0">
<channel>
<title>Creative Engineering</title>
<googleplay:author>Rody Davis, Norbert Kozsir</googleplay:author>
<rawvoice:rating>TV-G</rawvoice:rating>
<rawvoice:location>San Francisco, California</rawvoice:location>
<rawvoice:frequency>Weekly</rawvoice:frequency>
<author>Rody Davis, Norbert Kozsir</author>
<itunes:author>Rody Davis, Norbert Kozsir</itunes:author>
import 'package:flutter_hooks/flutter_hooks.dart';
import 'package:signals/signals_flutter.dart';
import 'package:signals_hooks/signals_hooks.dart';
import 'package:sqlite3/common.dart';
import 'package:sqlite3/sqlite3.dart';
const _memoryPath = ':memory:';
CommonDatabase useDatabase({
String path = _memoryPath,
String? vfs,
@rodydavis
rodydavis / flutter_github_ci.yml
Last active August 13, 2025 17:02
Flutter Github Actions Build and Deploy Web to Firebase Hosting, iOS to Testflight, Android to Google Play (fastlane)
name: CI
on:
push:
branches:
- master
pull_request:
branches:
- master
jobs:
build_web: