Skip to content

Instantly share code, notes, and snippets.

@rodydavis
rodydavis / crdt.c
Last active March 17, 2025 01:04
CRDTs in SQLite with just custom extensions
#include <sqlite3ext.h>
SQLITE_EXTENSION_INIT1
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <stdbool.h>
// Helper function to execute a SQL statement
static int execute_sql(sqlite3 *db, const char *sql) {
import 'dart:ffi';
import 'dart:typed_data';
import 'package:sqlite3/sqlite3.dart';
import 'package:sqlite3/src/ffi/implementation.dart';
import 'package:uuid/uuid.dart';
import 'hlc.dart';
void main() {
@rodydavis
rodydavis / main.dart
Last active March 17, 2025 15:14
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);
@rodydavis
rodydavis / my-element.js
Last active March 5, 2025 15:29
HTML Web Component with support for SSR
// @ts-check
import { WebComponent } from "./utils.js";
const tagName = "my-element";
const template = /*html*/ `
<span>
Hello, <span id="name">World</span>!
</span>
import 'package:jaspr/jaspr.dart';
import 'package:signals/signals_core.dart';
import 'watch.dart';
import 'embedded_counter.dart';
class Counter extends StatefulComponent {
const Counter({super.key});
@override
import 'dart:js_interop';
import 'dart:js_interop_unsafe';
import 'package:web/web.dart';
class WebComponent<T extends HTMLElement> {
late T element;
String get extendsType => 'HTMLElement';
void connectedCallback() {}
import 'package:mustache_template/mustache_template.dart';
import 'package:signals/signals_core.dart';
import 'package:sqlite3/sqlite3.dart';
class UndoRedoManager {
final Database _db;
UndoRedoManager(this._db);
bool _active = false;
List<List<int>> _undoStack = [];
import 'package:flutter/material.dart';
import 'package:signals/signals_flutter.dart';
final debugShowCheckedModeBanner = signal(false);
final app = computed<Widget>(() {
return MaterialApp(
debugShowCheckedModeBanner: debugShowCheckedModeBanner(),
home: home(),
);
import 'dart:js_interop';
import 'package:web/web.dart';
void onMessage(Event event) {
if (event is MessageEvent) {
print('Worker received message: ${event.data}');
}
}
void postMessage(
import { computed, signal } from "@preact/signals-core";
import { html } from "@lit-labs/preact-signals";
import { LitTemplateMixin } from "./mixins.js";
import { mix } from "./mixwith.js";
import { styleMap } from "lit/directives/style-map.js";
class Example extends mix(HTMLElement).with(LitTemplateMixin) {
tags = signal<string[]>([
"Docker",
"Kubernetes",