{"id":18858421,"url":"https://github.com/francois-esquire/dock","last_synced_at":"2026-04-07T07:43:12.687Z","repository":{"id":86352225,"uuid":"117800862","full_name":"Francois-Esquire/dock","owner":"Francois-Esquire","description":"Simple Starter Setup","archived":false,"fork":false,"pushed_at":"2018-08-15T02:27:16.000Z","size":6457,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"master","last_synced_at":"2026-01-03T14:34:34.630Z","etag":null,"topics":["ava","boilerplate","docker","eslint","koa","nodejs","prettier","react","rollup","scss","stylelint","webpack"],"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/Francois-Esquire.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":"2018-01-17T07:28:30.000Z","updated_at":"2018-08-01T03:44:58.000Z","dependencies_parsed_at":null,"dependency_job_id":"e6b1b728-da68-4133-9639-2b16333245f1","html_url":"https://github.com/Francois-Esquire/dock","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Francois-Esquire/dock","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Francois-Esquire%2Fdock","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Francois-Esquire%2Fdock/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Francois-Esquire%2Fdock/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Francois-Esquire%2Fdock/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Francois-Esquire","download_url":"https://codeload.github.com/Francois-Esquire/dock/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Francois-Esquire%2Fdock/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31504897,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-07T03:10:19.677Z","status":"ssl_error","status_checked_at":"2026-04-07T03:10:13.982Z","response_time":105,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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":["ava","boilerplate","docker","eslint","koa","nodejs","prettier","react","rollup","scss","stylelint","webpack"],"created_at":"2024-11-08T04:12:44.338Z","updated_at":"2026-04-07T07:43:12.682Z","avatar_url":"https://github.com/Francois-Esquire.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Dock\n\nSimple Starter Setup Using Node.js and Docker.\n\n**Features**\n\n- Build out using future Javascript with the latest Node.js and [`esm`](https://github.com/standard-things/esm)\n- Runs a server application using [`koa`](https://github.com/koajs/koa)\n- Develop your isomorphic application with [`react`](https://github.com/facebook/react) and deliver it with a built-in server-side setup\n- Linting and code formatting ready out of the box with [`eslint`](https://github.com/eslint/eslint), [`stylelint`](https://github.com/stylelint/stylelint), [`prettier`](https://github.com/prettier/prettier)\n- Test concurrently using [`ava`](https://github.com/avajs/ava)\n- Shape react components with focus using [`react-cosmos`](https://github.com/react-cosmos/react-cosmos)\n- Build pipeline with [`webpack`](https://github.com/webpack/webpack) \u0026 [`rollup`](https://github.com/rollup/rollup)\n- Hot reloading server \u0026 client\n\n**Roadmap**\n\n- [ ] HTTP/2\n- [ ] TLS/SSL ready\n- [ ] Containerized testing environment\n- [ ] Branch-specific starters for various implementations\n\n## Motivation\n\nThe developer experience is a major concern of mine. The main goal of this repository was to facilitate the process of bootstrapping and setup for immediate quality development.\n\n## Get Started\n\n- **Running The Server**\n\n  Run `npm start` or `npm run dev` to start the hot loading server, both at localhost:3000.\n\n- **Building The Project**\n\n  Run `npm run build` to generate a production ready build under the dist/ directory.\n\n- **Testing The Code**\n\n  Run `npm test` or `npm run test-watch` to rerun tests on file change.\n\n- **React Component Development**\n\n  Run `npm run cosmos` to start component development at localhost:8989.\n\n  If you are new to [`react-cosmos`](https://github.com/react-cosmos/react-cosmos), please check out the documentation and get yourself familiar with the [idea of fixtures](https://github.com/react-cosmos/react-cosmos#fixtures).\n\n### With Docker\n\n- **Getting Started**\n\n  Run `docker-compose up --build`\n\n  **Also**\n\n  You can run the container yourself:\n\n  ```bash\n    # build it with a tag\n    docker build -t dock . \\\n\n    docker container run -d -p 80:3000 --name dock --rm dock\n    # keep out the -d (detached) if you want to see the logs\n  ```\n\n  :bulb: To change the node version in your container, open up the Dockerfile and change\n\n  `FROM node:alpine # to node:10.1-alpine`\n\n- **Deploying The Container**\n\n  You can `npm run deploy` to start building your image and tag it.\n\n  The command uses the `\"deploy\": {...}` configuration in your `package.json`, update it accordingly.\n\n  This is useful if you have a private repository set up, as well as for getting it up on Docker Hub.\n\n- **Ship It Out**\n\n  Running `npm run ship` will run tests then build and finally deploy your app.\n\n---\n\n**Requires**\n\n- Node \u003e=7.6.0 - for native async/await support, primarily.\n\n**Optional Enhancements**\n\n- A properly setup IDE - to take advantage of ESLint, Stylelint and Prettier.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffrancois-esquire%2Fdock","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffrancois-esquire%2Fdock","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffrancois-esquire%2Fdock/lists"}