{"id":16321459,"url":"https://github.com/doodlewind/legs","last_synced_at":"2025-06-13T20:03:31.542Z","repository":{"id":80193143,"uuid":"67289703","full_name":"doodlewind/legs","owner":"doodlewind","description":"Light Easy Gulp Scaffold","archived":false,"fork":false,"pushed_at":"2018-01-22T20:48:02.000Z","size":12,"stargazers_count":1,"open_issues_count":0,"forks_count":1,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-01-26T09:48:29.922Z","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":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/doodlewind.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":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2016-09-03T12:46:47.000Z","updated_at":"2019-04-29T11:14:29.000Z","dependencies_parsed_at":"2023-03-12T10:20:08.078Z","dependency_job_id":null,"html_url":"https://github.com/doodlewind/legs","commit_stats":{"total_commits":5,"total_committers":2,"mean_commits":2.5,"dds":"0.19999999999999996","last_synced_commit":"29da4a9991d81dc658a2aa8adcf5fe00b6fa57d2"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/doodlewind%2Flegs","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/doodlewind%2Flegs/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/doodlewind%2Flegs/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/doodlewind%2Flegs/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/doodlewind","download_url":"https://codeload.github.com/doodlewind/legs/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":239221175,"owners_count":19602380,"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-10-10T22:47:51.294Z","updated_at":"2025-02-17T02:13:46.854Z","avatar_url":"https://github.com/doodlewind.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# legs\nLight Easy Gulp Scaffold, automating build tasks tuned for lightweight front end development without AMD.\n\n## Features\n* Sass build automation.\n* Configurable JS/CSS minify automation.\n* Pure HTML template support.\n* Trigger build task on file change with local web server.\n* Configurable destination path and html extension, e.g.,`.jsp` or `.php`.\n* Generator for new page, including html / stylesheet / script / test.\n\n## Usage\n\n### Install\nFirstly install [gulp](http://gulpjs.com/) as global dependency, notice that `npm` can be replaced by [cnpm](https://npm.taobao.org/) for mainland China developers:\n\n```\n[sudo] npm install --global gulp \n```\n\nThen clone legs:\n\n``` bash\ngit clone https://github.com/doodlewind/legs.git\n```\n\nInstall dependencies:\n\n``` bash\ncd legs \u0026\u0026 npm install\n```\n\nInstallation done, start server and visit `localhost:8000` to test it out:\n\n``` bash\ngulp server\n```\n\nNow gulp watchs file changes in `src` and automatically builds the project. Mocha test cases for `index` is generated at `/src/test/index/test.html` and it's available to be executed in browser.\n\n### File structure\nLegs uses following file structure given `index.html` is generated by default:\n\n``` text\n├── gulpfile.js\n├── package.json\n├── node_modules //js libs for browser and gulp\n└── src\n    ├── html\n    │   ├── index.html\n    │   └── partials //common HTML template\n    ├── js\n    ├── sass\n    │   ├── base\n    │   ├── components\n    │   ├── helpers\n    │   ├── layout //page styles\n    │   │   └── index\n    │   │       └── _main.scss\n    │   └── style-index.scss\n    ├── scaffold\n    └── test\n        └── index //test cases\n            ├── test.html\n            └── test.js\n```\n\n### Commands\nCustom gulp tasks are listed as below:\n\n#### default\n`gulp` or `gulp default` rebuilds all static resources in source path to their corresponding destination path, including scripts / stylesheets / images.\n\n#### new\n`gulp new -n foo` generates following files:\n\n* `foo.html` in `src/html`\n* `foo/main.js` in `src/js`\n* `style-foo.scss` and its related Sass file structure in `src/sass`\n* `test.js` in `src/test/foo` as mocha test case\n\n#### watch\n`gulp watch` watches file changes in `src` and triggers `gulp default`. This task does not start gulp-webserver.\n\n#### server\n`gulp server` runs `gulp watch` and starts gulp-webserver, also responds to file changes.\n\n#### clean\n`gulp clean` removes all files in resource and cache path. This task is executed before `default` and `watch`, so **don't put source file directly in destination path** or it'll be cleaned. Put your source file in corresponding `src` path and let gulp generate it to destination path.\n\n#### clean-cache\n`gulp clean-cache` removes:\n\n* Sass cache.\n* HTML generated in project root folder (generated for local web server).\n\nFiles generated in destination path won't be effected.\n\n### Config\nOptions available in `gulpfile.js` are listed as below:\n\n* `PRODUCTION`: `boolean`, enables JS / CSS minify when set to `true`.\n* `HTML_EXT_NAME`: `string`, determines output html file suffix.\n* `PORT`: `number`, the port number for local gulp-webserver.\n* `PATH`: `json`, determines source and destination file path, relative to `gulpfile.js`.\n\n## License\nLegs is released under MIT License.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdoodlewind%2Flegs","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdoodlewind%2Flegs","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdoodlewind%2Flegs/lists"}