This is the frontend component of OnlineCheckers.org, a web application that allows users to play Italian Checkers online against other players or against a bot.
- Angular 17+ (Standalone Components)
- Bootstrap 5
- ngx-translate for internationalization
Before you begin, ensure you have the following installed:
- Node.js (v18 or later)
- npm (v9 or later)
- Angular CLI (
npm install -g @angular/cli) - Git
git clone https://github.com/yourusername/online-checkers.git
cd online-checkers/frontendnpm installEdit src/environments/environment.ts for development configuration:
export const environment = {
production: false,
apiUrl: 'http://localhost:8080'
};ng serveNavigate to http://localhost:4200/. The app will automatically reload if you change any of the source files.
- src/app/components/ - Reusable UI components (board, chat, moves, etc.)
- src/app/pages/ - Page components (menu, game pages, rules, etc.)
- src/services/ - Services for API communication and state management
- src/model/entities/ - Data models
- src/assets/i18n/ - Translation files (English, Italian)
- src/styles/ - Global styles and theme variables
- Play Modes:
- Local Play (on the same device)
- Online Play against other players
- Play against the computer (bot with 3 difficulty levels)
- Game Rules: Italian Checkers ruleset
- UI Features:
- Board visualization with coordinates
- Move history
- In-game chat
- Game sharing
- Rematch feature
- Customization:
- Language selection (English, Italian)
- Light/Dark theme
ng build --configuration=productionThe build artifacts will be stored in the dist/ directory.
ng test- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add some amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
- Follow the Angular style guide
- Write meaningful commit messages
- Maintain code documentation
- Ensure components are responsive
- Support both light and dark themes
- Support both English and Italian languages
- Ensure all new features work on mobile devices
To the extent possible under law, this work is dedicated to the public domain worldwide. http://creativecommons.org/publicdomain/zero/1.0/