{"id":41879510,"url":"https://github.com/ztry8/planetfinder","last_synced_at":"2026-01-25T13:00:55.874Z","repository":{"id":334365517,"uuid":"1141107894","full_name":"Ztry8/PlanetFinder","owner":"Ztry8","description":"A neural network that detects exoplanets from stellar light curves.","archived":false,"fork":false,"pushed_at":"2026-01-24T10:19:05.000Z","size":21,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-01-24T19:53:55.016Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Rust","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Ztry8.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,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-01-24T09:03:12.000Z","updated_at":"2026-01-24T10:19:09.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/Ztry8/PlanetFinder","commit_stats":null,"previous_names":["ztry8/planetfinder"],"tags_count":null,"template":false,"template_full_name":null,"purl":"pkg:github/Ztry8/PlanetFinder","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ztry8%2FPlanetFinder","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ztry8%2FPlanetFinder/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ztry8%2FPlanetFinder/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ztry8%2FPlanetFinder/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Ztry8","download_url":"https://codeload.github.com/Ztry8/PlanetFinder/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ztry8%2FPlanetFinder/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28753411,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-25T10:25:12.305Z","status":"ssl_error","status_checked_at":"2026-01-25T10:25:11.933Z","response_time":113,"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":[],"created_at":"2026-01-25T13:00:55.151Z","updated_at":"2026-01-25T13:00:55.860Z","avatar_url":"https://github.com/Ztry8.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Planet Finder\n[![GitHub last commit](https://img.shields.io/github/last-commit/ztry8/planetfinder)](https://github.com/ztry8/planetfinder)\n[![License](https://img.shields.io/github/license/ztry8/planetfinder)](https://github.com/ztry8/planetfinder/blob/main/LICENSE)\n\n## Predict the number of exoplanets from lightcurve data using Rust and LSTM\n\n### About\nThis project is a **lightweight Rust program** that uses an LSTM neural network to predict the number of exoplanets around stars based on **lightcurve observations**. \n\nThe program supports **training** from `.txt` datasets and **interactive prediction** from user input.\n\n### Why It May Be Useful\n\n#### Astronomy Perspective\n- **Exoplanet Detection**: Helps astronomers estimate the number of exoplanets around stars using lightcurve data.  \n- **Data Analysis Efficiency**: Automates analysis of large datasets, saving significant time compared to manual methods.  \n- **Exploration and Research**: Enables testing hypotheses about star systems and transit patterns quickly.  \n\n#### Programming / IT Perspective\n- **Machine Learning Practice**: Provides a hands-on example of LSTM neural networks for time-series prediction.  \n- **Customizable and Extensible**: Users can train the model on their own datasets or adjust parameters for experimentation.  \n- **Cross-Platform \u0026 GPU Support**: Runs on Linux, Windows, and macOS, with optional CUDA acceleration for faster training.  \n- **Interactive Usage**: Allows real-time input of data and instant predictions, making it suitable for demos and prototyping.\n\n### Features\n- LSTM-based sequence model for time-series data\n- Handles variable-length lightcurves automatically\n- Interactive prediction mode\n- Normalization of flux and time for stable training\n- Optional GPU acceleration via CUDA\n- Progress logging every 2.5% of epochs\n- Saves the best model automatically\n\n### Data Format\nFiles must be named like `learn1.txt`, `learn2.txt`, etc.  \nEach file contains:\n\n```\n0.998 131.2\n1.002 132.1\n...\nresult 2\n```\n\nWhere each line is `flux time` and the last line indicates the number of planets with `result N`.\n\n### Downloading NASA Data\n\nThe project uses datasets of exoplanet observations provided by NASA.    \nYou can download the necessary .txt files using the included Python script `download_data.py`.    \nYou can also download ready-made files from [this page](https://github.com/Ztry8/PlanetFinder/releases/tag/v1.0.1).\n\n#### Installing dependencies\n\nMake sure you have Python 3 installed. Then install required packages:\n\n```\npip3 install lightkurve astropy numpy\n```\n\n#### Usage\n\n```\npython3 download_data.py\n```\n\nThe script will automatically download the latest datasets into your working folder.    \nEach file will be named in the format `learn_\u003cnumber\u003e.txt.`\n\n### Installation\n\n#### Requirements\n- Rust 1.70+  \n- Optional: CUDA GPU for faster training  \n\n#### Build\n```bash\ngit clone https://github.com/Ztry8/PlanetFinder.git\ncd PlanetFinder\ncargo build --release\n```\n\nThe program is cross-platform and runs on Linux, Windows, and macOS.\n\n### Usage\n\n#### Training\nYou can also download ready-made model from [this page](https://github.com/Ztry8/PlanetFinder/releases/tag/v1.0.1).\n\nRun the program:\n```bash\ncargo run --release\n```\n\n- Enter `1` to start training.  \n- The program will scan for `learn*.txt` files.  \n- Training progress is displayed every 2.5% of total epochs:\n```\nCompleted   50 epochs (2.5 % done) - current error: 1.2885\n```\n- The best model is saved automatically as `model.ot`.\n\n#### Prediction\nRun the program:\n```bash\ncargo run --release\n```\n\n- Enter `2` to predict.  \n- Input `flux time` pairs line by line.  \n- Type `end` to finish input.  \n- The program outputs the predicted number of planets:\n```\nPredicted number of planets: 3\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fztry8%2Fplanetfinder","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fztry8%2Fplanetfinder","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fztry8%2Fplanetfinder/lists"}