Features
Use cases
Explore
Townie
AI
Blog
Docs
Pricing
We’re hiring!
Log in
Sign up
jxnblk
OpenTownie
Remix of stevekrouse/OpenTownie
Unlisted
Like
Remix
Close sidebar
OpenTownie
Home
Code
7
backend
4
frontend
6
prompts
2
.vtignore
README.md
TODOs.md
H
index.ts
Branches
10
Pull requests
1
Remixes
2
History
Environment variables
Val Town is a collaborative website to build and scale JavaScript apps.
Deploy APIs, crons, & store data – all from the browser, and deployed in milliseconds.
Sign up now
css
Open
jxnblk
wants to merge into
react-router
from
styles-v2
Opened by jxnblk
5/1/2025
No description
71 files changed
+2710
-3040
README.md
+3
-3
react-router
styles-v2
TODOs.md
+27
-4
backend/index.ts
+2
-0
backend/routes/projects-loader.ts
+1
-1
frontend/components/App.tsx
+30
-14
frontend/components/BranchSelect.tsx
+30
-5
frontend/components/ChatRoute.tsx
+183
-7
frontend/components/Home.tsx
+89
-108
frontend/components/LayoutRoute.tsx
+5
-4
frontend/components/Loading.tsx
+6
-1
frontend/components/LoginRoute.tsx
+23
-11
frontend/components/MessageTimer.tsx
+2
-6
frontend/components/NotFoundRoute.tsx
+1
-1
frontend/components/Preview.tsx
+27
-59
frontend/components/ProjectsRoute.tsx
+84
-6
frontend/hooks/useAuth.tsx
+39
-4
frontend/hooks/useBranches.tsx
+14
-13
frontend/hooks/useChatLogic.ts
+4
-1
frontend/hooks/useCreateBranch.tsx
+2
-1
frontend/hooks/useCreateProject.tsx
+29
-19
frontend/hooks/useProject.tsx
+15
-6
frontend/hooks/useProjects.tsx
+26
-6
H
index.ts
+13
-1
backend/routes/user.ts
+19
-0
frontend/components/DebugStyles.tsx
+74
-0
frontend/components/Header.tsx
+105
-0
frontend/components/InputBox.tsx
+251
-0
frontend/components/Messages.tsx
+238
-0
frontend/components/NewProjectRoute.tsx
+90
-0
frontend/components/PreviewFrame.tsx
+134
-0
frontend/components/icons.tsx
+178
-0
frontend/favicon.http.tsx
+18
-0
frontend/hooks/useLoadingFavicon.ts
+15
-0
frontend/hooks/useScrollToBottom.tsx
+45
-0
frontend/hooks/useUsageStats.ts
+70
-0
frontend/styles.css
+780
-0
frontend/utils/images.ts
+38
-0
app
app/chat.tsx
+0
-20
app/client.tsx
+0
-39
app/constants.tsx
+0
-2
app/home.tsx
+0
-7
app/login.tsx
+0
-55
H
app/main.tsx
+0
-29
app/not-found.tsx
+0
-9
app/projects.tsx
+0
-15
app/require-auth.tsx
+0
-20
app/types.tsx
+0
-12
app/useAuth.tsx
+0
-17
app/useProject.tsx
+0
-27
app/useProjects.tsx
+0
-23
frontend/components/ApiKeyWarning.tsx
+0
-17
frontend/components/BranchControl.tsx
+0
-234
frontend/components/Chat.tsx
+0
-207
frontend/components/ChatHeader.tsx
+0
-58
frontend/components/ChatInput.tsx
+0
-171
frontend/components/ChatMessages.tsx
+0
-37
frontend/components/CreateBranch.tsx
+0
-121
frontend/components/CreateProject.tsx
+0
-182
frontend/components/DirectoryTree.tsx
+0
-348
frontend/components/ErrorDisplay.tsx
+0
-16
frontend/components/ImageUpload.tsx
+0
-163
frontend/components/LoadingSpinner.tsx
+0
-8
frontend/components/Login.tsx
+0
-132
frontend/components/MessageItem.tsx
+0
-66
frontend/components/MessagePart.tsx
+0
-344
frontend/components/ProjectFiles.tsx
+0
-39
frontend/components/Projects.tsx
+0
-167
frontend/hooks/useProjectFiles.ts
+0
-85
frontend/utils/api.ts
+0
-34
frontend/utils/costCalculator.ts
+0
-55
Features
Version control
Code intelligence
CLI
Use cases
Teams
AI agents
Slack
GTM
Docs
Showcase
Templates
Newest
Trending
API examples
NPM packages
Pricing
Newsletter
Blog
About
Careers
We’re hiring!
Brand
hi@val.town
Status
X (Twitter)
Discord community
GitHub discussions
YouTube channel
Bluesky
Open Source Pledge
Terms of use
Privacy policy
Abuse contact
© 2025 Val Town, Inc.