feat: rebrand Hemmelig to paste.es for cloudhost.es

- Set Spanish as default language with ephemeral/encrypted privacy focus
- Translate all user-facing strings and legal pages to Spanish
- Replace Norwegian flag with Spanish flag in footer
- Remove Hemmelig/terces.cloud links, add cloudhost.es sponsorship
- Rewrite PrivacyPage: zero data collection, ephemeral design emphasis
- Rewrite TermsPage: Spanish law, RGPD, paste.es/CloudHost.es references
- Update PWA manifest, HTML meta tags, package.json branding
- Rename webhook headers to X-Paste-Event / X-Paste-Signature
- Update API docs title and contact to paste.es / cloudhost.es

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-02-24 09:30:19 +01:00
commit bc9f96cbd4
268 changed files with 45773 additions and 0 deletions

48
api/routes.ts Normal file
View File

@@ -0,0 +1,48 @@
import { Hono } from 'hono';
import { getEnabledSocialProviders } from './auth';
import openapi from './openapi';
import accountRoute from './routes/account';
import analyticsRoute from './routes/analytics';
import apiKeysRoute from './routes/api-keys';
import filesRoute from './routes/files';
import healthRoute from './routes/health';
import instanceRoute from './routes/instance';
import { invitePublicRoute, inviteRoute } from './routes/invites';
import metricsRoute from './routes/metrics';
import secretRequestsRoute from './routes/secret-requests';
import secretsRoute from './routes/secrets';
import setupRoute from './routes/setup';
import { userRoute } from './routes/user';
// Create a new router
const routes = new Hono()
.route('/secrets', secretsRoute)
.route('/secret-requests', secretRequestsRoute)
.route('/account', accountRoute)
.route('/files', filesRoute)
.route('/user', userRoute)
.route('/instance', instanceRoute)
.route('/analytics', analyticsRoute)
.route('/invites/public', invitePublicRoute)
.route('/invites', inviteRoute)
.route('/setup', setupRoute)
.route('/api-keys', apiKeysRoute)
.route('/metrics', metricsRoute)
.route('/health', healthRoute)
.route('/', openapi)
// Legacy liveness endpoint (kept for backwards compatibility)
.get('/healthz', (c) => c.json({ status: 'healthy', timestamp: new Date().toISOString() }))
.get('/config/social-providers', (c) => {
const providers = getEnabledSocialProviders();
const baseUrl = process.env.HEMMELIG_BASE_URL || c.req.header('origin') || '';
const callbackBaseUrl = baseUrl ? `${baseUrl}/api/auth/callback` : '';
return c.json({
providers,
callbackBaseUrl,
});
});
export default routes;
export type AppType = typeof routes;