A web-based crossword puzzle application built with ASP.NET Core and vanilla JavaScript.
- Interactive crossword grid with keyboard navigation
- RESTful API for puzzle data
- Multiple hardcoded puzzles (easily extensible)
- Check answers, reveal solutions, and clear grid functionality
- Responsive design
- Docker support for easy deployment
- .NET 9.0 SDK or later
- Docker (optional, for containerized deployment)
-
Navigate to the server directory:
cd src/server -
Restore dependencies and run the application:
dotnet restore dotnet run
-
Open your browser and navigate to:
http://localhost:5000
-
Build and run using Docker Compose:
docker-compose up --build
-
Open your browser and navigate to:
http://localhost:5000 -
To stop the container:
docker-compose down
For development and debugging:
-
Build and run using the debug compose file:
docker-compose -f docker-compose.debug.yml up --build
-
In VS Code:
- Press
F5or go to Run and Debug - Select "Docker .NET Attach" configuration
- Choose the running CrossWords process
- Press
The debug configuration includes:
- Hot reload with
dotnet watch - Remote debugging support with vsdbg
- Source code mapping for breakpoints
- Development environment variables
-
Build the Docker image:
docker build -t crosswords . -
Run the container:
docker run -d -p 5000:8080 --name crosswords-app crosswords
-
Open your browser and navigate to:
http://localhost:5000
The application uses:
- ASP.NET Core 10.0 for the backend
- Vanilla JavaScript for the frontend
- Central package management with Directory.Packages.props