CaYaDev Yükleniyor

CaYaDev - Kişisel Proje Platformu

CaYaDev olarak kişisel projelerimi, kod örneklerimi ve teknoloji içeriklerimi paylaştığım platform. Geliştiriciler için kaynak ve ilham kaynağı.

CaYaDev

Kişisel proje paylaşımı

Topluluk

Geliştiriciler arası etkileşim

Güvenli

Güvenli içerik yönetimi

Şifre Sıfırlama

En az 6 karakter olmalı

Projeler

Paylaşımlar

CaYa English Word Counter

CaYa English Word Counter

## Word Counter - **Word Counter** is a fast-paced, educational word game where players use **randomly generated letters** to form **valid English words** within a fixed time limit. It starts as a single-player experience and scales into **multiplayer rooms and tournament-style sessions**, supported by professional admin and reporting tools in a web application. --- ## 🎮 Game Mechanics ### Core Rules #### **Letter Deal** - Players receive **8 letters** total - Recommended balance: - **3 vowels** (A, E, I, O, U) - **5 consonants** (B, C, D, F, G, H, J, K, L, M, N, P, Q, R, S, T, V, W, X, Y, Z) - Letters are **random**, but the vowel/consonant ratio is fixed for gameplay balance - Each letter can be used **at most once** per word (unless the same letter appears multiple times in the deal) #### **Time Limit** - Default game duration: **10 minutes (600 seconds)** - The game ends automatically when time runs out - Remaining time is visible to all players in real time #### **Word Creation** - Players build **valid English words** using only the given letters - Each word is counted **only once** (no duplicates) - Words are validated via an **offline English dictionary database** (Wiktionary-derived dataset imported locally) - **Minimum word length:** 2 letters - **Maximum word length:** 8 letters #### **Scoring System** - Each accepted word earns **points equal to its length** - Example: “CAT” = 3 points, “MOTHER” = 6 points - **Duplicate words** earn no points - **Invalid words** are rejected (no points) - Final summary displays: - Total score - Total valid word count - Accuracy rate (valid submissions / total submissions) --- ## 💻 Web App Features ### 🏠 Home & Room Management #### **Create Room (Admin Panel)** - A **unique room code** is generated automatically (8-digit code) - Before the game, the admin can configure: - Room name & description - Show/hide room code on the scoreboard - Show/hide letters on the scoreboard - Enable real-time score updates - Use custom pre-selected letter sets - Tile-based letter reveal mode - Custom scoring rules - Custom game duration - Participant management (add/remove) #### **Join Room (Player View)** - Join using a **room code** - Enter a **display name** and choose a profile/avatar - Live participant list + ready status - Track other players’ connection status --- ### 🎮 Game UI (Player View) #### **Letter Cards** - All **8 letters** displayed as separate cards - Vowels and consonants can be styled with **different colors** - Optimized typography for clear readability - Touch + mouse support #### **Word Input** - Dynamic input field showing the current word being formed - **Real-time validation** (checks the local dictionary) - Fast input methods: - Click letters to append - Type directly from keyboard - Backspace + Clear actions supported #### **Timer (Countdown)** - Human-friendly display: **mm:ss** - Color state: - Green (plenty of time) - Yellow (1 minute left) - Red (30 seconds left) - Updates every second #### **Word List** - “My Valid Words” tab shows accepted words - Total score updates instantly - Total word count displayed - Optional delete/remove for mistaken submissions (if enabled) --- ## 📊 Scoreboard #### **Real-Time Leaderboard** - Live score updates for all players - Automatic ranking (highest score on top) - Player status indicators: - 🟢 Active / Typing - ⏸️ Paused - ✅ Finished #### **Visual Elements** - Room corner images (left & right) - Uploaded by admin - PNG/JPG supported - Letters + timer to show current match status - Participant cards with colorful score highlights #### **Live Synchronization** - Real-time data via **WebSocket** - A newly accepted word updates everyone’s scoreboard instantly - Timer is synchronized across all devices --- ## 👨‍💼 Admin Panel (Management Tools) #### **Room Controls** - Create a new match - Reset current match - Generate random 8-letter deal - Show letters on player screens - Start match (starts the timer) - Pause match (emergency stop) - End match early #### **Letter & Possible-Words Insight** - “Possible Words” analytics: - Estimates how many words can be formed from the current letters - Uses the **offline English dictionary dataset** - Groups results by word length (8 → 2) #### **Participant Management** - Add/remove players (if room not full) - Manual score edits (special cases) - View participant details (name, score, submitted word count) - Track ready status and connection health #### **Room Images** - Upload/change left corner image - Upload/change right corner image - Preview before saving - Remove unused images - Images update live on the scoreboard via WebSocket #### **Room Settings** - Customize room name & description - Toggle room code visibility - Set maximum player count - Additional system toggles --- ## 🔍 Word Validation System #### **Offline English Dictionary Integration** - Uses a **locally stored English dictionary database** (imported from a Wiktionary-derived dataset) - Real-time lookup as the user submits a word - Case-insensitive matching (e.g., “House” = “house”) - Supports common English word forms depending on the dataset (inflections may vary) #### **Validation Rules** - ✅ Word exists in the offline dictionary? - ✅ Word length ≥ 2? - ✅ Word length ≤ 8? - ✅ Can the word be formed using the given letters? - ✅ Was it submitted before? (duplicate prevention) #### **Error Messages** - ❌ “Invalid word” (not found in dictionary) - ❌ “You already submitted this word” - ❌ “Cannot be formed from the given letters” - ❌ “Word is too short” - ❌ “Word is too long” --- ## 📈 Stats & Reports #### **In-Game Player Stats** For each player: - Total score - Total valid word count - Average word length - Accuracy rate - Longest word - Shortest word #### **Ranking & Podium** - 1st place 🥇 (Gold) - 2nd place 🥈 (Silver) - 3rd place 🥉 (Bronze) - Optional award animations #### **Match History Archive** - All played matches are stored - Match date/time - Final scores per player - Match duration - Participant list #### **Excel Report Export** - 📊 Generate and download detailed **XLSX** reports - Export modes: 1) **Default Export** — all match history + scoreboards 2) **Word Export** — per-player word lists + analysis ##### **Default Export Structure** - **Sheet 1: Room Info** - Room Code - Created Date/Time - End Date/Time - Total Matches - Total Participants - Participant list table (order, name, join time, status) - **Sheet 2: Match History** - Match number - Start & end time - Status (Completed/Active/Cancelled) - Letters (e.g., A, R, K, L, M, S, T, C) - Duration (minutes) - **Sheet 3+: Detailed Score per Match** - Match 1, Match 2, … Match N (separate sheets) - Letters, duration - Ranked scoreboard (rank, participant, total score, word count) - **File name:** WordCounter_[RoomCode]_[Date].xlsx ##### **Word Export Structure** - Title: Player Name — WORD LIST - Total score across matches - Summary stats: valid count, invalid count, total submissions - Each match separated: - MATCH 1, MATCH 2, … - Letters used - **Valid words table** (multi-column layout) - **Invalid words table** (highlighted header) - Styling: - Bold titles - Header row coloring (gray/red) - Thin borders - Centered text - Print-friendly formatting - **File name:** [PlayerName]_WordList.xlsx - Compatibility: Excel, Google Sheets, LibreOffice --- ## 🌐 Multiplayer Experience ### WebSocket Communication - Real-time sync across all connected clients - Low-latency updates (target < 100ms) - Auto-reconnect on network drops ### Room Flow - Match state synchronization (everyone sees the same phase) - Dynamic join/leave (players can disconnect mid-game; match continues) ### Security - Unique room codes to reduce unauthorized access - Session-based identity validation (server-side) - HTTPS (encrypted communication) --- ## 🎨 Design & UX ### Theme - Dark Mode (eye-friendly) - Modern gradients and clean UI - Fully responsive (mobile/tablet/desktop) ### Performance - Optimized assets for fast load - Efficient bandwidth usage --- ## 💾 Tech Stack ### Backend - Node.js + Express.js - SQLite3 (lightweight, local storage) - WebSocket (real-time) - Multer (file uploads) ### Frontend - Vanilla JavaScript (no framework dependency) - HTML5 - CSS3 (modern styling + animations) - Mobile-first responsive layout --- ## 🎓 Education & Competitive Use ### In Schools - 📚 Improve English vocabulary through gameplay - 🏆 Run classroom rounds and score students - 📊 Track progress and performance - 🎯 Individual or team-based sessions ### Tournaments - 🥇 Qualifiers → 🥈 Semifinals → 🥉 Finals - Export reports and archive results for records ### Family Fun - 👨‍👩‍👧‍👦 Game night format - 🎮 Fun + educational for kids - 📱 Works great on phones --- ## 🌟 Key Highlights 1. **Offline English Dictionary Validation** (Wiktionary-derived local dataset) 2. **Real-Time Multiplayer** (WebSocket sync) 3. **Possible-Words Analytics** (letter-set analysis) 4. **Professional Reporting** (Excel export) 5. **Tournament-Ready Rooms** (admin controls + archives) 6. **Dark Mode + Responsive UI** (modern UX) --- ## 📞 Support & Feedback If you encounter issues or have ideas: - 🐛 Bug report - 💡 Feature request - ❓ How-to questions --- ## 📄 License & Copyright - This project is developed by **CaYaDev**. --- ## 🎉 Conclusion - **Word Counter** combines speed, learning, and competition into a complete word-game platform—perfect for schools, tournaments, and family play. Goal: **Play with words, learn faster, and compete smarter!** --- #WordCounter #WordGame #MultiplayerWordGame #VocabularyBuilder

Bilgi & Destek

Gizlilik Politikası

Kişisel verilerinizin güvenliği ve kullanımı hakkında bilgi

Gizlilik Politikası

İletişim

Sorularınız ve önerileriniz için bizimle iletişime geçin

İletişim Sayfası

Kullanım Şartları

Platformumuzun kullanım kuralları ve koşulları

Kullanım Şartları

Hakkımızda

CaYaDev hakkında daha fazla bilgi edinin

Hakkımızda

Destek Merkezi

Sık sorulan sorular, iletişim bilgileri ve teknik destek

Destek Merkezi

Forum

Her proje için ayrı forum alanları