Intial Setup
This commit is contained in:
34
frontend/src/app/globals.css
Normal file
34
frontend/src/app/globals.css
Normal 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
60
frontend/src/types/api.ts
Normal 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;
|
||||
}
|
||||
Reference in New Issue
Block a user