Skip to content

Instantly share code, notes, and snippets.

@rena2019
rena2019 / chrrp-benchmark.txt
Last active September 20, 2026 12:34
chrrp-benchmark.txt
=== Zeitmessung chrrp.eu ===
Start: 2026-09-20 14:33:05+02:00
Login-User: rena2019 | Profil: rena2019
--------------------------------------------------------------------------------
2026-09-20 14:33:05.075+02:00 | GET https://chrrp.eu/login -> 96.9 ms [200] OK
2026-09-20 14:33:05.173+02:00 | POST https://chrrp.eu/login -> 809.9 ms [200] OK
-> final URL: https://chrrp.eu/timeline
Login-Check: erfolgreich (via _is_logged_in_html)
2026-09-20 14:33:06.584+02:00 | GET https://chrrp.eu/rena2019 -> 1056.3 ms [200] OK
2026-09-20 14:33:07.642+02:00 | GET https://chrrp.eu/public -> 390.1 ms [200] OK
@rena2019
rena2019 / chrrp-api.md
Created September 19, 2026 19:03
chrrp-api.md

API-Vorschlag – Webscraping für chrrp.eu überflüssig machen

Stand: 2026-09-19
Ausgangsbasis: chrrp.py (2470 Zeilen Scraping) + app/lib/data/api_chrrp_repository.dart (Port nach Dart mit html + CSRF/Cookie-Jar)
Ziel: REST/JSON-API https://chrrp.eu/api/v1 die alle HTML-Parsing-Funktionen ersetzt. Kein _csrf, kein div.tweet Regex, kein Cookie-Jar – stattdessen Authorization: Bearer <JWT> + JSON.


1. Warum Scraping ersetzen?

@rena2019
rena2019 / main.dart
Created June 4, 2026 09:48
AppBar drop shadow downward onto 2nd widget
import 'package:flutter/material.dart';
void main() {
runApp(MyApp());
}
class MyApp extends StatelessWidget {
MyApp({super.key});
Widget layeredStack({
@rena2019
rena2019 / main.dart
Created June 2, 2026 14:26
fontWeight: TextStyle vs GoogleFonts
import 'package:flutter/material.dart';
import 'package:google_fonts/google_fonts.dart';
//fontWeight: TextStyle vs GoogleFonts
void main() {
runApp(const MyApp());
}
class MyApp extends StatelessWidget {
@rena2019
rena2019 / main.dart
Created May 26, 2026 14:24
shadow + scrollview test
import 'package:flutter/material.dart';
void main() => runApp(const MyApp());
class MyApp extends StatelessWidget {
const MyApp({super.key});
@override
Widget build(BuildContext context) {
return MaterialApp(
@rena2019
rena2019 / ESP32-C3FH4-Touch.md
Last active April 3, 2026 17:22
2.4-Inch ESP32-C3FH4 Development Board with WiFi for RISC-V MCU 240x320 TFT Smart Touch LCD Display

Information about: 2.4-Inch ESP32-C3FH4 Development Board

Pic1 Pic2

Specification

@rena2019
rena2019 / main.dart
Created November 4, 2025 14:01
flutter bytes buffer / byte data
///flutter bytes buffer / byte data
import 'dart:typed_data';
void main() {
final bytes = Uint8List.fromList([0,0,1,0]);
final bd = ByteData.sublistView(bytes, 0, 4);
print(bd.getInt32(0));//256
bd.setInt32(0, 65536);
print(bd.getInt32(0));//65536
print(bytes);//[0, 1, 0, 0]
@rena2019
rena2019 / user.script
Last active October 30, 2025 10:00
tampermonkey script to hide threads ghost posts
// ==UserScript==
// @name ThreadsByeByeGhostPosts
// @namespace http://tampermonkey.net/
// @version 2025-10-30
// @description bye bye ghost posst @ Threads
// @author rena2019
// @match https://www.threads.com/
// @icon https://www.google.com/s2/favicons?sz=64&domain=threads.com
// @run-at document-idle
// @noframes
//Flutter ValueNotifier + ValueListenableBuilder (reactive way to manage state)
import 'package:flutter/material.dart';
void main() {
runApp(MyApp());
}
class MyApp extends StatelessWidget {
MyApp({super.key});
@rena2019
rena2019 / main.dart
Created October 10, 2025 12:56
Flutter OverlayEntry with ValueNotifier
//Flutter OverlayEntry with ValueNotifier
import 'dart:async';
import 'package:flutter/material.dart';
void main() => runApp(const MyApp());
class MyApp extends StatelessWidget {
const MyApp({super.key});