{"id":20751047,"url":"https://github.com/barbaraeguche/eternity","last_synced_at":"2026-02-02T18:03:05.399Z","repository":{"id":262720985,"uuid":"864586053","full_name":"barbaraeguche/eternity","owner":"barbaraeguche","description":"✖️ a simple ui calculator called eternity.","archived":false,"fork":false,"pushed_at":"2024-12-15T08:29:15.000Z","size":199,"stargazers_count":0,"open_issues_count":4,"forks_count":2,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-06-23T12:46:02.878Z","etag":null,"topics":["calculator","critical-thinking","java-swing","math-operations","problem-solving","ui"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/barbaraeguche.png","metadata":{"files":{"readme":"readme.md","changelog":null,"contributing":null,"funding":null,"license":"license","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":"2024-09-28T16:01:55.000Z","updated_at":"2024-12-15T08:29:18.000Z","dependencies_parsed_at":"2024-12-15T16:46:43.511Z","dependency_job_id":null,"html_url":"https://github.com/barbaraeguche/eternity","commit_stats":null,"previous_names":["barbaraeguche/comp354-eternity","barbaraeguche/eternity"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/barbaraeguche/eternity","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/barbaraeguche%2Feternity","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/barbaraeguche%2Feternity/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/barbaraeguche%2Feternity/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/barbaraeguche%2Feternity/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/barbaraeguche","download_url":"https://codeload.github.com/barbaraeguche/eternity/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/barbaraeguche%2Feternity/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29016665,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-02T16:17:30.374Z","status":"ssl_error","status_checked_at":"2026-02-02T15:58:50.469Z","response_time":58,"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":["calculator","critical-thinking","java-swing","math-operations","problem-solving","ui"],"created_at":"2024-11-17T08:29:51.721Z","updated_at":"2026-02-02T18:03:05.355Z","avatar_url":"https://github.com/barbaraeguche.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# eternity calculator ✖️\neternity is a scientific calculator designed to compute various transcendental functions, integrating principles of \ndesign thinking, agile methodologies, and devops. \n\n## features 👾\n- **minimalistic ui**: a clean and intuitive interface that reduces distractions, allowing users to focus on their \ncalculations effortlessly.\n- **transcendental buttons**: access advanced functions like `arccos(x)`, `sinh(x)`, `standard deviation`, and more for \ncomplex mathematical operations beyond basic arithmetic.\n- **digit buttons**: easy-to-use buttons for numbers `0 - 9`, along with `+/-` for sign changes, `.` for decimal input, \nand a `,` (comma) for calculating complex mathematical operations that require multiple inputs.\n- **operator buttons**: essential buttons for arithmetic operations `(+, -, x, /, %)` and functions like `sqrt` (square root), \n`1/x`, and a `=` to display calculated values.\n- **special buttons**: features like `c` (clear), `ce` (clear entry), and `back` (delete last input) to help manage \ncalculations efficiently.\n- **radio buttons**: options to switch between degree and radian modes for trigonometric calculations, ensuring \nflexibility in usage.\n\n## the process ✍🏽\nthe development of the calculator began with a tutorial from [javapoint](https://www.javatpoint.com/java-swing), providing \na solid foundation in java-swing. after watching several tutorials, adam started developing the calculator’s ui and \nintegrated java-swing to enhance the user experience, making it more stylish and user-friendly.\n\nduring development, he encountered bugs, including the inability to handle negative numbers and multiple inputs for \ntranscendental functions. he and matthew then implemented solutions to allow negative values and created a system for \nprocessing lists of numbers.\n\nwith these issues resolved, adam focused on a dedicated class for transcendental functions, expanding the calculator’s \ncapabilities. this iterative process has made the calculator more robust, accommodating both basic arithmetic and \ncomplex mathematical operations. \n\noverall, it has been a rewarding journey that enhanced all our programming skills. the project aimed to create \ntranscendental functions from scratch, which are mathematical concepts widely used in the math world. from the start \nuntil now, all group members have contributed in one way or another.\n\n## how to use ❓\n\u003cdetails\u003e\n  \u003csummary\u003edeviation functions\u003c/summary\u003e\n\n  - to calculate a standard deviation:\n    - enter a list of numbers, each separated by a comma `,`, using the digit buttons `0 - 9`,\n    - click `st.dev` to obtain the result.\n   \n  - to calculate a mean absolute deviation:\n    - enter a list of numbers, each separated by a comma `,`, using the digit buttons `0 - 9`,\n    - click `mad` to obtain the result.\n\u003c/details\u003e\n\n\u003cdetails\u003e\n  \u003csummary\u003epower functions\u003c/summary\u003e\n  \n  - to calculate (x^y):\n    - enter the base (x) using the digit buttons `0 - 9`,\n    - use a `,` (comma) to separate the arguments,\n    - follow with the exponent (y) using the digit buttons `0 - 9`,\n    - the display should show `x,y`, where (x) is the base raised to the power of (y),\n    - click `(x^y)` to obtain the result.\n\n  - to calculate a(b^x):\n    - enter a multiplier (a) using the digit buttons `0 - 9`,\n    - use a `,` (comma) to separate the numbers,\n    - enter a base (b) using the digit buttons `0 - 9`,\n    - use a `,` (comma) to separate the numbers,\n    - enter the exponent (x) using the digit buttons `0 - 9`,\n    - the display should show `a,b,x`, where (a) is a multiplier, and (b) is the base raised to the power of (x),\n    - click `a(b^x)` to obtain the result.\n\u003c/details\u003e\n\n\u003cdetails\u003e\n  \u003csummary\u003etrigonometric functions\u003c/summary\u003e\n\n  - to calculate arccos(x):\n    - toggle between radian or degree mode first using the radio buttons,\n    - enter the number you want to calculate using the digit buttons `0 - 9` (the number must be between -1 and 1),\n    - click `arccos(x)` for the result.\n    - ```\n      example: 0.5 -\u003e arccos(x)\n      result: 60° (if in degree mode) or 1.0472 (if in radian mode).\n      ```\n\n  - to calculate sinh(x):\n    - enter the number you want to calculate using the digit buttons `0 - 9`,\n    - click `sinh(x)` for the result.\n\u003c/details\u003e\n\n\u003cdetails\u003e\n  \u003csummary\u003elogarithm functions\u003c/summary\u003e\n\n  - to calculate the logarithm with base 10:\n    - enter the desired number using the digit buttons `0 - 9`,\n    - click `log_b(x)` to obtain the result.\n    \n  - to use euler’s number (e) as the base:\n    - input the number using the digit buttons `0 - 9`,\n    - click `ln(x)` for the result.\n    \n  - for logarithms with a base other than 10 or e:\n    - enter a number (x) using the digit buttons `0 - 9`,\n    - use a `,` (comma) to separate the arguments,\n    - follow with the base (b) using the digit buttons `0 - 9`,\n    - the display should show `x,b`, where `x` is the argument and `b` is the base,\n    - click `log_b(x)` to obtain the result.\n\u003c/details\u003e\n\n## running the project 🏁\nto get the project up and running on your local machine, follow these steps:\n\n- **ensure jdk is installed:** must have the [latest jdk](https://www.oracle.com/java/technologies/downloads/) installed.\n- **clone the repository:**\n```bash\ngit clone https://github.com/barbaraeguche/eternity.git\n```\n- **navigate to the project directory:** navigate to the latest eternity build folder (currently 1.0)\n```bash\ncd build/1.0\n```\n- **run the project:** run the latest eternity jar file (currently 1.0.1)\n```bash\njava -jar eternity1.0.1.jar\n```\n\n## gallery 📸\n\u003cdetails\u003e\n  \u003csummary\u003eshowcase\u003c/summary\u003e \u003cbr\u003e\n  \n  \u003cimg width=\"408\" alt=\"eternity\" src=\"https://github.com/user-attachments/assets/387385ac-a3cd-4764-ac59-9df285c5cf09\"\u003e\n\u003c/details\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbarbaraeguche%2Feternity","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbarbaraeguche%2Feternity","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbarbaraeguche%2Feternity/lists"}