MCPcopy Create free account
hub / github.com/pollinations/pollinations / App

Function App

apps/chat/src/App.jsx:27–711  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

25} from "./utils/storage";
26
27function App() {
28 const {
29 chats,
30 activeChatId,
31 isGenerating,
32 setIsGenerating,
33 addChat,
34 deleteChat,
35 setActiveChat,
36 getActiveChat,
37 addMessage,
38 updateMessage,
39 removeMessagesAfter,
40 clearAllChats,
41 } = useChat();
42
43 const [_sidebarOpen, setSidebarOpen] = useState(false);
44 const [selectedModel, setSelectedModel] = useState("openai");
45 const [selectedImageModel, setSelectedImageModel] = useState("flux");
46 const [selectedVideoModel, setSelectedVideoModel] = useState("veo");
47 const [selectedAudioModel, setSelectedAudioModel] =
48 useState("openai-audio");
49 const [theme, setTheme] = useState("dark");
50 const [isShortcutsModalOpen, setIsShortcutsModalOpen] = useState(false);
51 const [isBYOPModalOpen, setIsBYOPModalOpen] = useState(false);
52
53 const [models, setModels] = useState({});
54 const [imageModels, setImageModels] = useState({});
55 const [videoModels, setVideoModels] = useState({});
56 const [audioModels, setAudioModels] = useState({});
57 const [modelsLoaded, setModelsLoaded] = useState(false);
58
59 const [confirmModal, setConfirmModal] = useState({
60 isOpen: false,
61 title: "",
62 message: "",
63 onConfirm: null,
64 isDangerous: false,
65 });
66 const [mode, setMode] = useState("chat");
67 const [sessionSettings, setSessionSettings] = useState({
68 systemPrompt:
69 "You are a helpful AI assistant who speaks concisely and helpfully.",
70 maxTokens: 2000,
71 temperature: 0.7,
72 topP: 1,
73 });
74 const [isSettingsPanelOpen, setIsSettingsPanelOpen] = useState(false);
75 const [isTutorialOpen, setIsTutorialOpen] = useState(false);
76 const [isGenerationOptionsOpen, setIsGenerationOptionsOpen] =
77 useState(false);
78 const [generationOptionsMode, setGenerationOptionsMode] =
79 useState("imagine");
80 const [imageGenerationOptions, setImageGenerationOptions] = useState({
81 width: 1024,
82 height: 1024,
83 seed: 42,
84 enhance: false,

Callers

nothing calls this directly

Calls 15

useChatFunction · 0.90
initializeModelsFunction · 0.90
getSelectedModelFunction · 0.90
getThemeFunction · 0.90
saveSelectedModelFunction · 0.90
saveThemeFunction · 0.90
sendMessageFunction · 0.90
stopGenerationFunction · 0.90
generateImageFunction · 0.90
generateVideoFunction · 0.90
generateAudioFunction · 0.90
applyThemeFunction · 0.85

Tested by

no test coverage detected