{"id":46732676,"url":"https://github.com/wastingnotime/contacts-frontend-react-hooks-redux","last_synced_at":"2026-03-09T15:37:11.073Z","repository":{"id":138166074,"uuid":"275681935","full_name":"wastingnotime/contacts-frontend-react-hooks-redux","owner":"wastingnotime","description":"This repository maintain a react/redux frontend application that is part of \"contacts\" project, an initiative to explore technologies features.","archived":false,"fork":false,"pushed_at":"2026-02-12T12:08:08.000Z","size":577,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-02-12T20:56:37.577Z","etag":null,"topics":["react","react-hooks","react-router-dom","react-thunk","redux"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","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/wastingnotime.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":"2020-06-28T22:52:30.000Z","updated_at":"2026-02-12T12:08:11.000Z","dependencies_parsed_at":null,"dependency_job_id":"ff13e30d-5940-4846-b94f-001d4b00b53a","html_url":"https://github.com/wastingnotime/contacts-frontend-react-hooks-redux","commit_stats":null,"previous_names":["wastingnotime/contacts-frontend-react-hooks-redux"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/wastingnotime/contacts-frontend-react-hooks-redux","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wastingnotime%2Fcontacts-frontend-react-hooks-redux","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wastingnotime%2Fcontacts-frontend-react-hooks-redux/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wastingnotime%2Fcontacts-frontend-react-hooks-redux/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wastingnotime%2Fcontacts-frontend-react-hooks-redux/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/wastingnotime","download_url":"https://codeload.github.com/wastingnotime/contacts-frontend-react-hooks-redux/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wastingnotime%2Fcontacts-frontend-react-hooks-redux/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30301117,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-09T14:33:48.460Z","status":"ssl_error","status_checked_at":"2026-03-09T14:33:48.027Z","response_time":61,"last_error":"SSL_read: 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":["react","react-hooks","react-router-dom","react-thunk","redux"],"created_at":"2026-03-09T15:37:10.577Z","updated_at":"2026-03-09T15:37:11.057Z","avatar_url":"https://github.com/wastingnotime.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# contacts-frontend-react-hooks-redux\n\n\n**contacts-frontend-react-hooks-redux** is part of \"contacts\" project that is an initiative where we try to explore frontend and backend implementations in order to better understand it cutting-edge features. This repository presents a react based frontend application.\n\n## status\n\nThis repository belongs to the Contacts reference initiative started in 2020.\n\nIts purpose was to understand how different stacks shape design decisions around the same domain model.\n\nAs of 2026, this project is frozen.\n\nThe exploration phase has been completed.  \nMy current focus is depth, invariants, and system coherence rather than stack comparison.\n\nThis code remains as historical reference.\n\n\n\n## stack\n* react\n* react-hooks\n* redux\n* vite\n\n## dependencies\n* docker 25+\n* nvm 0.39+\n\n## get started (linux only)\n\n### execute from source code\n\nas a prerequisite, it is necessary to start the backend application\n\nopen another terminal and run the backend for this project\n```\ndocker run -p 8010:8010 wastingnotime/contacts-backend-nodejs-express:latest \n```\n\nset node version (v21+)\n```\nnvm use\n```\n\ninstall deps\n```\nnpm i\n```\n\nstart app\n```\nnpm run dev\n```\n\n* just go to your browser on http://localhost:5173\n\n## validating docker image locally\n\nbuild\n```\ndocker build --tag contacts-frontend-react-hooks-redux .\n```\n\nrun\n```\ndocker run -p 80:80 contacts-frontend-react-hooks-redux\n```\n* the test above do not work fully, it is just to show if the nginx server as responding accordly\n\n## some tips\n\n### upgrade node packages\n\nverify outdated packages\n```\nnpm outdated\n```\ninstall new version of outdated package\n```\nnpm install \u003cpackage\u003e@latest\n```\nif npm is older use\n```\nnvm install-latest-npm\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwastingnotime%2Fcontacts-frontend-react-hooks-redux","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwastingnotime%2Fcontacts-frontend-react-hooks-redux","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwastingnotime%2Fcontacts-frontend-react-hooks-redux/lists"}