This is the client application for the Titeenit 2025 pixel-based game. Players can claim pixels on a map to represent their guild.
This project is a SvelteKit application that provides a visual interface for the Titeenit pixel game. Players can view the map, see guild territories, and claim pixels for their guild.
- Interactive pixel map built with PixiJS
- Guild-based pixel coloring system
- Pixel claiming functionality
- User authentication
- Real-time game state updates
- SvelteKit - Web framework
- PixiJS - WebGL rendering engine
- pixi-viewport - Viewport navigation
- TailwindCSS - CSS framework
- TypeScript - Type safety
- Protocol Buffers - Data serialization
- Node.js (LTS version recommended)
- npm or bun
- Clone the repository
- Install dependencies:
npm install
# or
bun install- Create a .env file based on .env.example:
PUBLIC_TITEENI_API=https://peli.titeen.it
PUBLIC_AUTHORIZATION_HEADER=JWT_TOKEN
Start the development server:
npm run dev
# or
bun run devTo open the browser automatically:
npm run dev -- --opennpm run build
# or
bun run buildPreview the production build:
npm run preview- Players belong to different guilds (Tietokilta, Algo, Cluster, etc.)
- Each guild has a specific color
- Players can claim pixels adjacent to their existing territory
- The map shows different pixel types (Normal, MapBorder, Spawn, FogOfWar)
- game - Game components and logic
- client - API client functions
- components - Reusable UI components
- types - TypeScript type definitions
- utils - Utility functions
- routes - SvelteKit routes and API endpoints
- states - Global state management
- proto - Protocol Buffer definitions
Please follow the existing code style and conventions. Use Prettier for code formatting:
npm run formatCheck for formatting issues:
npm run lint