Intial Setup

This commit is contained in:
Stefan Hardegger
2025-07-21 08:47:52 +02:00
commit 68c7c8115f
20 changed files with 1276 additions and 0 deletions

View File

@@ -0,0 +1,34 @@
@tailwind base;
@tailwind components;
@tailwind utilities;
@layer base {
html {
font-family: Inter, system-ui, sans-serif;
}
}
@layer components {
.reading-content {
@apply max-w-reading mx-auto px-6 py-8;
font-family: Georgia, Times, serif;
line-height: 1.7;
}
.reading-content h1,
.reading-content h2,
.reading-content h3,
.reading-content h4,
.reading-content h5,
.reading-content h6 {
@apply font-bold mt-8 mb-4;
}
.reading-content p {
@apply mb-4;
}
.reading-content blockquote {
@apply border-l-4 border-gray-300 pl-4 italic my-6;
}
}

60
frontend/src/types/api.ts Normal file
View File

@@ -0,0 +1,60 @@
export interface Story {
id: string;
title: string;
authorId: string;
authorName: string;
contentHtml: string;
contentPlain: string;
sourceUrl?: string;
wordCount: number;
seriesId?: string;
seriesName?: string;
volume?: number;
rating?: number;
coverImagePath?: string;
tags: string[];
createdAt: string;
updatedAt: string;
}
export interface Author {
id: string;
name: string;
notes?: string;
authorRating?: number;
avatarImagePath?: string;
urls: AuthorUrl[];
stories: Story[];
createdAt: string;
updatedAt: string;
}
export interface AuthorUrl {
id: string;
url: string;
description?: string;
}
export interface Tag {
id: string;
name: string;
storyCount: number;
}
export interface Series {
id: string;
name: string;
storyCount: number;
}
export interface AuthResponse {
token: string;
expiresIn: number;
}
export interface SearchResult {
stories: Story[];
totalCount: number;
page: number;
totalPages: number;
}