{"id":28471038,"url":"https://github.com/vasspilka/micro_words","last_synced_at":"2026-02-27T11:33:14.010Z","repository":{"id":42676579,"uuid":"239881347","full_name":"vasspilka/micro_words","owner":"vasspilka","description":"Temporary inactive, looking for folks to help me with creating a sane UX/UI for it.","archived":false,"fork":false,"pushed_at":"2023-03-05T18:04:07.000Z","size":829,"stargazers_count":9,"open_issues_count":3,"forks_count":1,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-07-01T20:51:24.459Z","etag":null,"topics":["character","content-sharing","game","platform"],"latest_commit_sha":null,"homepage":"","language":"CSS","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/vasspilka.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":"roadmap.org","authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2020-02-11T22:53:00.000Z","updated_at":"2025-02-12T11:22:54.000Z","dependencies_parsed_at":"2025-07-01T20:45:24.522Z","dependency_job_id":null,"html_url":"https://github.com/vasspilka/micro_words","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/vasspilka/micro_words","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vasspilka%2Fmicro_words","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vasspilka%2Fmicro_words/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vasspilka%2Fmicro_words/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vasspilka%2Fmicro_words/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/vasspilka","download_url":"https://codeload.github.com/vasspilka/micro_words/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vasspilka%2Fmicro_words/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29892142,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-27T09:48:51.284Z","status":"ssl_error","status_checked_at":"2026-02-27T09:48:43.992Z","response_time":57,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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":["character","content-sharing","game","platform"],"created_at":"2025-06-07T10:07:29.403Z","updated_at":"2026-02-27T11:33:13.987Z","avatar_url":"https://github.com/vasspilka.png","language":"CSS","funding_links":[],"categories":[],"sub_categories":[],"readme":"# MicroWords\n\nMicrowords is an online content sharing platform/game.\nAs a \"character\" you create and explore a world of content.\nOne can think of it as a mix between minecraft and twitter.\n\n## How to get up and running\n\nTo setup run the following commands.\n\n```\nmix deps.get\n```\n\n```\nmix do ecto.create, event_store.create, event_store.init, event_store.migrate\n```\n\n```\nnpm install --prefix ./assets\n```\n\nAfter Everything was succesfully installed you can start the server with:\n\n```\nmix phx.server\n```\n\nNow you can visit http://localhost:4000/ and use the UI to enter a world and interact with it.\n\n## Introduction to Concept\n\nThe game consists of the following entities. Worlds \u0026 Locations, Explorers and Materials.\n\n### World \u0026 Location\n\nA world is a space that can be explored and is consisted of locations and a Ruleset.\n\nA World can be explored and content can be created inside it.\nThe space available in a world can be represented by a 2 dimensional (or more) integer field where each coordinate e.x `[12,34]` represents a location in that world.\n\nMultiple worlds can exist each with it's own explorers, contentm ruleset and dimensions.\n\nWorld rulesets define how a world functions, we will explain them in more details in _Rulesets \u0026 Mechanics_.\n\nTo consider:\n\n- World can have global tick (time), for evolution of materials and explorers\n\n### Explorer\n\nAn explorer is the character of the \"user\" of the application. Explorers will have energy that can be used to do actions.\nAvailable actions depend on the ruleset and on the state of the character (position, level and stats).\nExample actions can be to create content, \"feed\" it, \"hurt\" it etc.\n\n### Material\n\nMaterials is the content of the application. Like Explorers materials have energy a user can interact with materials through locations. But can also create new material themselves through actions.\n\nNote that content will begin as short text in the beggining but then can be extended to hyperlinks, images, video and audio content.\n\nMaterials start with some energy that the user spend to create them, then by interactions they can either gain or lose energy.\nDepending on the ruleset an material after obtaining a certain amount of energy will \"evolve\" to a new stage, the opossite can happen if from a higher stage\nan material will lose enough energy it will be devolved to a lower stage.\n\nThe type of stages and their behavior will also be part of the defined ruleset.\n\nAn material can die (gets removed) when it's energy is depleted (getting to 0). That will destroy the material and release the space it was occupying to\nallow for other material to take its place.\n\nMaterials with sufficient energy will create seeds that can be planted for the same content to grow elsewhere.\n\n### Ruleset \u0026 Mechanics\n\nAs explained earlier how an explorer can act and how the materials reacts as well as various other characteristics of the world are defined by the world ruleset. However to better understand what the ruleset actually does lets explore the mechanics.\n\nThe explorer can move across the world field, on each step the \"land\" below him (lets call it a field) can have a piece of content or be empty.\nOn empty fields the explorer can place pieces of content (materials) they have and on fields that already have placed materials the explorer can interact with them.\n\nOverall how interactions happen is that a user will receive a set of actions that they can do at this moment to the material. When they do an action the material will do a reaction that in turn affects the explorer.\n\nFor example an explorer can \"nourish\" an material, that will cost him 20 energy then the material will re-react by receiving 20 energy, and sending a link to the user.\nThen with that link the material can further benefit the user if it \"evolves\" into the next stage.\n\nAll these will be defined by the ruleset the world is under but the ExplorerActionTake -\u003e MaterialReacted -\u003e ExplorerAffected are global mechanics that will be always present.\n\n### Landmarks \u0026 NPCs\n\nIn order to make the game more interesting there is a vision to create \"special\" system generated materials and NPCs.\nOverall these will be used to aid players generate content (by providing energy or helping with seed dispersal).\nHow many and types of NPCs and Landmarks are also part of world ruleset.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvasspilka%2Fmicro_words","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fvasspilka%2Fmicro_words","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvasspilka%2Fmicro_words/lists"}