{"id":26463794,"url":"https://github.com/al-chris/1-2-3-game","last_synced_at":"2026-05-08T15:51:19.566Z","repository":{"id":282743651,"uuid":"949499230","full_name":"al-chris/1-2-3-game","owner":"al-chris","description":"The 3...2...1 guess game in python and js.","archived":false,"fork":false,"pushed_at":"2025-03-16T17:15:51.000Z","size":11,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-16T17:34:06.006Z","etag":null,"topics":["fastapi","js","python","webapp"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/al-chris.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2025-03-16T15:46:36.000Z","updated_at":"2025-03-16T17:15:54.000Z","dependencies_parsed_at":"2025-03-16T17:44:11.237Z","dependency_job_id":null,"html_url":"https://github.com/al-chris/1-2-3-game","commit_stats":null,"previous_names":["al-chris/1-2-3-game"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/al-chris%2F1-2-3-game","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/al-chris%2F1-2-3-game/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/al-chris%2F1-2-3-game/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/al-chris%2F1-2-3-game/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/al-chris","download_url":"https://codeload.github.com/al-chris/1-2-3-game/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244375526,"owners_count":20442689,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["fastapi","js","python","webapp"],"created_at":"2025-03-19T07:16:24.001Z","updated_at":"2026-05-08T15:51:14.341Z","avatar_url":"https://github.com/al-chris.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 1-2-3 Word Game\n\nA multiplayer word game where two players try to find a common ground between their words. Built with FastAPI backend and vanilla JavaScript frontend.\n\n## Game Overview\n\n1. Two players join a game session.\n2. A countdown appears (3...2...1...GO!).\n3. Both players type a word simultaneously.\n4. Words are revealed only after both players have submitted.\n5. Players continue by typing words they think connect their previously submitted words.\n6. The game continues until both players submit the same word.\n\n## Features\n\n- Real-time multiplayer gameplay\n- Mobile responsive design\n- Countdown timer\n- Time-limited word input\n- Score tracking\n- Game ID sharing for easy joining\n\n## Project Structure\n\n```\n1-2-3-game/\n├── client/         # Frontend static files\n│   ├── assets/\n│   │   ├── css/\n│   │   │   └── styles.css\n│   │   └── js/\n│   │       ├── app.js\n│   │       ├── game.js\n│   │       └── ui.js\n│   └── index.html\n├── server/         # FastAPI backend\n│   ├── main.py     # Main FastAPI application\n│   ├── game.py     # Game management\n│   └── requirements.txt\n└── README.md\n```\n\n## Installation\n\n### Requirements\n\n- Python 3.7+\n- Modern web browser\n\n### Setup\n\n1. Clone the repository:\n   ```\n   git clone https://github.com/al-chris/1-2-3-game.git\n   cd 1-2-3-game\n   ```\n\n2. Install backend dependencies:\n   ```\n   cd server\n   pip install -r requirements.txt\n   ```\n\n3. Run the FastAPI server:\n   ```\n   uvicorn main:app --reload --host 0.0.0.0 --port 8000\n   ```\n\n4. Access the game:\n   Open your browser and navigate to `http://localhost:8000`\n\n## How to Play\n\n1. On the home screen, click \"Casual Mode\"\n2. Enter a username and continue\n3. Create a new game or join an existing one with a game ID\n4. If creating a game, share the game ID with a friend\n5. Once both players join, the game begins with a countdown\n6. Type your word when prompted and hit Enter\n7. See both words after submission\n8. Continue until you both type the same word\n\n## Deployment\n\n### Deploying to Heroku\n\n1. Create a Procfile in the project root:\n   ```\n   web: cd server \u0026\u0026 uvicorn main:app --host=0.0.0.0 --port=${PORT}\n   ```\n\n2. Create a runtime.txt:\n   ```\n   python-3.9.7\n   ```\n\n3. Create a requirements.txt in the project root:\n   ```\n   -r server/requirements.txt\n   ```\n\n4. Deploy to Heroku:\n   ```\n   git init\n   git add .\n   git commit -m \"Initial commit\"\n   heroku create\n   git push heroku main\n   ```\n\n### Deploying to DigitalOcean App Platform\n\n1. Create a new app on DigitalOcean App Platform\n2. Connect your GitHub repository\n3. Configure the build command: `pip install -r server/requirements.txt`\n4. Configure the run command: `cd server \u0026\u0026 uvicorn main:app --host=0.0.0.0 --port=$PORT`\n5. Deploy your app\n\n## Future Enhancements\n\n- Persistent user accounts and statistics\n- Voice input mode\n- Ranked matchmaking\n- Themed word categories\n- Time attack mode (decreasing time limits)\n- Multi-language support\n\n## License\n\n[MIT License](LICENSE)","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fal-chris%2F1-2-3-game","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fal-chris%2F1-2-3-game","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fal-chris%2F1-2-3-game/lists"}