appdever01 / codepace
git clone https://github.com/appdever01/codepace.git
Code typing practice, quick races and multiplayer rooms.
+0
stars, 24h · #36,092
+31
stars, 7 days · #3,740
+31
stars, 30 days · #14,262
31
★ total · +31% this week
2
forks · 3 open issues
Star history (as recorded here)
LanguageTypeScript
LicenseMIT
Created2026-10-16 (6d ago)
Last push5d ago
Watchers0
OwnerUser
Links
- GitHub: github.com/appdever01/codepace
- Homepage: https://codepace.vercel.app
- Releases · Issues · Hacker News mentions
README excerpt
# CodePace CodePace helps you practice typing code. Start with a snippet, a LeetCode solution or your own code, and track your speed and accuracy. Text practice, quick races and rooms with friends are also available. Play CodePace ## Play - Practice Python, JavaScript, TypeScript, Java, C++, Go and Rust with formatting and indentation preserved. - Type open-source solutions from a library of 410 coding problems. - Finish a complete code exercise or practice for 60 or 180 seconds. Code is not executed or graded. - Race for 15, 30 or 60 seconds against three pace bots, or practice words, passages and custom text. - Invite up to 49 friends to race with code, passages, words or your own text. The host chooses the shared content and can change it before each round. - Schedule a room to start automatically up to seven days ahead, or start immediately. - Review your progress, export results, and adjust the theme and sound. ## Run locally Use Node.js 24, npm and PostgreSQL 17 or later. [code] Open . If your database needs a username or password, update `DATABASE_URL` in `.env.local` before running the migration. Solo play works without a database; friend rooms need one. For a production preview, stop the development server, then run `npm run build` and `npm start`. ## Check changes [code] With the local server running on port 5189, also run: [code] These checks exercise player workflows, concurrent room changes and 50-player progress. Run them one at a time against a development database. GitHub Actions runs the same checks with its own PostgreSQL service. See contribution.md for the project layout and pull request guidance. ## Search discovery The canonical address is `https://codepace.vercel.app/`. Search titles, descriptions, social previews and structured site information share the settings in `lib/seo.ts`. The homepage has a server-rendered heading and JSON-LD. Vercel preview deployments use `noindex`. `/robots.txt` allows public pages and assets, excludes the gameplay API and points to `/sitemap.xml`. The sitemap includes the homepage; the app's tabs and temporary room invitations are not separate pages. `/llms.txt` describes the app for AI tools, and `/llm.txt` redirects there. Update the public facts in that file when features change. After deployment, submit `https://codepace.vercel.app/sitemap.xml` through the verified Google Search Console and Bing Webmaster Tools accounts. Sitemap submission and these files do not guarantee indexing or rankings. Run `npm run test:seo` against the running app; set `CODEPACE_TEST_URL` to check another deployment, and `CODEPACE_EXPECT_INDEXABLE=false` for a preview. This checks HTTP responses without opening a browser. ## Results and rooms Speed counts five correct characters as one word. Backspace lets you correct mistakes, but those mistakes still count toward accuracy. Finishing a passage ends the run early. Results and preferences stay in your browser. They do not sync between devices or domains. Expor