{"id":31763377,"url":"https://github.com/fabienbounoir/8-queens-problem","last_synced_at":"2026-05-09T16:41:05.124Z","repository":{"id":310356435,"uuid":"1039532754","full_name":"FabienBounoir/8-queens-problem","owner":"FabienBounoir","description":"♟️This website allows you to visualize, understand, and solve the N-queens problem interactively. I created this project because I was fascinated by the mathematical elegance of this classic problem and wanted to create a visual tool to better understand and share it.","archived":false,"fork":false,"pushed_at":"2025-08-20T11:55:32.000Z","size":58,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-10-01T01:24:32.568Z","etag":null,"topics":["8queens-problem","backtracking","educational","nqueens-problem","scss","sveltekit"],"latest_commit_sha":null,"homepage":"https://8queensproblem.vercel.app","language":"Svelte","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/FabienBounoir.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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,"zenodo":null}},"created_at":"2025-08-17T12:52:59.000Z","updated_at":"2025-08-20T11:55:36.000Z","dependencies_parsed_at":"2025-08-17T16:15:29.928Z","dependency_job_id":null,"html_url":"https://github.com/FabienBounoir/8-queens-problem","commit_stats":null,"previous_names":["fabienbounoir/8-queens-problem"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/FabienBounoir/8-queens-problem","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FabienBounoir%2F8-queens-problem","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FabienBounoir%2F8-queens-problem/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FabienBounoir%2F8-queens-problem/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FabienBounoir%2F8-queens-problem/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/FabienBounoir","download_url":"https://codeload.github.com/FabienBounoir/8-queens-problem/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FabienBounoir%2F8-queens-problem/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":279002344,"owners_count":26083340,"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","status":"online","status_checked_at":"2025-10-09T02:00:07.460Z","response_time":59,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":["8queens-problem","backtracking","educational","nqueens-problem","scss","sveltekit"],"created_at":"2025-10-09T23:18:30.470Z","updated_at":"2025-10-09T23:18:31.353Z","avatar_url":"https://github.com/FabienBounoir.png","language":"Svelte","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 🏛️ 8 Queens Problem - Interactive Visualizer\n\nAn interactive web application built with **SvelteKit** to explore and solve the famous 8 queens chess problem.\n\n## 📖 About the Project\n\nThis website allows you to visualize, understand, and solve the N-queens problem interactively. I created this project because I was fascinated by the mathematical elegance of this classic problem and wanted to create a visual tool to better understand and share it.\n\n## 🤔 What is the 8 Queens Problem?\n\nThe **8 Queens Problem** is a classic puzzle in computer science and mathematics that consists of placing 8 queens on an 8×8 chessboard such that **no queen can capture another**.\n\n### Chess Queen Rules:\n- A queen can move **horizontally** (across its row)\n- A queen can move **vertically** (down its column)  \n- A queen can move **diagonally** in all directions\n\n### The Challenge:\nPlace 8 queens on the chessboard without them threatening each other. This means:\n- ❌ No two queens on the same row\n- ❌ No two queens on the same column\n- ❌ No two queens on the same diagonal\n\n## 💡 Why is this Problem Interesting?\n\n1. **Algorithmic Complexity**: There are 4,426,165,368 ways to place 8 queens on a chessboard, but only **92 valid solutions**!\n\n2. **Practical Applications**: This problem illustrates important concepts in computer science:\n   - **Backtracking** algorithms\n   - Combinatorial optimization\n   - Constraint satisfaction\n\n3. **Generalization**: The problem can be extended to N queens on an N×N board, offering increasing complexity.\n\n## 🎯 What Does This Site Solve?\n\nThis interactive application solves several problems:\n\n### ✅ **Intuitive Visualization**\n- Graphical display of the chessboard\n- Real-time visualization of squares controlled by each queen\n- Clear interface to understand conflicts\n\n### ✅ **Interactive Learning**\n- Manual queen placement to test your own solutions\n- Visual alerts for conflicts\n- Real-time statistics (number of queens, conflicts)\n\n### ✅ **Automatic Solving**\n- Integrated backtracking algorithm to find a valid solution\n- Ability to see the solution build step by step\n\n### ✅ **Flexibility**\n- Adaptation to different board sizes (4×4 to 100×100)\n- Color customization\n- Configurable display options\n\n## 🚀 Features\n\n- **🎮 Interactive Mode**: Place queens manually by clicking\n- **🤖 Auto Solve**: Let the algorithm find a solution\n- **📊 Real-time Statistics**: Track placed queens and conflicts\n- **🎨 Customization**: Change board colors\n- **📱 Responsive**: Works on desktop, tablet, and mobile\n- **⚙️ Variable Sizes**: Test the problem with different board sizes\n\n## 🛠️ Technologies Used\n\n- **SvelteKit** - Modern and performant web framework\n- **TypeScript** - For robust and maintainable code\n- **SCSS** - Advanced and customizable styles\n- **Vite** - Fast and efficient build tool\n\n## 🏃‍♂️ Installation and Usage\n\n### Prerequisites\n- Node.js (version 18+)\n- npm or yarn\n\n### Installation\n```bash\n# Clone the project\ngit clone https://github.com/FabienBounoir/8-queens-problem.git\n\n# Navigate to the folder\ncd 8-queens-problem\n\n# Install dependencies\nnpm install\n\n# Start the development server\nnpm run dev\n```\n\n### Available Scripts\n```bash\nnpm run dev        # Development server\nnpm run build      # Production build\nnpm run preview    # Build preview\nnpm run check      # TypeScript checking\nnpm run lint       # Code linting\nnpm run format     # Code formatting\n```\n\n## 🎓 Algorithm Used\n\nThe application uses a recursive **backtracking algorithm**:\n\n1. **Sequential Placement**: Places one queen per row\n2. **Constraint Checking**: Verifies that no conflicts exist\n3. **Backtracking**: If a dead end is reached, backtracks\n4. **Solution**: Continues until a valid configuration is found\n\nThis algorithm is particularly elegant as it intelligently explores the space of possible solutions.\n\n## 🎯 Educational Goal\n\nThis project perfectly illustrates how a complex mathematical problem can be made accessible through a modern interactive interface. It demonstrates the importance of visualization in understanding abstract algorithms.\n\n---\n\n**Developed with ❤️ by [Fabien Bounoir](https://github.com/FabienBounoir)**\n\n*This project fascinated me because it combines mathematical beauty, algorithmic challenge, and interactive design. I hope it will help you discover or rediscover the elegance of the N-queens problem!*","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffabienbounoir%2F8-queens-problem","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffabienbounoir%2F8-queens-problem","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffabienbounoir%2F8-queens-problem/lists"}