{"id":25228142,"url":"https://github.com/jjacoboflorez95/test-scores-processor","last_synced_at":"2025-09-10T16:45:07.675Z","repository":{"id":276526294,"uuid":"919461589","full_name":"jjacoboflorez95/test-scores-processor","owner":"jjacoboflorez95","description":"A Node.js CLI application for processing test scores, calculating averages, and validating input.","archived":false,"fork":false,"pushed_at":"2025-02-17T22:20:58.000Z","size":4,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-17T23:25:29.774Z","etag":null,"topics":["array-operations","cli-application","college-project","javascript","node-js"],"latest_commit_sha":null,"homepage":"","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/jjacoboflorez95.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,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2025-01-20T12:38:37.000Z","updated_at":"2025-02-17T22:21:01.000Z","dependencies_parsed_at":"2025-02-08T20:35:09.770Z","dependency_job_id":null,"html_url":"https://github.com/jjacoboflorez95/test-scores-processor","commit_stats":null,"previous_names":["jjacoboflorez95/test-scores-processor"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jjacoboflorez95%2Ftest-scores-processor","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jjacoboflorez95%2Ftest-scores-processor/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jjacoboflorez95%2Ftest-scores-processor/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jjacoboflorez95%2Ftest-scores-processor/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jjacoboflorez95","download_url":"https://codeload.github.com/jjacoboflorez95/test-scores-processor/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247345337,"owners_count":20924097,"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":["array-operations","cli-application","college-project","javascript","node-js"],"created_at":"2025-02-11T09:51:32.216Z","updated_at":"2025-04-05T13:40:52.331Z","avatar_url":"https://github.com/jjacoboflorez95.png","language":"JavaScript","readme":"# 🏆 Test Scores Processor\n\n## 📌 Project Overview\n\n**Test Scores Processor** is a **Node.js application** designed to process **test scores** entered via command-line arguments. The script **calculates the average score** and displays all provided scores in a formatted manner. This lightweight application is ideal for **quick score analysis** without needing external dependencies.\n\nDeveloped as part of a **professional portfolio**, this project highlights **command-line processing, input validation, and JavaScript array operations**.\n\n---\n\n## 🚀 Features\n\n- 📊 **Processes test scores** entered as command-line arguments.\n- 🔢 **Calculates the average score** based on user input.\n- 🖥️ **Command-line execution**, making it lightweight and efficient.\n- ⚠ **Error handling** to validate input and prevent invalid operations.\n\n---\n\n## 🛠 Technologies Used\n\n- **Node.js** → JavaScript runtime environment.\n- **JavaScript (ES6+)** → Implements functions using modern JS syntax.\n\n---\n\n## 🎯 Project Purpose\n\nThis project demonstrates:\n\n- ✅ **Processing command-line arguments in Node.js**.\n- ✅ **Performing calculations and array operations in JavaScript**.\n- ✅ **Validating user input and handling errors effectively**.\n- ✅ **Building lightweight CLI tools** for automation and data processing.\n\n---\n\n## 📂 Project Structure\n\n```\n📁 test_scores\n ├── 📄 index.js  # Main Node.js script\n```\n\n---\n\n## 📌 Prerequisites\n\nBefore running the script, ensure **Node.js** is installed. Verify with:\n\n```sh\nnode -v\n```\n\n---\n\n## 🏃‍♂️ How to Use\n\n1️⃣ **Open a terminal** and navigate to the project folder:\n\n```sh\ncd test_scores\n```\n\n2️⃣ **Run the script** by providing test scores as arguments:\n\n```sh\nnode index.js 89 100 92 93\n```\n\n---\n\n## 📝 Example Output\n\nIf executed with:\n\n```sh\nnode index.js 89 100 92 93\n```\n\nThe console output will be:\n\n```sh\nAll scores: 89, 100, 92, 93\nAverage score: 93.5\n```\n\n---\n\n## ⚠️ Error Handling\n\n- If **no scores** are provided, the script will display:\n\n```sh\nError:\nPlease enter at least one score.\n```\n\n- If a **non-numeric value** is entered, the script will display:\n\n```sh\nError:\nAll scores must be numbers.\nInvalid score detected: \u003cinvalid_value\u003e\n```\n\n---\n\n## 🌟 Future Improvements\n\n- 📊 **Median and Mode Calculation** – Extend functionality to calculate more statistics.\n- 📂 **Export Results** – Save results to a file instead of just displaying them.\n- 📤 **Integration with Databases** – Store and retrieve test scores from a database.\n- 📈 **Graphical Output** – Display scores in a visual format using a graphing library.\n\n---\n\n## 📜 License\n\nThis project is licensed under the **MIT** License.\n\n---\n\n## 💼 Author\n\n👤 **Juan Jacobo Florez Monroy**  \n🌐 **Portfolio**: [jjacobo95.com](https://jjacobo95.com)  \n🐙 **GitHub**: [github.com/jjacoboflorez95](https://github.com/jjacoboflorez95)","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjjacoboflorez95%2Ftest-scores-processor","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjjacoboflorez95%2Ftest-scores-processor","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjjacoboflorez95%2Ftest-scores-processor/lists"}