Rename game to 'The Last StarTyper' throughout codebase

This commit is contained in:
2025-11-04 21:56:21 +00:00
parent 0e59c0c44b
commit 469242690b
11 changed files with 33 additions and 30 deletions
+1 -1
View File
@@ -1,4 +1,4 @@
# Agent Development Guidelines - Typing Chud
# Agent Development Guidelines - The Last StarTyper
## React 19 Best Practices
+4 -4
View File
@@ -1,4 +1,4 @@
# Typing Chud
# The Last StarTyper
A fast-paced typing game built with React and TypeScript. Type falling text before it reaches your ship!
@@ -14,14 +14,14 @@ A fast-paced typing game built with React and TypeScript. Type falling text befo
## Installation
```bash
npm install @vimazing/typing-chud
npm install @vimazing/the-last-startyper
```
## Quick Start
```typescript
import { useGame } from '@vimazing/typing-chud';
import '@vimazing/typing-chud/game.css';
import { useGame } from '@vimazing/the-last-startyper';
import '@vimazing/the-last-startyper/game.css';
function App() {
const game = useGame({
+5 -5
View File
@@ -202,7 +202,7 @@ type ScoreManager = {
};
```
**typing-chud Content Tracking:**
**the-last-startyper Content Tracking:**
All content types are tracked independently throughout the game:
@@ -242,7 +242,7 @@ Some games support dynamic option changes during gameplay via `changeGameMode()`
game.changeGameMode({ gameMode: 'words', downwardSpeed: 75 });
```
### Delayed Mode Switching (typing-chud)
### Delayed Mode Switching (the-last-startyper)
Mode changes are deferred to respect current gameplay:
- Changes are stored as "pending options"
@@ -289,7 +289,7 @@ type GameOptions = {
timeLimit?: number;
};
// typing-chud (Unified Platform Control)
// the-last-startyper (Unified Platform Control)
type GameOptions = {
gameMode?: 'letters' | 'words' | 'sentences' | 'paragraphs';
downwardSpeed?: number; // px/s (mode-agnostic)
@@ -310,7 +310,7 @@ type GameOptions = {
- Make most options optional
- Use consistent naming (e.g., `timeLimit` always in seconds)
**Platform Control (typing-chud):**
**Platform Control (the-last-startyper):**
- Platforms have full control over game behavior via `GameOptions`
- `downwardSpeed` is mode-agnostic (single value for all modes)
- `wordList` allows custom content across all modes
@@ -521,7 +521,7 @@ type ScoreManager = {
- Additional metrics for display
- Difficulty multipliers
**typing-chud Content Tracking:**
**the-last-startyper Content Tracking:**
- Tracks all content types independently (letters, words, sentences, paragraphs)
- Preserves historical counts when mode switches
- `currentCount` reflects only the current game mode count
+5 -5
View File
@@ -1,13 +1,13 @@
{
"name": "typing-chud-example",
"name": "the-last-startyper-example",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "typing-chud-example",
"name": "the-last-startyper-example",
"dependencies": {
"@tailwindcss/vite": "^4.1.14",
"@vimazing/typing-chud": "file:../",
"@vimazing/the-last-startyper": "file:../",
"react": "^19.1.1",
"react-dom": "^19.1.1"
},
@@ -24,7 +24,7 @@
}
},
"..": {
"name": "@vimazing/typing-chud",
"name": "@vimazing/the-last-startyper",
"version": "0.1.0",
"license": "MIT",
"devDependencies": {
@@ -1362,7 +1362,7 @@
"@types/react": "^19.2.0"
}
},
"node_modules/@vimazing/typing-chud": {
"node_modules/@vimazing/the-last-startyper": {
"resolved": "..",
"link": true
},
+2 -2
View File
@@ -1,5 +1,5 @@
{
"name": "typing-chud-example",
"name": "the-last-startyper-example",
"private": true,
"type": "module",
"scripts": {
@@ -20,7 +20,7 @@
},
"dependencies": {
"@tailwindcss/vite": "^4.1.14",
"@vimazing/typing-chud": "file:../",
"@vimazing/the-last-startyper": "file:../",
"react": "^19.1.1",
"react-dom": "^19.1.1"
}
+3 -3
View File
@@ -1,6 +1,6 @@
import { useState } from "react";
import { useGame, type GameMode } from "@vimazing/typing-chud";
import "@vimazing/typing-chud/game.css";
import { useGame, type GameMode } from "@vimazing/the-last-startyper";
import "@vimazing/the-last-startyper/game.css";
import { usePlatformHook, useStateMachine, getScenario, getScenarioNames } from "./usePlatformHook";
function App() {
@@ -27,7 +27,7 @@ function App() {
return (
<div className="relative mx-auto my-4 w-fit space-y-4">
<div className="space-y-2">
<h1 className="text-2xl font-bold text-center">Typing Chud</h1>
<h1 className="text-2xl font-bold text-center">The Last StarTyper</h1>
<div className="space-y-2">
<div className="text-center">
@@ -1,4 +1,4 @@
import type { GameMode } from '@vimazing/typing-chud';
import type { GameMode } from '@vimazing/the-last-startyper';
export type ModeTransition = {
fromMode: GameMode;
+1 -1
View File
@@ -11,7 +11,7 @@ export default defineConfig({
plugins: [react(), tailwindcss()],
resolve: {
alias: {
"@vimazing/typing-chud": libSource, // use source during dev
"@vimazing/the-last-startyper": libSource, // use source during dev
},
},
server: {
+2 -2
View File
@@ -1,11 +1,11 @@
{
"name": "@vimazing/typing-chud",
"name": "@vimazing/the-last-startyper",
"version": "0.1.0",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "@vimazing/typing-chud",
"name": "@vimazing/the-last-startyper",
"version": "0.1.0",
"license": "MIT",
"devDependencies": {
+4 -4
View File
@@ -1,5 +1,5 @@
{
"name": "@vimazing/typing-chud",
"name": "@vimazing/the-last-startyper",
"version": "0.2.0",
"description": "A fast-paced typing game with dynamic mode switching. Type falling text (letters, words, sentences, paragraphs) before it reaches your ship.",
"author": "André Padez <andre.padez@gmail.com>",
@@ -17,12 +17,12 @@
],
"repository": {
"type": "git",
"url": "git+https://github.com/vimazing/typing-chud.git"
"url": "git+https://github.com/vimazing/the-last-startyper.git"
},
"bugs": {
"url": "https://github.com/vimazing/typing-chud/issues"
"url": "https://github.com/vimazing/the-last-startyper/issues"
},
"homepage": "https://github.com/vimazing/typing-chud#readme",
"homepage": "https://github.com/vimazing/the-last-startyper#readme",
"license": "MIT",
"type": "module",
"main": "./dist/index.js",
+5 -2
View File
@@ -1,5 +1,8 @@
import { version } from '../package.json';
export const gameInfo = {
name: 'Typing Chud',
version,
name: 'The Last StarTyper',
description: 'A fast-paced typing game where letters, words, sentences, and paragraphs fall from the top of the screen. Type to destroy them before they reach your ship. Supports dynamic mode switching for endless variety.',
controls: {
@@ -44,7 +47,7 @@ export const gameInfo = {
objective: 'Type falling text as accurately and quickly as possible while accumulating the highest score',
winCondition: 'Continuous play - keep going as long as you can. Higher scores indicate better typing speed and accuracy.',
features: [
'Four game modes: Letters, Words, Sentences, Paragraphs',
'Dynamic mode switching for varied gameplay',