{"id":18056061,"url":"https://github.com/argyleink/js-web-app-starter","last_synced_at":"2025-07-15T01:15:34.387Z","repository":{"id":18274692,"uuid":"21438106","full_name":"argyleink/JS-Web-App-Starter","owner":"argyleink","description":"Vagrant/Nginx/Express/MySQL/Grunt/Jade/Stylus","archived":false,"fork":false,"pushed_at":"2014-08-16T23:15:35.000Z","size":304,"stargazers_count":7,"open_issues_count":2,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-07-09T00:07:37.462Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"CSS","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/argyleink.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}},"created_at":"2014-07-02T19:46:18.000Z","updated_at":"2024-12-19T03:31:17.000Z","dependencies_parsed_at":"2022-07-23T01:16:23.522Z","dependency_job_id":null,"html_url":"https://github.com/argyleink/JS-Web-App-Starter","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/argyleink/JS-Web-App-Starter","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/argyleink%2FJS-Web-App-Starter","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/argyleink%2FJS-Web-App-Starter/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/argyleink%2FJS-Web-App-Starter/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/argyleink%2FJS-Web-App-Starter/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/argyleink","download_url":"https://codeload.github.com/argyleink/JS-Web-App-Starter/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/argyleink%2FJS-Web-App-Starter/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":265384411,"owners_count":23756715,"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-31T01:13:27.920Z","updated_at":"2025-07-15T01:15:34.362Z","avatar_url":"https://github.com/argyleink.png","language":"CSS","funding_links":[],"categories":[],"sub_categories":[],"readme":"### Vagrant Powered Dev Environment\n##### Back End:\n- Nginx  \n- Express  \n- MySQL\n\n##### Front End:\n- JS  \n- Jade  \n- Stylus\n\n### What's Inside?\n- Automagic server\n- Best static file server out there\n- Node/Express API started for easy routing to DB\n- Clean Grunt task architecture\n- Dev and Prod builds (min and non-min static files)\n- Autoreload\n- Jade everywhere! Jade for static HTML generation and for client side templating\n- Stylus with Nib\n- Bower component management\n\n## First Time Setup\n#### Requirements\n- [Vagrant](http://www.vagrantup.com/downloads.html)\n- [Virtual Box](https://www.virtualbox.org/)\n- Chef `gem install librarian-chef`\n- [Node \u0026 NPM](http://nodejs.org/)\n- Bower `sudo npm install -g bower`\n- Grunt `sudo npm install -g grunt-cli`\n- Internet, doi ;)\n\n#### Steps\nFrom the root folder of this repo, run `bash setup.sh`. You may be prompted for your password, for some globally installed items. \n\nThis installs the node modules, bower components, jade template library, and runs the dev grunt task. Then this downloads the cookbooks we'll need to provision the server that vagrant is about to spin up. This will run for a few minutes, but when it's done, you'll have node and nginx up and running, ready for a rest based modern web app.\n\nWhen setup is complete, your console should report a build success and show you the node api output. This means everything is working properly. So pop open a new console tab, and run `grunt`. This will compile all the assets for development, open a browser tab, and start watching for file changes. This is just like Yeoman, except, we're working against a VM instead of your local machine. The power is how easy this is to share with others =)\n\nTo setup auto-reload, open `app/includes/scripts.jade` and put your ip address into the space where mine is. Uncomment the line, save, run `grunt`. \n\n#### Result\n- App is running at `1.3.3.7` in your browser\n- API is running at `1.3.3.7/api` in your browser\n- Visit the app from another device on the same wifi with `COMP_IP_ADDRESS:3030`\n- All the goodness of vagrant\n- All the goodness of grunt\n\n#### Commands on your machine\n- `grunt`: your goto build command\n- `grunt dev`: a dev build without watching\n- `grunt prod`: crunch it all\n- `vagrant suspend`: put VM to sleep\n\n#### Commands on virtual machine\n\u003e First you need to run `vagrant ssh` to run these commands  \n\n- `node /var/api/app.js`: start the node api server\n- `mysql -u root -p`: connect to mysql cli\n- `sudo nginx -s reload`: restart Nginx\n\n#### Note\nAfter you've run setup, subsequent app runs should be done with `vagrant up \u0026\u0026 grunt`  \nTest the API at `1.3.3.7/api/user/dood`\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fargyleink%2Fjs-web-app-starter","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fargyleink%2Fjs-web-app-starter","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fargyleink%2Fjs-web-app-starter/lists"}