Skip to content

Commit 5698009

Browse files
committed
small tweaks
1 parent edc5ca6 commit 5698009

File tree

4 files changed

+50
-39
lines changed

4 files changed

+50
-39
lines changed

README.md

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -114,6 +114,17 @@ Supports 15 AI providers including Anthropic, OpenAI, Google, xAI, Mistral, Deep
114114

115115
**Brin threat scanning** — Every external URL is scanned through [Brin](https://brin.sh) ([GitHub](https://github.com/superagent-ai/brin)) for threats. Web search results and CORS proxy requests with a threat score below 30 are blocked.
116116

117+
## Deploying with Railway (GitHub Actions)
118+
119+
The [deploy workflow](.github/workflows/deploy.yml) runs `railway up` using the [Railway CLI](https://docs.railway.com/guides/cli). Configure these **repository secrets**:
120+
121+
| Secret | Value |
122+
|--------|--------|
123+
| `RAILWAY_TOKEN` | A **[project token](https://docs.railway.com/integrations/api#project-token)** from **Project → Project settings → Tokens** (scoped to the environment you deploy to). Not the same as an account or workspace token from [Account → Tokens](https://railway.com/account/tokens). |
124+
| `RAILWAY_SERVICE_ID` | The target service’s ID (⌘/Ctrl+K in the Railway dashboard → copy **Service ID**), or the service name if the CLI accepts it for your project. |
125+
126+
Paste the token once with **no quotes** and **no leading/trailing whitespace**. If the CLI reports `Invalid RAILWAY_TOKEN`, rotate the project token in Railway, update the secret, and re-run the workflow.
127+
117128
## Contributing
118129

119130
Contributions are welcome. Some areas that need work:

src/app/page.tsx

Lines changed: 30 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -30,39 +30,37 @@ export default function Home() {
3030
<div className="flex h-screen overflow-hidden bg-zinc-900">
3131
<div className="flex flex-col flex-1 min-w-0">
3232
<header className="flex items-center justify-between gap-4 px-5 py-3">
33-
<div className="flex min-w-0 flex-1 items-center gap-3">
34-
<h1 className="shrink-0 text-sm font-medium uppercase tracking-[0.2em]">
35-
<ScrambleText
36-
text="InfiniteMonitor"
37-
charClassName={(i) =>
38-
i < infiniteLen ? "text-zinc-600" : "text-zinc-300"
39-
}
40-
/>
41-
</h1>
42-
<div className="flex shrink-0 items-center gap-2">
43-
<DashboardPicker />
44-
<AddMenu />
45-
</div>
33+
<h1 className="min-w-0 shrink-0 text-sm font-medium uppercase tracking-[0.2em]">
34+
<ScrambleText
35+
text="InfiniteMonitor"
36+
charClassName={(i) =>
37+
i < infiniteLen ? "text-zinc-600" : "text-zinc-300"
38+
}
39+
/>
40+
</h1>
41+
<div className="flex shrink-0 flex-wrap items-center justify-end gap-2">
42+
<a
43+
href="https://github.com/homanp/infinite-monitor"
44+
target="_blank"
45+
rel="noopener noreferrer"
46+
className={buttonVariants({
47+
size: "sm",
48+
className:
49+
"gap-1.5 border border-zinc-700 bg-zinc-800 text-zinc-200 hover:bg-zinc-700 uppercase tracking-wider !text-xs",
50+
})}
51+
>
52+
<Star className="h-3.5 w-3.5" />
53+
GitHub
54+
{stars !== null && (
55+
<>
56+
<span className="text-zinc-600">·</span>
57+
<span>{stars.toLocaleString()}</span>
58+
</>
59+
)}
60+
</a>
61+
<DashboardPicker />
62+
<AddMenu />
4663
</div>
47-
<a
48-
href="https://github.com/homanp/infinite-monitor"
49-
target="_blank"
50-
rel="noopener noreferrer"
51-
className={buttonVariants({
52-
size: "sm",
53-
className:
54-
"shrink-0 gap-1.5 border border-zinc-700 bg-zinc-800 text-zinc-200 hover:bg-zinc-700 uppercase tracking-wider !text-xs",
55-
})}
56-
>
57-
<Star className="h-3.5 w-3.5" />
58-
GitHub
59-
{stars !== null && (
60-
<>
61-
<span className="text-zinc-600">·</span>
62-
<span>{stars.toLocaleString()}</span>
63-
</>
64-
)}
65-
</a>
6664
</header>
6765
<DashboardGrid />
6866
</div>

src/components/chat-sidebar.tsx

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -894,6 +894,14 @@ export function ChatSidebar() {
894894
<span className="text-zinc-400">esc to interrupt</span>
895895
</span>
896896
) : (
897+
<PromptInputFileUpload
898+
onFiles={handleFiles}
899+
disabled={isActiveStreaming}
900+
/>
901+
)}
902+
</div>
903+
<div className="flex items-center gap-1">
904+
{!isActiveStreaming && (
897905
<>
898906
{modelTrigger}
899907
<SearchProviderPicker disabled={isActiveStreaming} />
@@ -919,12 +927,6 @@ export function ChatSidebar() {
919927
<McpConfigDialog open={mcpOpen} onOpenChange={setMcpOpen} />
920928
</>
921929
)}
922-
</div>
923-
<div className="flex items-center gap-1">
924-
<PromptInputFileUpload
925-
onFiles={handleFiles}
926-
disabled={isActiveStreaming}
927-
/>
928930
<PromptInputSubmit
929931
disabled={(!input.trim() && pendingFiles.length === 0) || !activeWidget || isActiveStreaming}
930932
/>

src/components/dashboard-picker.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -133,7 +133,7 @@ export function DashboardPicker() {
133133
</Button>
134134

135135
{open && (
136-
<div className="absolute top-full left-0 mt-1 z-50 min-w-[220px] border border-zinc-700 bg-zinc-800 shadow-xl">
136+
<div className="absolute top-full right-0 mt-1 z-50 min-w-[220px] border border-zinc-700 bg-zinc-800 shadow-xl">
137137
<div className="py-1">
138138
{dashboards.map((d) => (
139139
<div

0 commit comments

Comments
 (0)