{"id":16345413,"url":"https://github.com/unclechu/typescript-redux-and-data-request-flow-proper-typing-experiment","last_synced_at":"2025-11-07T14:30:30.916Z","repository":{"id":66007013,"uuid":"246720812","full_name":"unclechu/typescript-redux-and-data-request-flow-proper-typing-experiment","owner":"unclechu","description":null,"archived":false,"fork":false,"pushed_at":"2020-03-18T02:58:51.000Z","size":16,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":3,"default_branch":"master","last_synced_at":"2024-12-27T22:21:20.029Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"TypeScript","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/unclechu.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":"2020-03-12T01:58:19.000Z","updated_at":"2020-12-02T20:11:32.000Z","dependencies_parsed_at":"2023-04-30T11:48:12.779Z","dependency_job_id":null,"html_url":"https://github.com/unclechu/typescript-redux-and-data-request-flow-proper-typing-experiment","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/unclechu%2Ftypescript-redux-and-data-request-flow-proper-typing-experiment","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/unclechu%2Ftypescript-redux-and-data-request-flow-proper-typing-experiment/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/unclechu%2Ftypescript-redux-and-data-request-flow-proper-typing-experiment/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/unclechu%2Ftypescript-redux-and-data-request-flow-proper-typing-experiment/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/unclechu","download_url":"https://codeload.github.com/unclechu/typescript-redux-and-data-request-flow-proper-typing-experiment/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":239533066,"owners_count":19654617,"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-10-11T00:31:39.265Z","updated_at":"2025-11-07T14:30:30.876Z","avatar_url":"https://github.com/unclechu.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Proof of Concept\n\nIt's a prototype of TypeScript \u0026 Redux project\nthat brings 2 main things to the table:\n\n1. [x] Proper discriminated typing for different state of\n   data requesting (like ADT type in Haskell, no need to\n   provide any dummy value plugs for all the fields of data\n   model as well as you don't need to make all of the fields\n   being nullable/optional which wouldn't be a correct data\n   model)\n\n2. [ ] Validating data by Swagger model in runtime when\n   receiving that data from a server which solves the issue\n   when types are correct but JavaScript don't parse but\n   just eats whatever JSON a server gives to it, and while\n   your whole project is being well-typed you get that awful\n   \"undefined bla-bla something\" exception with no clue of\n   what went wrong\n\n## Requirements\n\n1. [nix](https://nixos.org/nix/) package manager\n\n## Run\n\n```sh\n(cd nominatim-api \u0026\u0026 ./generate-swagger-schema.hs \u003e schema.json)\nnix-shell -p nodejs-12_x --run 'npm i \u0026\u0026 npm run build-from-schema \u0026\u0026 npm start'\n```\n\n### Run shell with work environment\n\nWith `tsc`, `tslint`, etc.\n\n```sh\nnix-shell -p nodejs-12_x --run 'npm i \u0026\u0026 PATH=\"${PWD}/node_modules/.bin:${PATH}\" bash'\n```\n\n# Author\n\nViacheslav Lotsmanov\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Funclechu%2Ftypescript-redux-and-data-request-flow-proper-typing-experiment","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Funclechu%2Ftypescript-redux-and-data-request-flow-proper-typing-experiment","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Funclechu%2Ftypescript-redux-and-data-request-flow-proper-typing-experiment/lists"}