The codebase that powers boop.cat boop.cat
11
fork

Configure Feed

Select the types of activity you want to include in your feed.

Add source file headers for license

scanash00 af35719c 16910f4d

+248
+4
backend-go/config/config.go
··· 1 + // Copyright 2025 boop.cat 2 + // Licensed under the Apache License, Version 2.0 3 + // See LICENSE file for details. 4 + 1 5 package config 2 6 3 7 import (
+4
backend-go/db/admin.go
··· 1 + // Copyright 2025 boop.cat 2 + // Licensed under the Apache License, Version 2.0 3 + // See LICENSE file for details. 4 + 1 5 package db 2 6 3 7 import (
+4
backend-go/db/api_keys.go
··· 1 + // Copyright 2025 boop.cat 2 + // Licensed under the Apache License, Version 2.0 3 + // See LICENSE file for details. 4 + 1 5 package db 2 6 3 7 import (
+4
backend-go/db/atproto.go
··· 1 + // Copyright 2025 boop.cat 2 + // Licensed under the Apache License, Version 2.0 3 + // See LICENSE file for details. 4 + 1 5 package db 2 6 3 7 import (
+4
backend-go/db/custom_domains.go
··· 1 + // Copyright 2025 boop.cat 2 + // Licensed under the Apache License, Version 2.0 3 + // See LICENSE file for details. 4 + 1 5 package db 2 6 3 7 import (
+4
backend-go/db/db.go
··· 1 + // Copyright 2025 boop.cat 2 + // Licensed under the Apache License, Version 2.0 3 + // See LICENSE file for details. 4 + 1 5 package db 2 6 3 7 import (
+4
backend-go/db/deployments.go
··· 1 + // Copyright 2025 boop.cat 2 + // Licensed under the Apache License, Version 2.0 3 + // See LICENSE file for details. 4 + 1 5 package db 2 6 3 7 import (
+4
backend-go/db/email.go
··· 1 + // Copyright 2025 boop.cat 2 + // Licensed under the Apache License, Version 2.0 3 + // See LICENSE file for details. 4 + 1 5 package db 2 6 3 7 import (
+4
backend-go/db/github.go
··· 1 + // Copyright 2025 boop.cat 2 + // Licensed under the Apache License, Version 2.0 3 + // See LICENSE file for details. 4 + 1 5 package db 2 6 3 7 import (
+4
backend-go/db/oauth.go
··· 1 + // Copyright 2025 boop.cat 2 + // Licensed under the Apache License, Version 2.0 3 + // See LICENSE file for details. 4 + 1 5 package db 2 6 3 7 import (
+4
backend-go/db/sites.go
··· 1 + // Copyright 2025 boop.cat 2 + // Licensed under the Apache License, Version 2.0 3 + // See LICENSE file for details. 4 + 1 5 package db 2 6 3 7 import (
+4
backend-go/db/users.go
··· 1 + // Copyright 2025 boop.cat 2 + // Licensed under the Apache License, Version 2.0 3 + // See LICENSE file for details. 4 + 1 5 package db 2 6 3 7 import (
+4
backend-go/deploy/b2.go
··· 1 + // Copyright 2025 boop.cat 2 + // Licensed under the Apache License, Version 2.0 3 + // See LICENSE file for details. 4 + 1 5 package deploy 2 6 3 7 import (
+4
backend-go/deploy/build.go
··· 1 + // Copyright 2025 boop.cat 2 + // Licensed under the Apache License, Version 2.0 3 + // See LICENSE file for details. 4 + 1 5 package deploy 2 6 3 7 import (
+4
backend-go/deploy/cloudflare.go
··· 1 + // Copyright 2025 boop.cat 2 + // Licensed under the Apache License, Version 2.0 3 + // See LICENSE file for details. 4 + 1 5 package deploy 2 6 3 7 import (
+4
backend-go/deploy/encryption.go
··· 1 + // Copyright 2025 boop.cat 2 + // Licensed under the Apache License, Version 2.0 3 + // See LICENSE file for details. 4 + 1 5 package deploy 2 6 3 7 import (
+4
backend-go/deploy/engine.go
··· 1 + // Copyright 2025 boop.cat 2 + // Licensed under the Apache License, Version 2.0 3 + // See LICENSE file for details. 4 + 1 5 package deploy 2 6 3 7 import (
+4
backend-go/deploy/git.go
··· 1 + // Copyright 2025 boop.cat 2 + // Licensed under the Apache License, Version 2.0 3 + // See LICENSE file for details. 4 + 1 5 package deploy 2 6 3 7 import (
+4
backend-go/deploy/preview.go
··· 1 + // Copyright 2025 boop.cat 2 + // Licensed under the Apache License, Version 2.0 3 + // See LICENSE file for details. 4 + 1 5 package deploy 2 6 3 7 import (
+4
backend-go/handlers/account.go
··· 1 + // Copyright 2025 boop.cat 2 + // Licensed under the Apache License, Version 2.0 3 + // See LICENSE file for details. 4 + 1 5 package handlers 2 6 3 7 import (
+4
backend-go/handlers/admin.go
··· 1 + // Copyright 2025 boop.cat 2 + // Licensed under the Apache License, Version 2.0 3 + // See LICENSE file for details. 4 + 1 5 package handlers 2 6 3 7 import (
+4
backend-go/handlers/api_keys.go
··· 1 + // Copyright 2025 boop.cat 2 + // Licensed under the Apache License, Version 2.0 3 + // See LICENSE file for details. 4 + 1 5 package handlers 2 6 3 7 import (
+4
backend-go/handlers/api_v1.go
··· 1 + // Copyright 2025 boop.cat 2 + // Licensed under the Apache License, Version 2.0 3 + // See LICENSE file for details. 4 + 1 5 package handlers 2 6 3 7 import (
+4
backend-go/handlers/atproto.go
··· 1 + // Copyright 2025 boop.cat 2 + // Licensed under the Apache License, Version 2.0 3 + // See LICENSE file for details. 4 + 1 5 package handlers 2 6 3 7 import (
+4
backend-go/handlers/auth.go
··· 1 + // Copyright 2025 boop.cat 2 + // Licensed under the Apache License, Version 2.0 3 + // See LICENSE file for details. 4 + 1 5 package handlers 2 6 3 7 import (
+4
backend-go/handlers/auth_email.go
··· 1 + // Copyright 2025 boop.cat 2 + // Licensed under the Apache License, Version 2.0 3 + // See LICENSE file for details. 4 + 1 5 package handlers 2 6 3 7 import (
+4
backend-go/handlers/custom_domains.go
··· 1 + // Copyright 2025 boop.cat 2 + // Licensed under the Apache License, Version 2.0 3 + // See LICENSE file for details. 4 + 1 5 package handlers 2 6 3 7 import (
+4
backend-go/handlers/deploy.go
··· 1 + // Copyright 2025 boop.cat 2 + // Licensed under the Apache License, Version 2.0 3 + // See LICENSE file for details. 4 + 1 5 package handlers 2 6 3 7 import (
+4
backend-go/handlers/deploy_extras.go
··· 1 + // Copyright 2025 boop.cat 2 + // Licensed under the Apache License, Version 2.0 3 + // See LICENSE file for details. 4 + 1 5 package handlers 2 6 3 7 import (
+4
backend-go/handlers/github.go
··· 1 + // Copyright 2025 boop.cat 2 + // Licensed under the Apache License, Version 2.0 3 + // See LICENSE file for details. 4 + 1 5 package handlers 2 6 3 7 import (
+4
backend-go/handlers/github_installed.go
··· 1 + // Copyright 2025 boop.cat 2 + // Licensed under the Apache License, Version 2.0 3 + // See LICENSE file for details. 4 + 1 5 package handlers 2 6 3 7 import (
+4
backend-go/handlers/github_webhooks.go
··· 1 + // Copyright 2025 boop.cat 2 + // Licensed under the Apache License, Version 2.0 3 + // See LICENSE file for details. 4 + 1 5 package handlers 2 6 3 7 import (
+4
backend-go/handlers/oauth.go
··· 1 + // Copyright 2025 boop.cat 2 + // Licensed under the Apache License, Version 2.0 3 + // See LICENSE file for details. 4 + 1 5 package handlers 2 6 3 7 import (
+4
backend-go/handlers/sites.go
··· 1 + // Copyright 2025 boop.cat 2 + // Licensed under the Apache License, Version 2.0 3 + // See LICENSE file for details. 4 + 1 5 package handlers 2 6 3 7 import (
+4
backend-go/lib/dmca.go
··· 1 + // Copyright 2025 boop.cat 2 + // Licensed under the Apache License, Version 2.0 3 + // See LICENSE file for details. 4 + 1 5 package lib 2 6 3 7 import (
+4
backend-go/lib/email.go
··· 1 + // Copyright 2025 boop.cat 2 + // Licensed under the Apache License, Version 2.0 3 + // See LICENSE file for details. 4 + 1 5 package lib 2 6 3 7 import (
+4
backend-go/lib/encryption.go
··· 1 + // Copyright 2025 boop.cat 2 + // Licensed under the Apache License, Version 2.0 3 + // See LICENSE file for details. 4 + 1 5 package lib 2 6 3 7 import (
+4
backend-go/lib/pkce.go
··· 1 + // Copyright 2025 boop.cat 2 + // Licensed under the Apache License, Version 2.0 3 + // See LICENSE file for details. 4 + 1 5 package lib 2 6 3 7 import (
+4
backend-go/lib/turnstile.go
··· 1 + // Copyright 2025 boop.cat 2 + // Licensed under the Apache License, Version 2.0 3 + // See LICENSE file for details. 4 + 1 5 package lib 2 6 3 7 import (
+4
backend-go/main.go
··· 1 + // Copyright 2025 boop.cat 2 + // Licensed under the Apache License, Version 2.0 3 + // See LICENSE file for details. 4 + 1 5 package main 2 6 3 7 import (
+4
backend-go/middleware/auth.go
··· 1 + // Copyright 2025 boop.cat 2 + // Licensed under the Apache License, Version 2.0 3 + // See LICENSE file for details. 4 + 1 5 package middleware 2 6 3 7 import (
+4
backend-go/middleware/ratelimit.go
··· 1 + // Copyright 2025 boop.cat 2 + // Licensed under the Apache License, Version 2.0 3 + // See LICENSE file for details. 4 + 1 5 package middleware 2 6 3 7 import (
+4
backend-go/middleware/session.go
··· 1 + // Copyright 2025 boop.cat 2 + // Licensed under the Apache License, Version 2.0 3 + // See LICENSE file for details. 4 + 1 5 package middleware 2 6 3 7 import (
+4
backend-go/oauth/providers.go
··· 1 + // Copyright 2025 boop.cat 2 + // Licensed under the Apache License, Version 2.0 3 + // See LICENSE file for details. 4 + 1 5 package oauth 2 6 3 7 import (
+4
client/src/App.jsx
··· 1 + // Copyright 2025 boop.cat 2 + // Licensed under the Apache License, Version 2.0 3 + // See LICENSE file for details. 4 + 1 5 import React from 'react'; 2 6 import { Routes, Route, Link, useNavigate } from 'react-router-dom'; 3 7 import Login from './pages/Login.jsx';
+4
client/src/components/MillyLogo.jsx
··· 1 + // Copyright 2025 boop.cat 2 + // Licensed under the Apache License, Version 2.0 3 + // See LICENSE file for details. 4 + 1 5 import React from 'react'; 2 6 export default function MillyLogo({ size = 24, style = {}, ...props }) { 3 7 return (
+4
client/src/components/ThemeToggle.jsx
··· 1 + // Copyright 2025 boop.cat 2 + // Licensed under the Apache License, Version 2.0 3 + // See LICENSE file for details. 4 + 1 5 import React, { useEffect, useState } from 'react'; 2 6 3 7 export default function ThemeToggle({ className = '' }) {
+4
client/src/main.jsx
··· 1 + // Copyright 2025 boop.cat 2 + // Licensed under the Apache License, Version 2.0 3 + // See LICENSE file for details. 4 + 1 5 import React from 'react'; 2 6 import ReactDOM from 'react-dom/client'; 3 7 import { BrowserRouter } from 'react-router-dom';
+4
client/src/pages/Account.jsx
··· 1 + // Copyright 2025 boop.cat 2 + // Licensed under the Apache License, Version 2.0 3 + // See LICENSE file for details. 4 + 1 5 import React, { useEffect, useState } from 'react'; 2 6 import { useNavigate, useOutletContext, useSearchParams } from 'react-router-dom'; 3 7 import { Mail, Lock, AlertTriangle, Link2, Unlink, Key, Copy, Check, Trash2 } from 'lucide-react';
+4
client/src/pages/ApiDocs.jsx
··· 1 + // Copyright 2025 boop.cat 2 + // Licensed under the Apache License, Version 2.0 3 + // See LICENSE file for details. 4 + 1 5 import React from 'react'; 2 6 import { useNavigate, useOutletContext } from 'react-router-dom'; 3 7 import { Book, Key, Terminal, Copy, Check, ExternalLink } from 'lucide-react';
+4
client/src/pages/DashboardHome.jsx
··· 1 + // Copyright 2025 boop.cat 2 + // Licensed under the Apache License, Version 2.0 3 + // See LICENSE file for details. 4 + 1 5 import React from 'react'; 2 6 import { Link, useOutletContext } from 'react-router-dom'; 3 7 import MillyLogo from '../components/MillyLogo.jsx';
+4
client/src/pages/DashboardLayout.jsx
··· 1 + // Copyright 2025 boop.cat 2 + // Licensed under the Apache License, Version 2.0 3 + // See LICENSE file for details. 4 + 1 5 import React, { useEffect, useMemo, useState } from 'react'; 2 6 import { Link, Outlet, useLocation, useNavigate } from 'react-router-dom'; 3 7 import {
+4
client/src/pages/DashboardSite.jsx
··· 1 + // Copyright 2025 boop.cat 2 + // Licensed under the Apache License, Version 2.0 3 + // See LICENSE file for details. 4 + 1 5 import React, { useEffect, useMemo, useState } from 'react'; 2 6 import { useNavigate, useOutletContext, useParams } from 'react-router-dom'; 3 7 import {
+4
client/src/pages/Dmca.jsx
··· 1 + // Copyright 2025 boop.cat 2 + // Licensed under the Apache License, Version 2.0 3 + // See LICENSE file for details. 4 + 1 5 import React from 'react'; 2 6 import { Link } from 'react-router-dom'; 3 7 import ThemeToggle from '../components/ThemeToggle.jsx';
+4
client/src/pages/Login.jsx
··· 1 + // Copyright 2025 boop.cat 2 + // Licensed under the Apache License, Version 2.0 3 + // See LICENSE file for details. 4 + 1 5 import React, { useState, useRef, useEffect, useCallback } from 'react'; 2 6 import ThemeToggle from '../components/ThemeToggle.jsx'; 3 7
+4
client/src/pages/NewSite.jsx
··· 1 + // Copyright 2025 boop.cat 2 + // Licensed under the Apache License, Version 2.0 3 + // See LICENSE file for details. 4 + 1 5 import React, { useEffect, useState } from 'react'; 2 6 import { Link, useNavigate, useOutletContext } from 'react-router-dom'; 3 7 import { ArrowLeft, Link as LinkIcon, Github, Lock, Search, Loader2, Book, GitBranch, ArrowRight } from 'lucide-react';
+4
client/src/pages/Privacy.jsx
··· 1 + // Copyright 2025 boop.cat 2 + // Licensed under the Apache License, Version 2.0 3 + // See LICENSE file for details. 4 + 1 5 import React from 'react'; 2 6 import { Link } from 'react-router-dom'; 3 7 import ThemeToggle from '../components/ThemeToggle.jsx';
+4
client/src/pages/ResetPassword.jsx
··· 1 + // Copyright 2025 boop.cat 2 + // Licensed under the Apache License, Version 2.0 3 + // See LICENSE file for details. 4 + 1 5 import React, { useState, useEffect } from 'react'; 2 6 import { useSearchParams, useNavigate } from 'react-router-dom'; 3 7 import ThemeToggle from '../components/ThemeToggle.jsx';
+4
client/src/pages/Signup.jsx
··· 1 + // Copyright 2025 boop.cat 2 + // Licensed under the Apache License, Version 2.0 3 + // See LICENSE file for details. 4 + 1 5 import React, { useState, useRef, useEffect, useCallback } from 'react'; 2 6 import ThemeToggle from '../components/ThemeToggle.jsx'; 3 7
+4
client/src/pages/Tos.jsx
··· 1 + // Copyright 2025 boop.cat 2 + // Licensed under the Apache License, Version 2.0 3 + // See LICENSE file for details. 4 + 1 5 import React from 'react'; 2 6 import { Link } from 'react-router-dom'; 3 7 import ThemeToggle from '../components/ThemeToggle.jsx';
+4
client/vite.config.js
··· 1 + // Copyright 2025 boop.cat 2 + // Licensed under the Apache License, Version 2.0 3 + // See LICENSE file for details. 4 + 1 5 import { defineConfig } from 'vite'; 2 6 import react from '@vitejs/plugin-react'; 3 7 import path from 'node:path';
+4
edge/worker.js
··· 1 + // Copyright 2025 boop.cat 2 + // Licensed under the Apache License, Version 2.0 3 + // See LICENSE file for details. 4 + 1 5 const ASSET_EXTENSIONS = 2 6 /\.(js|mjs|css|png|jpg|jpeg|webp|avif|svg|gif|ico|woff|woff2|ttf|otf|eot|map|json|xml|txt|pdf|mp4|webm|mp3|wav)$/i; 3 7