{"id":20667601,"url":"https://github.com/neckerfree/reactbestpractices","last_synced_at":"2026-04-20T12:09:32.286Z","repository":{"id":155609259,"uuid":"632278100","full_name":"NeckerFree/ReactBestPractices","owner":"NeckerFree","description":"React project to implement a new app using best practices,","archived":false,"fork":false,"pushed_at":"2023-06-07T00:40:15.000Z","size":2618,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-13T10:36:29.209Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"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/NeckerFree.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":"2023-04-25T04:47:46.000Z","updated_at":"2023-05-17T03:49:18.000Z","dependencies_parsed_at":null,"dependency_job_id":"3de2b76a-412a-4618-8740-db478e72caa8","html_url":"https://github.com/NeckerFree/ReactBestPractices","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":"microverseinc/readme-template","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NeckerFree%2FReactBestPractices","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NeckerFree%2FReactBestPractices/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NeckerFree%2FReactBestPractices/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NeckerFree%2FReactBestPractices/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/NeckerFree","download_url":"https://codeload.github.com/NeckerFree/ReactBestPractices/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":242873067,"owners_count":20199287,"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":[],"created_at":"2024-11-16T19:44:25.234Z","updated_at":"2026-04-20T12:09:27.266Z","avatar_url":"https://github.com/NeckerFree.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003ca name=\"readme-top\"\u003e\u003c/a\u003e\n\n\u003cdiv align=\"center\"\u003e\n  \u003c!-- You are encouraged to replace this logo with your own! Otherwise you can also remove it. --\u003e\n  \u003cimg src=\"murple_logo.png\" alt=\"logo\" width=\"140\"  height=\"auto\" /\u003e\n  \u003cbr/\u003e\n\n\u003c/div\u003e\n\n\u003c!-- TABLE OF CONTENTS --\u003e\n\n# 📗 Table of Contents\n\n- [📖 About the Project](#about-project)\n  - [🛠 Built With](#built-with)\n    - [Tech Stack](#tech-stack)\n    - [Key Features](#key-features)\n  - [🚀 Live Demo](#live-demo)\n- [💻 Getting Started](#getting-started)\n  - [Setup](#setup)\n  - [Prerequisites](#prerequisites)\n  - [Install](#install)\n  - [Usage](#usage)\n  - [Run tests](#run-tests)\n  - [Deployment](#deployment)\n- [👥 Authors](#authors)\n- [🔭 Future Features](#future-features)\n\u003c!-- - [🤝 Contributing](#contributing) --\u003e\n- [⭐️ Show your support](#support)\n- [🙏 Acknowledgements](#acknowledgements)\n\u003c!-- - [❓ FAQ (OPTIONAL)](#faq) --\u003e\n- [📝 License](#license)\n\n\u003c!-- PROJECT DESCRIPTION --\u003e\n\n# 📖 React Best Practices \u003ca name=\"about-project\"\u003e\u003c/a\u003e\n\n**React Best Practices** is a React App that pretends to explore the transversal and non-functional requirements that should include a good application.\n\n## 🛠 Built With \u003ca name=\"built-with\"\u003e\u003c/a\u003e\n\n### Tech Stack \u003ca name=\"tech-stack\"\u003e\u003c/a\u003e\n\n\u003cdetails\u003e\n  \u003csummary\u003eClient\u003c/summary\u003e\n  \u003cul\u003e\n    \u003cli\u003e\u003ca href=\"https://reactjs.org/\"\u003eReact.js\u003c/a\u003e\u003c/li\u003e\n  \u003c/ul\u003e\n\u003c/details\u003e\n\n\u003c!-- \u003cdetails\u003e\n  \u003csummary\u003eServer\u003c/summary\u003e\n  \u003cul\u003e\n    \u003cli\u003e\u003ca href=\"[https://expressjs.com/](https://learn.microsoft.com/en-us/aspnet/core/fundamentals/minimal-apis?view=aspnetcore-7.0)\"\u003e.NET Minimal API\u003c/a\u003e\u003c/li\u003e\n  \u003c/ul\u003e\n\u003c/details\u003e --\u003e\n\n\u003c!-- \u003cdetails\u003e\n\u003csummary\u003eDatabase\u003c/summary\u003e\n  \u003cul\u003e\n    \u003cli\u003e\u003ca href=\"https://www.mongodb.com/\"\u003eMongoDB\u003c/a\u003e\u003c/li\u003e\n  \u003c/ul\u003e\n\u003c/details\u003e --\u003e\n\n\u003c!-- Features --\u003e\n\n### Key Features \u003ca name=\"key-features\"\u003e\u003c/a\u003e\n\n- **Error Handling**\n\n  Define a helpful way to capture more common errors in a React app.\n\u003c!-- - **[Logging]**\n- **[key_feature_3]** --\u003e\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n\u003c!-- LIVE DEMO --\u003e\n\n## 🚀 Live Demo \u003ca name=\"live-demo\"\u003e\u003c/a\u003e\n\n- [Live Demo Link](https://google.com)\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n\u003c!-- GETTING STARTED --\u003e\n## 💻 Getting Started \u003ca name=\"getting-started\"\u003e\u003c/a\u003e\n\nTo get a local copy up and running follow these simple example steps.\n\n### Setup\n- Click the green `Code` button on the repo\n- In your local PC, open your terminal in the folder you would like to clone the project.\n- Clone the repo with the command: `git clone (copied link)`; like so: `git clone https://github.com/NeckerFree/ReactBestPractices`\n- On the terminal, navigate into the directory like so: `cd ReactBestPractices`\n\n### Install\nin visual studio code\n-  run the command `npm install` to install all the necessary dependencies\n-  run the command `npm start` to start the app.\n\n## Authors\n\n👤 **Elio Cortés**\n\n- GitHub: [@NeckerFree](https://github.com/NeckerFree)\n- Twitter: [@ElioCortesM](https://twitter.com/ElioCortesM)\n- LinkedIn: [elionelsoncortes](https://www.linkedin.com/in/elionelsoncortes/)\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n\u003c!-- FUTURE FEATURES --\u003e\n\n## 🔭 Future Features \u003ca name=\"future-features\"\u003e\u003c/a\u003e\n\n\u003e Describe 1 - 3 features you will add to the project.\n\n- **Logging:** Define a suitable way to register error logs \n- **Authentication:** Define one practical method to authenticate users \n- **Authorization:** Create one example to allow or deny access to menu options. \n- **SPA:** Implement a helful method to implement navigation in a single page application. \n- **Page Theme:** Create a practical example to change the page theme at run time. \n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n\u003c!-- CONTRIBUTING --\u003e\n\n\u003c!-- ## 🤝 Contributing \u003ca name=\"contributing\"\u003e\u003c/a\u003e\n\nContributions, issues, and feature requests are welcome!\n\nFeel free to check the [issues page](../../issues/).\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e --\u003e\n\n\u003c!-- SUPPORT --\u003e\n\n## ⭐️ Show your support \u003ca name=\"support\"\u003e\u003c/a\u003e\n\nIf you liked this project please give me a star in this project.\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n\u003c!-- ACKNOWLEDGEMENTS --\u003e\n\n## 🙏 Acknowledgments \u003ca name=\"acknowledgements\"\u003e\u003c/a\u003e\nIf you want to expand on a topic, select the corresponding article that served as the basis.\n\n**Error Handling:** \n\n[How to Handle Errors in React](https://blog.appsignal.com/2022/06/15/how-to-handle-errors-in-react.html)\n\n[Error Handling Layer in action](https://semaphoreci.com/blog/error-handling-layer-react)\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n\u003c!-- FAQ (optional) --\u003e\n\n\u003c!-- ## ❓ FAQ (OPTIONAL) \u003ca name=\"faq\"\u003e\u003c/a\u003e\n\n\u003e Add at least 2 questions new developers would ask when they decide to use your project.\n\n- **[Question_1]**\n\n  - [Answer_1]\n\n- **[Question_2]**\n\n  - [Answer_2]\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e --\u003e\n\n\u003c!-- LICENSE --\u003e\n\n## 📝 License \u003ca name=\"license\"\u003e\u003c/a\u003e\n\nThis project is [MIT](./LICENSE) licensed.\n\n_NOTE: we recommend using the [MIT license](https://choosealicense.com/licenses/mit/) - you can set it up quickly by [using templates available on GitHub](https://docs.github.com/en/communities/setting-up-your-project-for-healthy-contributions/adding-a-license-to-a-repository). You can also use [any other license](https://choosealicense.com/licenses/) if you wish._\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n\n\n\u003c!-- https://betterprogramming.pub/handling-async-errors-with-axios-in-react-1e25c058a8c9\nhttps://betterprogramming.pub/how-to-handle-api-errors-in-your-web-app-using-axios-b32b6c41fd35\nhttps://blog.appsignal.com/2022/06/15/how-to-handle-errors-in-react.html\nhttps://blog.bitsrc.io/react-error-handling-and-logging-best-practices-4444c57cd666\nhttps://blog.logrocket.com/react-error-handling-react-error-boundary/\nhttps://codedamn.com/news/reactjs/try-catch-error-boundaries\nhttps://dev.to/franklin030601/managing-state-with-react-query-1842\nhttps://engineering.udacity.com/handling-errors-like-a-pro-in-typescript-d7a314ad4991\nhttps://majidlotfinia.medium.com/react-query-best-practices-separating-concerns-with-custom-hooks-3f1bc9051fa2\nhttps://medium.com/@danhuang1202/catch-error-from-event-handler-in-react-error-boundary-f36ec58786af\nhttps://semaphoreci.com/blog/error-handling-layer-react\n**** https://tanstack.com/query/v4/docs/react/community/tkdodos-blog\n\nhttps://upmostly.com/tutorials/a-guide-to-effective-error-handling-in-react\nhttps://www.developerway.com/posts/how-to-handle-errors-in-react\nhttps://www.g2i.co/blog/understanding-the-objects-are-not-valid-as-a-react-child-error-in-react\nhttps://www.loggly.com/blog/best-practices-for-client-side-logging-and-error-handling-in-react/\nhttps://www.npmjs.com/package/react-error-boundary\nhttps://www.npmjs.com/package/typescript-logging \nhttps://www.smashingmagazine.com/2020/06/react-error-handling-reporting-error-boundary-sentry/ --\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fneckerfree%2Freactbestpractices","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fneckerfree%2Freactbestpractices","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fneckerfree%2Freactbestpractices/lists"}