{"id":21891403,"url":"https://github.com/pitpik/minesweeper","last_synced_at":"2025-03-22T03:14:24.831Z","repository":{"id":141376220,"uuid":"595314302","full_name":"PitPik/minesweeper","owner":"PitPik","description":"VanillaJS minesweeper implememntation","archived":false,"fork":false,"pushed_at":"2023-02-01T21:42:27.000Z","size":35,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-26T21:56:29.247Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"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/PitPik.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":"2023-01-30T20:41:02.000Z","updated_at":"2023-07-31T04:47:19.000Z","dependencies_parsed_at":null,"dependency_job_id":"4480ecb6-2dd8-4a80-8d36-5edde5a570d8","html_url":"https://github.com/PitPik/minesweeper","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PitPik%2Fminesweeper","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PitPik%2Fminesweeper/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PitPik%2Fminesweeper/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PitPik%2Fminesweeper/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/PitPik","download_url":"https://codeload.github.com/PitPik/minesweeper/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244898458,"owners_count":20528341,"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":[],"created_at":"2024-11-28T12:35:23.304Z","updated_at":"2025-03-22T03:14:24.804Z","avatar_url":"https://github.com/PitPik.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Minesweeper\n\nYou don't need a server to play this game. Just DnD the `index.html` file into your browser or [play the 4896Byts version right here](https://htmlpreview.github.io/?https://github.com/PitPik/minesweeper/blob/master/index.min.html). (Download size ~2.3kB).\n\nThis is a little fun example that shows how to seperate concernes. This game is build uppon the MVC concept as a SPA. It's meant to be as small as possible although readable and maintainable.\nThere is a service that provides the model, a controller that just manipulates the model (or state of the game) and the view, that has it's on state model for its UI components.\n\nThe view only sets up the event listeners and the view and has access to the service's ```createBoard()``` to build the game and ```checkItem()``` from the controller to check the currently clicked item and ```getItems()``` for extracting items from the model with a certain property.\n\nThe event listeners are based on event delegation.\n\nThe controller and the service could be taken as is and being implemented in a CircularJS, Vue, Ember, React or Angular example. They are not dependend on this implementation at all.\n\nHave fun =)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpitpik%2Fminesweeper","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpitpik%2Fminesweeper","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpitpik%2Fminesweeper/lists"}