{"id":21032212,"url":"https://github.com/rami-sabbagh/satellite-simulator","last_synced_at":"2025-05-15T13:30:59.236Z","repository":{"id":37754173,"uuid":"506189952","full_name":"Rami-Sabbagh/satellite-simulator","owner":"Rami-Sabbagh","description":"A 3rd year University physics project for simulating satellites motion in orbit.","archived":false,"fork":false,"pushed_at":"2022-06-26T09:22:06.000Z","size":14764,"stargazers_count":9,"open_issues_count":4,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2023-08-10T12:30:34.685Z","etag":null,"topics":["lil-gui","physics","three-js","typescript","webpack"],"latest_commit_sha":null,"homepage":"https://rami-sabbagh.github.io/satellite-simulator/","language":"TypeScript","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/Rami-Sabbagh.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"contributing.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2022-06-22T09:57:16.000Z","updated_at":"2023-08-10T12:30:34.686Z","dependencies_parsed_at":"2022-09-02T03:22:11.059Z","dependency_job_id":null,"html_url":"https://github.com/Rami-Sabbagh/satellite-simulator","commit_stats":null,"previous_names":[],"tags_count":2,"template":null,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Rami-Sabbagh%2Fsatellite-simulator","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Rami-Sabbagh%2Fsatellite-simulator/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Rami-Sabbagh%2Fsatellite-simulator/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Rami-Sabbagh%2Fsatellite-simulator/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Rami-Sabbagh","download_url":"https://codeload.github.com/Rami-Sabbagh/satellite-simulator/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":225350703,"owners_count":17460658,"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":["lil-gui","physics","three-js","typescript","webpack"],"created_at":"2024-11-19T12:41:36.393Z","updated_at":"2024-11-19T12:41:37.019Z","avatar_url":"https://github.com/Rami-Sabbagh.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Satellite Simulator VI - Deluxe Edition\n\n![Satellite Simulator's Logo](./src/assets/logos/logo-white.jpg \"Satellite Simulator's Logo\")\n\n[![CodeFactor](https://www.codefactor.io/repository/github/rami-sabbagh/satellite-simulator/badge)](https://www.codefactor.io/repository/github/rami-sabbagh/satellite-simulator)\n\nA university physics project for simulating satellites in orbit.\n\n## Installation instructions\n\n1. Clone the git repository locally or download the source-code and extract it.\n2. Install [Node.js](https://nodejs.org/) 16.x on your system.\n3. Enable Yarn through `corepack`, which ships with Node 16.x.\n\n```sh\n# Use an elevated shell (Administrator shell on Windows, sudo on Unix).\ncorepack enable\n```\n\n4. Open a terminal in the root of the repository and install the project's dependencies.\n\n```sh\nyarn\n```\n\n5. Start the development server.\n\n```sh\nyarn start\n```\n\n6. A browser page should automatically open with the project running in it.\n\n## Tech stack\n\n-   Three.js\n-   TypeScript\n-   Husky and ESLint\n-   Webpack\n\n## Development Server\n\nIt's a webserver provided by [webpack](http://webpack.js.org/) that serves the project while being built in realtime and stored in memory.\n\nYou can read more about it [here](https://webpack.js.org/configuration/dev-server/), [here](https://webpack.js.org/guides/development/#using-webpack-dev-server) and [here](https://github.com/webpack/webpack-dev-server).\n\nRuns by default on port 9000 and so can be accessed at http://localhost:9000/ (should automatically open when starting the dev server).\n\n### Live Reload\n\nWhen using the development server you'll have the benefit of automatic live reload whenever changes are made.\n\n### Hot Module Reload\n\nThe HMR support is enabled in the project, but the code has to support it.\n\nWhich means writing code that accepts the module replacements and does any adjustments needed.\n\nThat is implemented for `src/app.ts` in `src/index.ts`.\n\nSo when `app.ts` is modified it's hot reloaded without reloading the whole page, by replacing the old scene instance by a new one.\n\nBut when files such as `src/physics/kepler-math.ts` are modified with no HMR support, a whole page reload is automatically performed.\n\nDuring the project development you might wish to implement HMR support for other sub-modules, for example to avoid losing the state of created scene objects.\n\nYou can read more at [webpack's documentation page](https://webpack.js.org/concepts/hot-module-replacement/).\n\n## Build Instructions\n\nAfter following the installation instructions run:\n\n```sh\nyarn build\n```\n\nThe build can be then accessed at `/dist` and could be served as static page content.\n\n## Credits\n\nIcons are from: https://www.svgrepo.com/\n\n[Satellite](https://sketchfab.com/3d-models/satellite-90c8fafa35c84e3b90601dd3ac8d202f) 3D model, under [Creative Commons Attribution](https://creativecommons.org/licenses/by/4.0/), was modified by [RedDeadAlice](https://github.com/RedDeadAlice).\n\n## Developed by\n\n- [Rami Sabbagh](https://rami-sabbagh.github.io/) ([rami.sab07@gmail.com](mailto:rami.sab07@gmail.com)).\n- Hasan Mothaffar ([hasan.mozafar@gmail.com](mailto:hasan.mozafar@gmail.com)).\n- Yaman Qassas ([yaman102011@gmail.com](mailto:yaman102011@gmail.com)).\n- Edward Karra ([edwardkarra@gmail.com](mailto:edwardkarra@gmail.com)).\n- [RedDeadAlice](https://github.com/RedDeadAlice).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frami-sabbagh%2Fsatellite-simulator","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frami-sabbagh%2Fsatellite-simulator","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frami-sabbagh%2Fsatellite-simulator/lists"}