Ahh, you can't have new ideas anymore!
Basically puts together every backend with Front-end web framework to create the exact same website.
The reference live demo can be found at: https://demo.realworld.io/#/ It is based on Angular.js as it links to: https://github.com/gothinkster/angularjs-realworld-example-app TODO backend?
There are however also live demos of other frontends, e.g.:
Note that all those frontends communicate with the same backend.
- React: https://react-redux.realworld.io. But note that tag addition at post creation is broken there as of March 2021, but not on master: https://github.com/gothinkster/react-redux-realworld-example-app/issues/151#issuecomment-808417846 so they forgot to update the live server.
- Vue.js: https://vue-vuex-realworld.netlify.app
As of 2021 Devs are seemed a bit too focused on monetizing the project through their "how to use this project" premium tutorial, and documentation could be better: just getting the hello world of the most popular backend with the most popular frontend is not easy... come on.
https://github.com/gothinkster/realworld/issues/578 asks for community support, as devs have moved on since unfortunately.
- by default, the frontends hardcode the upstream public data API:
https://conduit.productionready.io/apiso you have to hack their code to match the port of the backend. And each backend can have a different port.
- when you switch between backends, you must first manually clear client-side storage ookies/local new run will fail due to authentication issues!
Important missing things from the minimum base app:
- server-side rendering:
- email notifications however as tested on the live demo: https://demo.realworld.io/#/
- error handling is broken/missing/inconsistent across apps
First you should the most popular backend/frontend combination running, which is the most likely to be working. We managed to run on Ubuntu 20.10, React + Node.js Express.js as described at https://github.com/gothinkster/node-express-realworld-example-app/pull/116:
Then just: on both server and client, and then visit the client URL: http://localhost:4100/
- https://github.com/cirosantilli/node-express-realworld-example-app/tree/mongo4 which has a simple patch on top of https://github.com/gothinkster/node-express-realworld-example-app/tree/ba04b70c31af81ca7935096740a6e083563b3a4a for MongoDB 4 supportThis requires you to first install MongoDB on Ubuntu and ensure you can login to it from the command line.
- https://github.com/gothinkster/react-redux-realworld-example-app/tree/9186292054dc37567e707602a15a0884d6bdae35 patched to use the correct server host/port
You have to hit the Enter key to add tags, it's terrible: https://github.com/gothinkster/react-redux-realworld-example-app/issues/151#issuecomment-808417846
One cool thing is that the main repo has unified backend API tests: https://github.com/gothinkster/realworld/issues/269 so newb.so the per-repository tests are basically useless, and that single test can test everything for any backend! There is no frontend testing however:
Setups we've tried:
- randyscotsmithey/feathers-realworld-example-app worked with React and Vue.js
- the React setup failed as shown at: https://github.com/gothinkster/react-redux-realworld-example-app/issues/187
- the Nest.js failed on Ubuntu 20.10 as per https://github.com/lujakob/nestjs-realworld-example-app/issues/19