{"id":19006161,"url":"https://github.com/atothey/locationbuddy","last_synced_at":"2026-02-28T10:33:40.582Z","repository":{"id":124236088,"uuid":"46689507","full_name":"AtotheY/LocationBuddy","owner":"AtotheY","description":null,"archived":false,"fork":false,"pushed_at":"2015-12-07T21:23:27.000Z","size":12653,"stargazers_count":4,"open_issues_count":0,"forks_count":0,"subscribers_count":5,"default_branch":"master","last_synced_at":"2025-02-21T14:23:20.531Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"HTML","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/AtotheY.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":"2015-11-23T01:26:42.000Z","updated_at":"2015-12-08T01:30:38.000Z","dependencies_parsed_at":"2023-03-14T12:45:18.692Z","dependency_job_id":null,"html_url":"https://github.com/AtotheY/LocationBuddy","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/AtotheY/LocationBuddy","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AtotheY%2FLocationBuddy","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AtotheY%2FLocationBuddy/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AtotheY%2FLocationBuddy/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AtotheY%2FLocationBuddy/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/AtotheY","download_url":"https://codeload.github.com/AtotheY/LocationBuddy/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AtotheY%2FLocationBuddy/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29930344,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-28T09:58:13.507Z","status":"ssl_error","status_checked_at":"2026-02-28T09:57:57.047Z","response_time":90,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6: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":[],"created_at":"2024-11-08T18:30:48.484Z","updated_at":"2026-02-28T10:33:40.564Z","avatar_url":"https://github.com/AtotheY.png","language":"HTML","funding_links":[],"categories":[],"sub_categories":[],"readme":"# LocationBuddy\nA small project worked on by a group of friends using Java and Intellij\n\nUsing http://openweathermap.org/ 's API we are able to get real time temperature information about any city in the world. The DataPull class is the main file that does the API interaction. The program will have a main class for user interaction, and a variety of functionalities to choose from, each of which involving their own design pattern.\n\n\n# Intellij vs Netbeans rundown\n\nThings work a a bit differently in Intellij than Netbeans. As you guys are probably noticing, there's no immediate 'package' hierarchy\nlike there is in Netbeans. This is actually somewhat convenient for our cause. We're only dealing with one package, and therefore have no need to implement one.\n\nAll Java files belong in the \"src\" directory. You can extend classes and implement interfaces freely as long as all files here.\n\nAll modules will most likely branch outwards from our main data pulling file. I'll make sure to include easy-to-use methods for ease of access.\n* Please make all new modules on a new branch, and submit a merge request when done. That way if anything goes wrong locally, our main program is still afloat.\n\nIn addition to easy VCS use, Intellij has Maven integration, allowing dependencies of any external libraries you guys want to be added really easily.\nIf you guys want to add a dependency, just go to File \u003e\u003e Project Structure \u003e\u003e Modules \u003e\u003e Dependencies \u003e\u003e Green plus button \u003e\u003e Libary \u003e\u003e Maven and search for whatever you want.\n\nLike Netbeans, you can run your program on a local environment. Make sure to build before running if adding additional dependencies.\n\n# The setup\n\nYou'll need Intellij and gitbash installed to work on this project.\nFor Intellij, make sure you've signed up for the student dev pack and have a registered and activated account.\nInstall gitbash https://git-scm.com/downloads here.\nAfter installing Gitbash, download the Intellij Ultimate Edition from their website and log in with your account. At the main screan, click import from VCS and type in your information and select the LocationBuddy repo.\nOne that has been imported you're all ready to work on the project. Try to get used to how Intellij works, and I recommend you go into File\u003e\u003eSettings\u003e\u003e Apperance\u003e\u003eThemes and change it to Darcula. Huge improvement. \n\n# Using DataPull.java to get your information\n\nFor this file, please read the JAVADOC generated to get a clear understanding of what the api has to offer, and what information types are returned.\nTo read the javadoc: Download DataPull.html \u003e\u003e Right click \u003e\u003e Open with \u003e\u003e Google Chrome (or any web browser)\n\nHere is a code snippet featuring how to make an object from the api, and how to use it.  \n\nSetting up the object \n```\nDataPull test = new DataPull(\"toronto\");\n```\nList of opperations you can do with your weather object  \n```\nSystem.out.println (test.getCloudyPercent() + \" \" + test.getHumidity()+ \" \" + \ntest.getMaxTemp()+ \" \" + test.getMinTemp()+ \" \" +   test.getPressure()+ \" \" + \ntest.getSeaLevel() + \" \" + test.getTemp()+ \" \" + test.getWindDegree()+ \" \" + \ntest.getWindSpeed()+ \" \" + test.getDesc()+ \" \" + test.getSunriseDate()+ \" \" + \ntest.getSunsetDate());\n```\n\nExample getting the temperature of two places and comparing it\n```\n        DataPull tor = new DataPull(\"Toronto\");\n        DataPull ny = new DataPull(\"NewYork\");\n\n        double torTemp = tor.getTemp();\n        double nyTemp = ny.getTemp();\n        String torDesc = tor.getDesc();\n        String nyDesc = ny.getDesc();\n        System.out.println (\"Toronto temp is: \"+ torTemp + \"degrees celsius  \" + torDesc);\n        System.out.println (\"New York temp is: \"+ nyTemp + \"degrees celsius  \" + nyDesc);\n\n        if (torTemp \u003e nyTemp)\n        {\n            System.out.println (\"Toronto is hotter today!\");\n        }\n        else\n            System.out.println (\"New York  is hotter today!\");\n```\n\nOutput\n```\nToronto temp is: 2.708000000000027degrees celsius  broken clouds\nNew York temp is: 7.682999999999993degrees celsius  Sky is Clear\nNew York  is hotter today!\n````\n*Note you can probably cast the temp to int to truncate the value*\n This is basically a fully functional local java api I made for ease of access. Please make good use of it! Think of cool and interesting ways to use the data provided :).\n \n \n# The final report\nThe final report should be 4-6 pages, not including appendices.  \n** Please use Times New Roman font size 12  \n   \n Here is the format and the specifications of the report, summed up.\n ```\nCover page: Cover with all of our names, section, student #, and project name (Location Buddy)  \n  \nFirst part: Appendices (DOES NOT COUNT TOWARDS PAGE COUNT) \n    \nAppendix 1: Write specifications for all the methods of any two classes\nAppendix 2: UML diagrams created using Violet UML Editor (4 kinds –Use Case Dia-gram(s), Class diagram(s), Sequence diagram(s) and, either Activity diagram(s) or State diagram(s))  \nAppendix 3: Appendix 3: Javadoc for all the classes.  \n  \nSecond part: Actual report  \n  \n-Problem Description (The actual physical problem our program helps solve)  \n-Design  \n  -Modules description and explain how these modules are decomposed\n  -Provide brief overview of each class.\n  -Describe the UML diagrams that you have provided in Appendix 1\n  -Use at least two design patterns in your project and provide rationale for using them.\n    \n-Testing\n  -Explain how you testedall your classes\n  -In the report, provide test cases (blackbox and whitebox) for testing all themethodsof only one of the eight classes\n  \n-Conclusion (What did you learn?  \n-How did we divide the work?  \n ```\n \n# Here is how we are going to split the report up.\n\n```\nCover page - NEETHAN \n\nAppendix 1 - ANTHONY\nAppendix 2 - ANTHONY\nAppendix 3 - ANTHONY  \n  \nProblem Description - ANTHONY (1/2 page)\n\nModules description and explain how these modules are decomposed (limit to 6-8 sentances)\n        - Random Compare Module - NEETHAN\n        - Get City Info Module - ANTHONY\n        - Observer Module - GEORGE\n  \nProvide brief overview of each class (Limit this to 3-4 sentances each)\n        (Alphabetical Order)\n        - CityGenerator - NEETHAN\n        - CityGeneratorFactory - NEETHAN\n        - CityInfo - ANTHONY\n        - dataGrab - GEORGE \n        - DataObs - GEORGE\n        - DataPull - ANTHONY\n        - Main - ANTHONY\n        - MainObs - GEORGE + ANTOHNY (message me when doing this part)\n        - MainMenuDirect - ANTOHNY\n        - MainRandomCompare - ANTHONY\n        - Observers - GEORGE\n        - RandomCity - NEETHAN\n        - RandomWeatherComparer - ANTHONY\n        - Updates - GEORGE\n        \nDescribe the UML diagrams that you have provided in Appendix 1 - ANTHONY\n        \nUse at least two design patterns in your project and provide rationale for using them.\n        - Observer - GEORGE (ask me when you're doing this part, since I changed some of your methods.)\n        - Factory Method - NEETHAN\n    \nExplain how you tested all your classes - ANTHONY\n\nBlackbox+Whitebox Testing - ANTHONY\n  \nConclusion (What did you learn? - ANTHONY  \n\nHow did we divide the work? - DONE\n Random city Module - Neethan\n Info on City - Anthony\n Track Toronto's Weather - George\n UI - Anthony  \n\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fatothey%2Flocationbuddy","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fatothey%2Flocationbuddy","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fatothey%2Flocationbuddy/lists"}