{"id":16129690,"url":"https://github.com/duddu/sourdoc","last_synced_at":"2025-03-18T14:30:46.885Z","repository":{"id":197194841,"uuid":"698120408","full_name":"duddu/sourdoc","owner":"duddu","description":"Your ultimate companion for perfect sourdough. Calculate every variable from mixing to fermentation for the ideal sourdough baking experience.","archived":false,"fork":false,"pushed_at":"2024-01-15T18:28:41.000Z","size":44012,"stargazers_count":3,"open_issues_count":3,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-28T10:03:49.200Z","etag":null,"topics":["android","dart","flutter","ios","sourdough","web"],"latest_commit_sha":null,"homepage":"https://sourdoc.duddu.dev","language":"Dart","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mpl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/duddu.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-09-29T07:48:16.000Z","updated_at":"2024-04-26T10:52:01.000Z","dependencies_parsed_at":"2023-10-11T15:14:55.360Z","dependency_job_id":"eb439d50-514c-4b4a-94b4-7791798651d9","html_url":"https://github.com/duddu/sourdoc","commit_stats":{"total_commits":175,"total_committers":2,"mean_commits":87.5,"dds":"0.017142857142857126","last_synced_commit":"be47b8ef1a0ef765939f1e243d925743b2bf1b76"},"previous_names":["duddu/sourdoc"],"tags_count":56,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/duddu%2Fsourdoc","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/duddu%2Fsourdoc/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/duddu%2Fsourdoc/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/duddu%2Fsourdoc/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/duddu","download_url":"https://codeload.github.com/duddu/sourdoc/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243933413,"owners_count":20370987,"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":["android","dart","flutter","ios","sourdough","web"],"created_at":"2024-10-09T22:12:01.030Z","updated_at":"2025-03-18T14:30:46.272Z","avatar_url":"https://github.com/duddu.png","language":"Dart","funding_links":[],"categories":[],"sub_categories":[],"readme":"# [Sourdoc](https://sourdoc.duddu.dev)\n[![Release](https://github.com/duddu/sourdoc/actions/workflows/release.yml/badge.svg)](https://github.com/duddu/sourdoc/actions/workflows/release.yml)\n[![Version](https://img.shields.io/github/v/tag/duddu/sourdoc?label=Version\u0026logo=semver\u0026color=6B41C8\u0026labelColor=2b3238)](https://github.com/duddu/sourdoc/releases/latest)\n[![License](https://badgen.net/github/license/duddu/sourdoc?color=009688\u0026label=License\u0026labelColor=2b3238)](https://github.com/duddu/sourdoc/blob/main/LICENSE)\n[![PRs Welcome](https://img.shields.io/badge/PRs-welcome-yellow.svg?labelColor=2b3238)](https://github.com/duddu/sourdoc/compare)\n\nYour ultimate companion for perfect sourdough - Calculate every variable from mixing to fermentation for the ideal sourdough baking experience. Try it now:\n\n[![Launch web app](https://img.shields.io/badge/Launch_web_app-red?logo=googlechrome\u0026logoColor=white)](https://sourdoc.duddu.dev)\n[![Download Android app](https://img.shields.io/badge/Download_Android_app-silver?logo=android\u0026logoColor=white\u0026color=008f62)](https://sourdoc.duddu.dev/download-release-asset.html?build=apk)\n[![Download macOS app](https://img.shields.io/badge/Download_macOS_app-silver?logo=apple\u0026logoColor=grey)](https://sourdoc.duddu.dev/download-release-asset.html?build=macos)\n[![Download Windows app](https://img.shields.io/badge/Download_Windows_app-0061bb?logo=windows\u0026logoColor=white)](https://sourdoc.duddu.dev/download-release-asset.html?build=windows)\n[![Download Linux app](https://img.shields.io/badge/Download_Linux_app-grey?logo=linux\u0026logoColor=white)](https://sourdoc.duddu.dev/download-release-asset.html?build=linux)\n\n## How it works\n\nThe user provides ambient temperature, final bread desired weight, hydration and salt levels, and gets in return all the relevant data automatically calculated: all the ingredients quantities, the recommended inoculation level and how much should the dough rise during bulk fermentation.\n\n\u003cimg alt=\"Sourdoc sample screenshot 1\" src=\"https://raw.githubusercontent.com/duddu/sourdoc/main/docs/assets/web-home-screenshot_1.png\" width=360\u003e\u0026emsp;\n\u003cimg alt=\"Sourdoc sample screenshot 2\" src=\"https://raw.githubusercontent.com/duddu/sourdoc/main/docs/assets/web-home-screenshot_2.png\" width=360\u003e\n\n### Notes about the calculation\n\nSourdoc doesn't simply use the baker's formula to calculate the ingredients quantities, since that doesn't take into account the ambient temperature; we use instead a more complete formula specific to sourdough baking: \n\n```go\nb = f - f * h - f * i - f * s\n// b: desired bread loaf weight\n// f: flour weight\n// h: hydration level (percentage of flour)\n// s: salt level (percentage of flour)\n```\n\nFor a detailed explanation, see [here](https://sourdoc.duddu.dev/help).\n\n## CLI\n\nThe repository contains two simple dart scripts useful for updating maintainance files:\n\n```bash\ndart run cli/update_sitemap.dart\n# Updates the lastmod field in the web sitemap.xml to the current datetime\n\ndart run cli/bump_version.dart --increment patch\n# Updates the VERSION file using semantic versioning. Supported increment values: patch|minor|major.\n```\n\n## Tech \n\nMade with Dart and Flutter, supporting multi-platform build. Will likely be released on the iOS and Android stores in the future. \n\n## Contribution\n\nFeel free to raise an issue if you have any question or suggestions, or open a PR if you want to propose any change.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fduddu%2Fsourdoc","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fduddu%2Fsourdoc","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fduddu%2Fsourdoc/lists"}