{"id":18601707,"url":"https://github.com/eficode/weatherapp-frontend","last_synced_at":"2025-05-16T17:33:45.862Z","repository":{"id":41049238,"uuid":"390295066","full_name":"eficode/weatherapp-frontend","owner":"eficode","description":null,"archived":false,"fork":false,"pushed_at":"2022-09-12T11:36:13.000Z","size":392,"stargazers_count":1,"open_issues_count":0,"forks_count":2,"subscribers_count":9,"default_branch":"main","last_synced_at":"2025-02-18T01:33:28.897Z","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/eficode.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":"2021-07-28T09:36:40.000Z","updated_at":"2023-08-22T10:47:49.000Z","dependencies_parsed_at":"2023-01-18T04:46:03.001Z","dependency_job_id":null,"html_url":"https://github.com/eficode/weatherapp-frontend","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/eficode%2Fweatherapp-frontend","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eficode%2Fweatherapp-frontend/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eficode%2Fweatherapp-frontend/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eficode%2Fweatherapp-frontend/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/eficode","download_url":"https://codeload.github.com/eficode/weatherapp-frontend/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254576421,"owners_count":22094366,"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-07T02:09:12.565Z","updated_at":"2025-05-16T17:33:45.841Z","avatar_url":"https://github.com/eficode.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Weather app - Frontend developer challenge\n\nThere was a beautiful idea of building an app that would show the upcoming weather. The developers wrote a nice backend and a frontend following the latest principles and - to be honest - bells and whistles. However, the developers did not have time to finish the frontend. Your task is to continue where they left of or create your own frontend.\n\n## Prerequisites\n* Docker and docker-compose installed on your machine\n* An openweathermap API key (by default it is set in docker-compose.yml) \n\n## Returning your solution\n1. Create a private GitHub or GitLab repository. DON’T make it public.\n2. Make changes, commit them, and push them to your own repository.\n3. Create a .zip -package including the .git-directory, but excluding the node_modules-directories.\n4. Send us the archive.\n\n## How to run backend and demo frontend\n1. Go and get API key from openweathermap.org\n2. Open docker-compose.yml file and replace APPID variable value with your API key\n3. Run command line command `docker-compose up -d`\n4. The service is now up and running!\n    - Backend is now running in http://localhost:9000\n    - And demo frontend in http://localhost:8000\n\n## Exercises\n\n### Choosing the frontend framework\nOne of the first decisions you have to make is to choose a frontend framework to\nredesign the frontend. The goal is to build a new, modern, fast and reliable frontend\napp to serve all of our current and future users.\nPopular choices are:\n* React\n* Vue\n* Angular\n* Some other framework of you preference\n\nNote that you can delete the existing demo frontend made with React if you choose\nto implement your application with Vue, Angular or something totally different. Be\nsure to include clear instructions on how to run your application. Sticking to\ndocker-compose is highly advisable.\n\n### Frontend feature wishlist\nThe application should display the current weather as an icon as well as current temperature, humidity and air pressure\n* It should probably report the forecast e.g. a few hours from now. (tip: openweathermap api and existing methods in the backend)\n* The demo frontend app currently reports the weather only for Helsinki. Shouldn't it check the browser location and use that as the reference for\nmaking a forecast? (tip: geolocation)\n* Think of UI and UX. How could our service stand out from the vast amount of other weather service sites and, at the same time, be as user-friendly and\nintuitive as possible?\n\n### Testing\nTest automation is key in developing good quality applications. Finding bugs in early\nstages of development is valuable in any software development project. With Robot\nFramework you can create integration tests that also serve as feature descriptions,\nmaking them exceptionally useful.\n* Create automated tests for the application. (tip: mocha)\n* Create Robot Framework integration tests. Hint: Start by creating a third\ncontainer that gives expected weather data and direct the backend queries\nthere by redefining the MAP_ENDPOINT.\n\n### Documentation\nGood documentation benefits everyone.\n* Remember to update the README\n* Use descriptive names and add comments in the code when necessary\n\n\n\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Feficode%2Fweatherapp-frontend","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Feficode%2Fweatherapp-frontend","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Feficode%2Fweatherapp-frontend/lists"}