{"id":13570855,"url":"https://github.com/danielstern/isomorphic-react","last_synced_at":"2025-04-04T20:15:51.053Z","repository":{"id":25758892,"uuid":"106274351","full_name":"danielstern/isomorphic-react","owner":"danielstern","description":"A simple but powerful React application built on a standards-compliant back-end","archived":false,"fork":false,"pushed_at":"2023-01-04T00:48:34.000Z","size":726,"stargazers_count":380,"open_issues_count":24,"forks_count":259,"subscribers_count":18,"default_branch":"master","last_synced_at":"2025-03-28T19:12:24.044Z","etag":null,"topics":["hot-module-replacement","isomorphic","react","react-router","redux","universal","webpack"],"latest_commit_sha":null,"homepage":"https://isomorphic-react-x.herokuapp.com/","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/danielstern.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}},"created_at":"2017-10-09T11:22:11.000Z","updated_at":"2024-05-22T05:17:10.000Z","dependencies_parsed_at":"2023-01-14T03:21:42.246Z","dependency_job_id":null,"html_url":"https://github.com/danielstern/isomorphic-react","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/danielstern%2Fisomorphic-react","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/danielstern%2Fisomorphic-react/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/danielstern%2Fisomorphic-react/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/danielstern%2Fisomorphic-react/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/danielstern","download_url":"https://codeload.github.com/danielstern/isomorphic-react/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247242681,"owners_count":20907134,"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":["hot-module-replacement","isomorphic","react","react-router","redux","universal","webpack"],"created_at":"2024-08-01T14:00:55.750Z","updated_at":"2025-04-04T20:15:51.032Z","avatar_url":"https://github.com/danielstern.png","language":"JavaScript","funding_links":[],"categories":["JavaScript"],"sub_categories":[],"readme":"# Isomorphic React\n\n# Updated 2021 Version\n- As of February 2021, the Jest Branch is now merged into the main branch of this project\n\n## A Starter Isomorphic React Application with All Best Practices and No Frills\n![image](https://user-images.githubusercontent.com/4268152/31387801-c091f5c8-ad99-11e7-9cb6-42fcde98fc88.png)\n### About The Application\nThis application is a basic API client which gathers data from an outside API (in this case, Stackoverflow) and generates an isomorphic, single-page application (SPA).\n\n### Why Isomorphic React?\nGreat question!\n- Uses React / Redux as main application engine\n- Supports hot reloading and server rendering!\n- Uses React Router (in a combination with server rendering that is truly amazing)\n- No fluff, just the good stuff\n\n### Getting Started\n1) Clone the repository\n2) install dependencies\n`npm install \u0026\u0026 npm run postinstall`\n3) Run the dev server\n`npm run start-dev`\n4) Navigate to the application's url\n`http://localhost:3000/`\n\n### Usage\n#### Enabling / Disabling Server Rendering\nServer rendering is great, but sometimes we want to disable it when there's an error in our render and we'd rather troubleshoot it in the client.\nThis setting is passed in as a CLI argument via the `--useServerRender=true` argument.\nYou can modify this in `package.json` to `--useServerRender=false` which will disable any server-side rendering functionality.\n\n#### Enabling / Disabling Live Data\nThis application is designed to grab the latest data from `Stackoverflow.com`. However, their API has a strict request limit which means that no questions will be returned after X requests (usually 300).\nTherefore, the application comes loaded with mock-questions in the data directory.\nTo ease the learning process by eliminating potential sources of error, live data is disabled by default.\nHowever, you are strongly encouraged to use live data once you understand the associated pitfalls.\n* Note: You can increase your allotted requests to a much larger number by registering an application here,\n`https://stackapps.com/apps/oauth/register` and then appending the key to the URLs in `data/api-real-url.js`\n\n### Production Build\nThis application fully supports a production build setting, which disables live reloading in favor of precompiled and uglified JS, which boosts performance.\nTo run production, run the command `npm run start-prod`, which automatically triggers the `build` script.\nThis mode is recommended for production. However, this boilerplate has never been used in actual production so utilize caution if deploying as a real application.\n\n### Troubleshooting\n#### `unexpected token import`\nThis error appears when babel is not configured correctly. This can actually be caused by outdated global dependencies, and is hard to fix. For best results, try the following -\n- Install `babel-register` as a local saved dependency\n- Update global versions of `babel`, `webpack` and all dependencies to latest / course versions\n\n#### Any Error That is Taking a Long Time to Troubleshoot\nThings can always go wrong in the world of programming. If this happens, clone the master branch of this repo to a new directory and run the installation instructions. If desired, you can work backwards, pruning extra files until you get the application in the state you want.\n\n#### Problems with the Repo\nI want this repo to work perfectly for as many users as possible. Got a problem? \u003ca href=https://github.com/danielstern/isomorphic-react/issues/new\u003eOpen an issue!\u003c/a\u003e Let's figure out a solution together.\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdanielstern%2Fisomorphic-react","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdanielstern%2Fisomorphic-react","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdanielstern%2Fisomorphic-react/lists"}