{"id":20818337,"url":"https://github.com/lpgray/ray-grunt-template","last_synced_at":"2025-05-07T14:10:26.097Z","repository":{"id":24298440,"uuid":"27693716","full_name":"lpgray/ray-grunt-template","owner":"lpgray","description":"A web application grunt init template","archived":false,"fork":false,"pushed_at":"2015-05-09T04:49:36.000Z","size":219,"stargazers_count":26,"open_issues_count":0,"forks_count":5,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-03-31T10:51:16.505Z","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/lpgray.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}},"created_at":"2014-12-08T02:19:05.000Z","updated_at":"2023-02-25T13:06:27.000Z","dependencies_parsed_at":"2022-08-22T15:20:18.337Z","dependency_job_id":null,"html_url":"https://github.com/lpgray/ray-grunt-template","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/lpgray%2Fray-grunt-template","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lpgray%2Fray-grunt-template/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lpgray%2Fray-grunt-template/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lpgray%2Fray-grunt-template/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/lpgray","download_url":"https://codeload.github.com/lpgray/ray-grunt-template/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252892503,"owners_count":21820648,"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-17T21:46:25.108Z","updated_at":"2025-05-07T14:10:26.078Z","avatar_url":"https://github.com/lpgray.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# ray-grunt-template\n一个基于 [gruntjs](http://gruntjs.org) 及其多个插件的Web前端开发项目初始化模板，切图好帮手。\n\n## Gulp Version\n这里有一个正在开发中的[gulp 版](https://github.com/lpgray/gulp-boilerplate)\n\n## 使用步骤\n1. 安装 [nodejs](http://nodejs.org) 与 [gruntjs](http://gruntjs.com) 环境\n2. `npm install -g grunt-init` 安装 `grunt-init`\n3. 创建项目目录，`mkdir yourproject`\n4. `git clone git@github.com:lpgray/ray-grunt-template.git`\n5. 使用 ray-grunt-template，运行 `grunt-init ~/ray-grunt-template`\n6. 安装依赖，运行 `npm install`\n7. 运行 `grunt dev` enjoy it!\n\n## 特性\n\n### CSS\n- 使用Less写样式，然后使用grunt-contrib-less来进行编译、合并\n- 使用grunt-contrib-cssmin来进行压缩（或者直接使用grunt-contrib-less来压缩）\n\n### JavaScript\n- 使用grunt-contrib-concat进行代码合并\n- 使用grunt-contrib-uglify进行代码压缩\n\n### HTML\n使用 grunt-includes 来做动态引用公共模板，能像后端动态include一样来制作前端页面。\n\n\u003e 在`src/html`文件夹中编辑html，最终的html是置于`src`下\n\n### Build\n- 每次build代码都会生成全新的css与js文件，以构建时间做为文件名称的一部分\n- 使用process-html来替换引用部分\n\n### Develop\n- 采用更强大的 [browser-sync](https://github.com/shakyShane/browser-sync) 工具，来实现多屏同步开发，CSS自动注入无需刷新就可以看到浏览器效果，而且还能多屏幕同步操作，运行 `grunt dev` 使用此开发模式。\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flpgray%2Fray-grunt-template","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flpgray%2Fray-grunt-template","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flpgray%2Fray-grunt-template/lists"}