{"id":25269943,"url":"https://github.com/javascript-pro/aligent-beer-challenge","last_synced_at":"2026-04-13T03:03:30.463Z","repository":{"id":89533939,"uuid":"83749258","full_name":"javascript-pro/aligent-beer-challenge","owner":"javascript-pro","description":"March 2017 Aligent Tech Challenge. brewerydb.com has a simple API that returns JSON. We would like you to use HTML, CSS and Javascript to read the API and display it in an organized way. In addition, you should add in some sort of sorting mechanic to the front-end","archived":false,"fork":false,"pushed_at":"2019-06-29T03:14:15.000Z","size":8991,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"master","last_synced_at":"2025-07-22T02:54:03.528Z","etag":null,"topics":["babel","css3","es6","html5","javascript","linting","reactjs","sass","spa","webpack"],"latest_commit_sha":null,"homepage":"https://www.aligent.com.au","language":"JavaScript","has_issues":false,"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/javascript-pro.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":"2017-03-03T02:43:07.000Z","updated_at":"2021-11-03T00:52:28.000Z","dependencies_parsed_at":null,"dependency_job_id":"d2988e33-7ea1-424e-a4b2-7a22331cdf99","html_url":"https://github.com/javascript-pro/aligent-beer-challenge","commit_stats":null,"previous_names":["javascript-pro/aligent-beer-challenge"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/javascript-pro/aligent-beer-challenge","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/javascript-pro%2Faligent-beer-challenge","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/javascript-pro%2Faligent-beer-challenge/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/javascript-pro%2Faligent-beer-challenge/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/javascript-pro%2Faligent-beer-challenge/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/javascript-pro","download_url":"https://codeload.github.com/javascript-pro/aligent-beer-challenge/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/javascript-pro%2Faligent-beer-challenge/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31737850,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-12T22:19:12.206Z","status":"online","status_checked_at":"2026-04-13T02:00:06.623Z","response_time":93,"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":["babel","css3","es6","html5","javascript","linting","reactjs","sass","spa","webpack"],"created_at":"2025-02-12T11:28:02.832Z","updated_at":"2026-04-13T03:03:30.448Z","avatar_url":"https://github.com/javascript-pro.png","language":"JavaScript","readme":"![alt text](https://raw.githubusercontent.com/listingslab/aligent-beer-challenge/develop/public/assets/img/aligent-beer-challenge.png \"Aligent Beer Challenge\")\n# Aligent Craft Beer Challenge (1.1.4)\n\nDeveloped by listingslab for the Aligent Consulting as a recruitment challenge, March 2017. This is a React Application (/src) which compiles into a standalone HTML folder called build. This is a complete Webpack build development environment which enables fast in-editor pre-testing of the React app against lint rules for both JavaScript and SCSS and enables multi-device testing while we develop and compile the app.\n\n## The Challenge\n\nBreweryDB has a simple API that returns JSON (documentation here http://www.brewerydb.com/developers/docs ). We would like you to use HTML, CSS and Javascript to read the API and display it in an organized way. In addition, you should add in some sort of sorting mechanic to the front-end. Feel free to use any frameworks you would like to achieve the task.\n\n---\n\n## PHP Proxy\n\nIn order to get round the problem of cross domain loading of JSON from a server without Access-Control-Allow-Origin setup (as in the case of BreweryDB), we implemented a proxy solution called Simple PHP Proxy (http://benalman.com/projects/php-simple-proxy/). It's a single PHP file residing here: http://jqueryresume.com/proxy.php?url=\u003capi url\u003e\n\nBecause our JavaScript is running on the same domain, the proxy makes it possible to load JSON from the API without contravening the Cross Origin rules.\n\n---\n\n## Developer Installation\n\ncd to your working directory (ours is ~/node) and do the following. Clone the directory,\nwhich uses a GitFlow methodology. Checkout both master and develop branches but DO NOT\ndevelop into them. Create a feature. Develop that. Once it's done, merge into develop.\n\ngit clone https://github.com/listingslab/aligent-beer-challenge.git\nnpm install\nnpm start\n\nBasta. That's it. You'll be running a local dev environment using webpack devserver. Your App is viewable on http://localhost:8080.\n\n---\n\n## CSS (scss)\nStyling for the various react components and templates has been split out into the same folders as the React code they relate to, but there are a few other files to look out for.\n\n*/src/styles/style.scss*\n*/src/styles/vars.scss*\n*/public/assets/styles/*\n\nThis file can be used to apply styles application wide. It's a useful place for responsiveness related styling.\n\n### Using Atom editor?\n\nInstall IDE linting. It's proper helpful\n\n`apm install linter-eslint`\n\n`apm install linter-stylelint`\n\n### NPM Scripts\n\n`npm start`\nRuns webpack-dev-server with hot reload\n\n`npm run build`\nCreates production ready application into /build folder\n\n`npm run elint`\nRun \u0026 Summarise the linting process\n\n`npm run slint`\nRun the style lint process\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjavascript-pro%2Faligent-beer-challenge","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjavascript-pro%2Faligent-beer-challenge","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjavascript-pro%2Faligent-beer-challenge/lists"}