Add a soprano recorder tab converter as a Linux AppImage.

The app turns a lead line into Baroque fingering tabs with rhythm kept, ships Twinkle and Ode to Joy, and reads photos locally with oemer when the bundled Python is present.

Co-authored-by: catpersonisme <catpersonisme@gmail.com>
This commit is contained in:
Cursor Agentandchen committed 2026-10-09 03:35:16 +00:00
1 parent 72c2f509f6
commit 59d65333e3
55 files changed
+17536

No files matched your search

+33
View File
@@ -0,0 +1,33 @@
import type { Metadata } from "next";
import { Fraunces, Source_Sans_3 } from "next/font/google";
import { Toaster } from "@/components/ui/sonner";
import "./globals.css";
const sans = Source_Sans_3({
subsets: ["latin"],
variable: "--font-source",
weight: ["400", "500", "600", "700"],
});
const display = Fraunces({
subsets: ["latin"],
variable: "--font-display",
weight: ["500", "600", "700"],
});
export const metadata: Metadata = {
title: "Recorder Tab Converter",
description:
"Turn a lead melody into soprano recorder fingering tabs, with rhythm, rests, and bar lines kept.",
};
export default function RootLayout({ children }: LayoutProps<"/">) {
return (
<html lang="en" className={`${sans.variable} ${display.variable} h-full antialiased`}>
<body className="min-h-full flex flex-col font-sans">
{children}
<Toaster />
</body>
</html>
);
}