{"id":20535693,"url":"https://github.com/rose-pine/build","last_synced_at":"2025-10-13T04:32:13.432Z","repository":{"id":40542031,"uuid":"486326147","full_name":"rose-pine/build","owner":"rose-pine","description":"Theme generator for Rosé Pine","archived":false,"fork":false,"pushed_at":"2025-03-14T14:29:39.000Z","size":55,"stargazers_count":28,"open_issues_count":4,"forks_count":3,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-10-13T04:32:08.090Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://www.npmjs.com/package/@rose-pine/build","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/rose-pine.png","metadata":{"funding":{"github":"mvllow","patreon":"rosepine"},"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,"zenodo":null}},"created_at":"2022-04-27T19:32:01.000Z","updated_at":"2025-09-09T09:29:32.000Z","dependencies_parsed_at":"2025-03-14T15:29:41.701Z","dependency_job_id":"c0dcf43d-fce7-454c-9f3e-00cfdf4af059","html_url":"https://github.com/rose-pine/build","commit_stats":{"total_commits":34,"total_committers":2,"mean_commits":17.0,"dds":0.02941176470588236,"last_synced_commit":"ef58134e2ec1a435c3eae1a79088c1487be0ba0e"},"previous_names":[],"tags_count":14,"template":false,"template_full_name":null,"purl":"pkg:github/rose-pine/build","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rose-pine%2Fbuild","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rose-pine%2Fbuild/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rose-pine%2Fbuild/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rose-pine%2Fbuild/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rose-pine","download_url":"https://codeload.github.com/rose-pine/build/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rose-pine%2Fbuild/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":279013685,"owners_count":26085390,"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-13T02:00:06.723Z","response_time":61,"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":[],"created_at":"2024-11-16T00:33:30.213Z","updated_at":"2025-10-13T04:32:13.399Z","avatar_url":"https://github.com/rose-pine.png","language":"JavaScript","funding_links":["https://github.com/sponsors/mvllow","https://patreon.com/rosepine"],"categories":[],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n    \u003cimg src=\"https://github.com/rose-pine/rose-pine-theme/raw/main/assets/icon.png\" width=\"80\" /\u003e\n    \u003ch2 align=\"center\"\u003eRosé Pine Build\u003c/h2\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003eAll natural pine, faux fur and a bit of soho vibes for the classy minimalist\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n    \u003ca href=\"https://github.com/rose-pine/rose-pine-theme\"\u003e\n        \u003cimg src=\"https://img.shields.io/badge/community-rosé%20pine-26233a?labelColor=191724\u0026logo=data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjUwIiBoZWlnaHQ9IjIzNyIgdmlld0JveD0iMCAwIDI1MCAyMzciIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxwYXRoIGQ9Ik0xNjEuMjI3IDE2MS4yNTFDMTMyLjE1NCAxNjkuMDQxIDExNC45MDEgMTk4LjkyNCAxMjIuNjkxIDIyNy45OTdDMTIzLjkyNSAyMzIuNjAzIDEyOC42NTkgMjM1LjMzNiAxMzMuMjY0IDIzNC4xMDJMMTg1LjkwNyAyMTkuOTk2QzIxOS41ODUgMjEwLjk3MiAyMzkuNTcgMTc2LjM1NCAyMzAuNTQ2IDE0Mi42NzdMMTYxLjIyNyAxNjEuMjUxWiIgZmlsbD0iIzI0NjI3QiIvPgo8cGF0aCBkPSJNODguMTgzNiAxNTkuOTg4QzExNy4yNTcgMTY3Ljc3OCAxMzQuNTEgMTk3LjY2MiAxMjYuNzIgMjI2LjczNUMxMjUuNDg2IDIzMS4zNCAxMjAuNzUyIDIzNC4wNzMgMTE2LjE0NyAyMzIuODM5TDYzLjUwNDEgMjE4LjczM0MyOS44MjY0IDIwOS43MSA5Ljg0MDk0IDE3NS4wOTIgMTguODY0OSAxNDEuNDE0TDg4LjE4MzYgMTU5Ljk4OFoiIGZpbGw9IiMyNDYyN0IiLz4KPHBhdGggZD0iTTE4Ni44NjcgMTcyLjk4QzE1Mi4wMDIgMTcyLjk4IDEyMy43MzcgMjAxLjI0NSAxMjMuNzM3IDIzNi4xMTFIMTg2Ljg3QzIyMS43MzYgMjM2LjExMSAyNTAgMjA3Ljg0NiAyNTAgMTcyLjk4TDE4Ni44NjcgMTcyLjk4WiIgZmlsbD0iIzMxNzQ4RiIvPgo8cGF0aCBkPSJNNjMuMTMyNyAxNzIuOThDOTcuOTk4NCAxNzIuOTggMTI2LjI2MyAyMDEuMjQ1IDEyNi4yNjMgMjM2LjExMUg2My4xM0MyOC4yNjQyIDIzNi4xMTEgLTEuNTI0MDNlLTA2IDIwNy44NDYgMCAxNzIuOThMNjMuMTMyNyAxNzIuOThaIiBmaWxsPSIjMzE3NDhGIi8+CjxwYXRoIGQ9Ik0xNzEuNzE3IDc1LjEyNjNDMTcxLjcxNyAxMDEuMjc2IDE1MC41MTggMTIyLjQ3NSAxMjQuMzY5IDEyMi40NzVDOTguMjE4OCAxMjIuNDc1IDc3LjAyMDIgMTAxLjI3NiA3Ny4wMjAyIDc1LjEyNjNDNzcuMDIwMiA0OC45NzY0IDk4LjIxODggMjcuNzc3OCAxMjQuMzY5IDI3Ljc3NzhDMTUwLjUxOCAyNy43Nzc4IDE3MS43MTcgNDguOTc2NCAxNzEuNzE3IDc1LjEyNjNaIiBmaWxsPSIjRUJCQ0JBIi8+CjxwYXRoIGQ9Ik0xNDQuMjE3IDg2LjIzNzlDMTYxLjY0OSA1Ni4wNDMyIDE1MS4zMDMgMTcuNDMyOSAxMjEuMTA4IDBMMTA2LjA2IDI2LjA2NDRDODguNjI3IDU2LjI1OSA5OC45NzM2IDk0Ljg2OTQgMTI5LjE2OCAxMTIuMzAyTDE0NC4yMTcgODYuMjM3OVoiIGZpbGw9IiNFQkJDQkEiLz4KPHBhdGggZD0iTTEyNS4yOTkgNjAuOTc4OUMxMTYuMjc1IDI3LjMwMTIgODEuNjU3NSA3LjMxNTY3IDQ3Ljk3OTcgMTYuMzM5Nkw2NC4zMTk3IDc3LjMyMTFDNzMuMzQzNiAxMTAuOTk5IDEwNy45NjEgMTMwLjk4NCAxNDEuNjM5IDEyMS45NkwxMjUuMjk5IDYwLjk3ODlaIiBmaWxsPSIjRUJCQ0JBIi8+CjxwYXRoIGQ9Ik0xMjQuOTI2IDYwLjk3ODlDMTMzLjk1IDI3LjMwMTIgMTY4LjU2NyA3LjMxNTY3IDIwMi4yNDUgMTYuMzM5NkwxODUuOTA1IDc3LjMyMTFDMTc2Ljg4MSAxMTAuOTk5IDE0Mi4yNjMgMTMwLjk4NCAxMDguNTg2IDEyMS45NkwxMjQuOTI2IDYwLjk3ODlaIiBmaWxsPSIjRUJCQ0JBIi8+Cjwvc3ZnPgo=\u0026style=for-the-badge\" /\u003e\n    \u003c/a\u003e\n\u003c/p\u003e\n\n\u003e Theme generator for Rosé Pine\n\n## Usage\n\nStart by creating a template file. This will look similar to your desired theme file, replacing colour values with Rosé Pine variables. For example, `#ebbcba` would now be `$rose`.\n\n```\n$ npx @rose-pine/build --help\n\n\tUsage\n\t\t$ npx @rose-pine/build [options]\n\n\tOptions\n\t\t-t, --template      Path to template file\n\t\t-o, --output        Directory for generated files\n\t\t-p, --prefix        Variable prefix\n\t\t-f, --format        Color output format\n\t\t-s, --strip-spaces  Strip spaces in output\n\t\t-w, --watch         Rebuild when template changes\n\n\tExamples\n\t\t$ npx @rose-pine/build -w\n\t\t$ npx @rose-pine/build -s -f rgb\n\t\t$ npx @rose-pine/build -t ./template.yml -o ./\n```\n\n## Color formats\n\n| Name         | Example              |\n| ------------ | -------------------- |\n| hex          | `#ebbcba`            |\n| hex-ns       | `ebbcba`             |\n| rgb          | `235, 188, 186`      |\n| rgb-ns       | `235 188 186`        |\n| rgb-ansi     | `235;188;186`        |\n| rgb-array    | `[235, 188, 186]`    |\n| rgb-function | `rgb(235, 188, 186)` |\n| hsl          | `2, 55%, 83%`        |\n| hsl-ns       | `2 55% 83%`          |\n| hsl-array    | `[2, 55%, 83%]`      |\n| hsl-function | `hsl(2, 55%, 83%)`   |\n\n## Variables\n\n\u003e By default, variables are prefixed with `$`\n\nAll values from [@rose-pine/palette](https://github.com/rose-pine/palette) are available as well as the following.\n\n### Metadata\n\n```jsonc\n// template.json\n{\n\t\"id\": \"$id\",\n\t\"name\": \"$name\",\n\t\"description\": \"$description\",\n\t\"type\": \"$type\",\n}\n\n// rose-pine.json\n{\n\t\"id\": \"rose-pine\",\n\t\"name\": \"Rosé Pine\",\n\t\"description\": \"All natural pine, faux fur and a bit of soho vibes for the classy minimalist\",\n\t\"type\": \"dark\",\n}\n\n// rose-pine-moon.json\n{\n\t\"id\": \"rose-pine-moon\",\n\t\"name\": \"Rosé Pine Moon\",\n\t\"description\": \"All natural pine, faux fur and a bit of soho vibes for the classy minimalist\",\n\t\"type\": \"dark\",\n}\n\n// rose-pine-dawn.json\n{\n\t\"id\": \"rose-pine-dawn\",\n\t\"name\": \"Rosé Pine Dawn\",\n\t\"description\": \"All natural pine, faux fur and a bit of soho vibes for the classy minimalist\",\n\t\"type\": \"light\",\n}\n```\n\n## Custom values per variant\n\n\u003e Use different values for each variant, formatted as `$(main|moon|dawn)`\n\n### Named colors\n\n```jsonc\n// template.json\n{ \"accent\": \"$($rose|$iris|$pine)\" }\n\n// rose-pine.json\n{ \"accent\": \"#ebbcba\" }\n\n// rose-pine-moon.json\n{ \"accent\": \"#c4a7e7\" }\n\n// rose-pine-dawn.json\n{ \"accent\": \"#286983\" }\n```\n\n### Strings\n\n```jsonc\n// template.json\n{ \"order\": \"$(Caffè|Cappuccino|Marocchino)\" }\n\n// rose-pine.json\n{ \"order\": \"Caffè\" }\n\n// rose-pine-moon.json\n{ \"order\": \"Cappuccino\" }\n\n// rose-pine-dawn.json\n{ \"order\": \"Marocchino\" }\n```\n\n## Related\n\n- [bloom](https://github.com/rose-pine/rose-pine-bloom) - Work-in-progress alternative build tool written in Go\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frose-pine%2Fbuild","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frose-pine%2Fbuild","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frose-pine%2Fbuild/lists"}