https://github.com/mrarvind90/fcc-sudoku-solver
A full-stack web app for checking, validating and solving a Sudoku puzzle. This application validates the input puzzle string but also assesses the correctness of number placements. In addition, it also provides solutions to valid puzzles.
https://github.com/mrarvind90/fcc-sudoku-solver
chai chai-http css3 eslint eslint-config-prettier express-validator expressjs freecodecamp freecodecamp-challenge freecodecamp-project html5 mocha nodejs prettier qa
Last synced: 3 months ago
JSON representation
A full-stack web app for checking, validating and solving a Sudoku puzzle. This application validates the input puzzle string but also assesses the correctness of number placements. In addition, it also provides solutions to valid puzzles.
- Host: GitHub
- URL: https://github.com/mrarvind90/fcc-sudoku-solver
- Owner: mrarvind90
- License: mit
- Created: 2023-09-28T05:11:12.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2023-10-03T12:47:52.000Z (over 1 year ago)
- Last Synced: 2025-02-01T19:46:14.952Z (5 months ago)
- Topics: chai, chai-http, css3, eslint, eslint-config-prettier, express-validator, expressjs, freecodecamp, freecodecamp-challenge, freecodecamp-project, html5, mocha, nodejs, prettier, qa
- Language: JavaScript
- Homepage:
- Size: 104 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
[](https://www.freecodecamp.org/)
# Sudoku Solver
A full-stack web app for checking, validating and solving a Sudoku puzzle. This application validates the input puzzle string but also assesses the correctness of number placements. In addition, it also provides solutions to valid puzzles.## Technologies Used
- **Client Side:**
- HTML: Provides the structure of the web pages.
- CSS: Adds styling and responsive design to the user interface.
- Vanilla JavaScript: Implements the client-side functionality for unit conversion.- **Server Side:**
- Node.js: Provides the runtime environment for the server.
- Express.js: A web application framework for handling routes and requests on the server.- **Testing:**
- Mocha: A testing framework for writing unit tests.
- Chai: An assertion library used in conjunction with Mocha for making test assertions.## Features
- Checks if a given number and placement is valid based on the given board
- Solves the puzzle given a valid puzzle string## Running the application
To run the express application, do follow the following steps1. Clone the repo:
```git
git clone [email protected]:mrarvind90/fcc-sudoku-solver.git
```
2. Navigate to the repository:
```shell
cd
```
Change to the name of the cloned directory.
3. Install Dependencies:
```shell
npm install
```
This command will install all the necessary dependencies for the application.
4. Configure Environment Variables: Rename the .env.sample file in your project directory to .env and update it with the
relevant credentials:
```shell
cp .env.example .env
```
5. Choose Your Run Mode:
- Development Mode (with automatic code reload):
To run the application in watch mode, enabling seamless source
code changes without manual server restarts, use the following command:
```shell
npm run dev
```
- Standard Server Mode:
If you prefer to simply run the server without automatic code reloading, you can use the
following command:
```shell
npm run start
```
6. Running the tests
- You can run unit tests for the application using Mocha and Chai. To run the tests, use the following command:
```bash
npm run test
```## Future Improvements
While developing this project, there are several areas I plan to focus on for enhancements and refinements
which can be found on [GitHub](https://github.com/mrarvind90/fcc-sudoku-solver/issues).