{"id":16286892,"url":"https://github.com/sleepyfran/duets","last_synced_at":"2025-03-16T13:31:27.450Z","repository":{"id":38979021,"uuid":"199537563","full_name":"sleepyfran/duets","owner":"sleepyfran","description":"🎸 A text based music simulation game","archived":false,"fork":false,"pushed_at":"2025-02-28T15:44:52.000Z","size":3566,"stargazers_count":28,"open_issues_count":0,"forks_count":1,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-03-11T07:42:51.165Z","etag":null,"topics":["cli","fsharp","game","life-simulation","sim","simulation","text-based","text-based-game","tycoon"],"latest_commit_sha":null,"homepage":"","language":"F#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/sleepyfran.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":"2019-07-29T23:01:26.000Z","updated_at":"2025-02-27T21:51:55.000Z","dependencies_parsed_at":"2024-04-03T21:25:08.045Z","dependency_job_id":"415b804f-87e1-464f-b8ba-2e47fe0ebfd5","html_url":"https://github.com/sleepyfran/duets","commit_stats":null,"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sleepyfran%2Fduets","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sleepyfran%2Fduets/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sleepyfran%2Fduets/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sleepyfran%2Fduets/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sleepyfran","download_url":"https://codeload.github.com/sleepyfran/duets/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243817155,"owners_count":20352504,"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":["cli","fsharp","game","life-simulation","sim","simulation","text-based","text-based-game","tycoon"],"created_at":"2024-10-10T19:43:59.225Z","updated_at":"2025-03-16T13:31:26.345Z","avatar_url":"https://github.com/sleepyfran.png","language":"F#","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Duets 🎸\n\nDuets is a music/life simulation game focused on allowing the player to be the leader of their own band, composing songs and making gigs to become a star.\n\n\u003cdetails\u003e\n  \u003csummary\u003e\u003ch3\u003e📷 Screenshots\u003ch3/\u003e\u003c/summary\u003e\n  \u003cimg src=\"https://github.com/sleepyfran/duets/assets/6024783/d734ae25-aad4-4059-b1f9-66d4614f0777\" height=\"230px\" width=\"500px\" /\u003e\n  \u003cimg src=\"https://github.com/sleepyfran/duets/assets/6024783/04696499-af6c-4f3c-9248-42ee4df04b21\" height=\"230px\" width=\"500px\" /\u003e\n  \u003cimg src=\"https://github.com/sleepyfran/duets/assets/6024783/0ff57806-bc50-4e90-9362-3a129ee7e8f7\" height=\"230px\" width=\"500px\" /\u003e\n  \u003cimg src=\"https://github.com/sleepyfran/duets/assets/6024783/f048df05-1c1e-4f32-af4a-174b17f92a40\" height=\"230px\" width=\"500px\" /\u003e\n\u003c/details\u003e\n\n# 🛠 Run it locally\n\nDuets is built with F# as an interactive CLI game. Start by cloning the repository and entering in it:\n\n```bash\ngit clone --recurse-submodules https://github.com/sleepyfran/duets.git\ncd duets\n```\n\n\u003e [!WARNING]\n\u003e Duets currently uses a fork of Spectre.Console, so it's important to clone the submodules as well to bring that dependency.\n\nOnce you have it, you can either chose to run it with a local installation of the .NET SDK or, if you prefer, through\nDocker to avoid installing the SDK on your computer and instead running the game inside a container.\n\n## Running with local .NET\n\nIf you you want to install .NET, follow the instructions [here](https://dotnet.microsoft.com/download) to get the latest\nversion of .NET. Once you have it, you can simply run:\n\n```bash\ndotnet build\ndotnet run --project src/Cli/Cli.fsproj\n```\n\n## Running with Docker\n\nThere's an included Dockerfile in the repo that allows you to run the game inside a Docker container if you prefer to do\nso, simply run it with:\n\n```bash\ndocker build -t duets .\ndocker run -it duets\n```\n\n\u003e [!WARNING]\n\u003e The game is nowhere near done or bug-free. I'm constantly doing changes to the savegame format and thus constantly breaking\n\u003e savegames. In the future when the game will be more complete I'll introduce some mechanism to automatically migrate savegames\n\u003e but for the time being you either need to tinker with the savegame file to adapt it when new versions come up or be okay\n\u003e with losing your savegames.\n\n# 🧪 Testing\n\nYou can run the tests with:\n\n```bash\ndotnet test\n```\n\n# 😄 Contributions\n\nRight now the game is in concept phase and it'll probably change quickly until it has certain features so there's no\npublic roadmap. The best way of contributing right now is running the game and reporting bugs, if you want to contribute\nto the code check the project a little bit later, I'll update this section as soon as it's possible to have external\ncontributions!\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsleepyfran%2Fduets","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsleepyfran%2Fduets","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsleepyfran%2Fduets/lists"}