/realworld

"The mother of all demo apps" — Exemplary fullstack Medium.com clone powered by React, Angular, Node, Django, and many more 🏅

Primary LanguageJavaScriptMIT LicenseMIT

RealWorld Example Applications

Stay on the bleeding edge — join our Gitter room! 🎉

Travis Gitter Twitter

See how the exact same Medium.com clone (called Conduit) is built using any of our supported frontends and backends. Yes, you can mix and match them, because they all adhere to the same API spec 😮😎

While most "todo" demos provide an excellent cursory glance at a framework's capabilities, they typically don't convey the knowledge & perspective required to actually build real applications with it.

RealWorld solves this by allowing you to choose any frontend (React, Angular 2, & more) and any backend (Node, Django, & more) and see how they power a real world, beautifully designed fullstack app called "Conduit".

Read the full blog post announcing RealWorld on Medium.

Frontends

Sorted by popularity on Sun Jul 19 2020

🥇 🥈 🥉
React / Redux
React / Redux Star Fork
Angular
Angular Star Fork
Vue
Vue Star Fork
Elm
Elm Star Fork
React / MobX
React / MobX Star Fork
Svelte / Sapper
Svelte / Sapper Star Fork
PureScript + Halogen
PureScript + Halogen Star Fork
AngularJS
AngularJS Star Fork
ClojureScript + re-frame
ClojureScript + re-frame Star Fork
Angular + ngrx + nx
Angular + ngrx + nx Star Fork
Aurelia
Aurelia Star Fork
Ember.js
Ember.js Star Fork
Rust + Yew + WebAssembly
Rust + Yew + WebAssembly Star Fork
AppRun
AppRun Star Fork
Next.js
Next.js Star Fork
Vanilla JS Web Components
Vanilla JS Web Components Star Fork
ClojureScript + Keechma
ClojureScript + Keechma Star Fork
Stencil.js
Stencil.js Star Fork
Hyperapp 1
Hyperapp 1 Star Fork
Dojo 2
Dojo 2 Star Fork
Ember Octane
Ember Octane Star Fork
San
San Star Fork
Riot.js v4
Riot.js v4 Star Fork
neo.mjs
neo.mjs Star Fork
Imba
Imba Star Fork
Crizmas MVC
Crizmas MVC Star Fork
Bridge.Spaf
Bridge.Spaf Star Fork
Riot.js v3
Riot.js v3 Star Fork
Riot.js + Universal + Effector
Riot.js + Universal + Effector Star Fork

Work In Progress: Implement GraphQL + Apollo/Relay for the Node + React codebases | 🖥 🔧 ClojureScript | 🖥 🔧 Mithril | Angular 4+ / MobX | AngularJS 1.2 | Vanilla Backbone.js | Ractive | Quasar framework | Blazor | ReasonReact (ReasonML) | $mol | Surplus wip | Slim.js | Nuxt.js | Typescript + Web Components

Backends

Sorted by popularity on Sun Jul 19 2020

🥇 🥈 🥉
Node / Express
Node / Express Star Fork
Go + Gin
Go + Gin Star Fork
ASP.NET Core
ASP.NET Core Star Fork
Django
Django Star Fork
NestJS + TypeORM/Prisma
NestJS + TypeORM/Prisma Star Fork
Laravel
Laravel Star Fork
Elixir + Phoenix
Elixir + Phoenix Star Fork
Flask
Flask Star Fork
Spring
Spring Star Fork
Rails
Rails Star Fork
Slim
Slim Star Fork
Rust / Rocket
Rust / Rocket Star Fork
Kotlin / Spring
Kotlin / Spring Star Fork
Rust
Rust Star Fork
Go Clean Architecture
Go Clean Architecture Star Fork
Go / Echo
Go / Echo Star Fork
Koa / Knex
Koa / Knex Star Fork
Clojure / Polylith
Clojure / Polylith Star Fork
Serverless AWS Lambda DynamoDB
Serverless AWS Lambda DynamoDB Star Fork
Haskell / Yesod
Haskell / Yesod Star Fork
Scala & Play Framework
Scala & Play Framework Star Fork
GCP Cloud Functions + Datastore
GCP Cloud Functions + Datastore Star Fork
CakePHP
CakePHP Star Fork
Functional ASP.NET Core
Functional ASP.NET Core Star Fork
Kotlin + Javalin + Exposed
Kotlin + Javalin + Exposed Star Fork
Moleculer
Moleculer Star Fork
F#
F# Star Fork
Hapi.js
Hapi.js Star Fork
Kotlin + http4k
Kotlin + http4k Star Fork
Java Quarkus
Java Quarkus Star Fork
Node / hapi pal
Node / hapi pal Star Fork
Crystal (Onyx)
Crystal (Onyx) Star Fork
Express w/ Bookshelf.js
Express w/ Bookshelf.js Star Fork
Kotlin + Ktor
Kotlin + Ktor Star Fork
Ruby & Colmena
Ruby & Colmena Star Fork
Feathers
Feathers Star Fork
Akka HTTP
Akka HTTP Star Fork
QEWD.js
QEWD.js Star Fork
AWS Lambda Go + DynamoDB
AWS Lambda Go + DynamoDB Star Fork
Eclipse Vert.x
Eclipse Vert.x Star Fork
Spincast
Spincast Star Fork

Work In Progress: Implement GraphQL + Apollo/Relay for the Node + React codebases | 🗄🔧 Go + net/http | 🗄🔧 Node + GraphQL | 🗄🔧 Clojure | 🗄🔧 Falcon and GAE | 🗄🔧 Nim | 🗄🔧 Symfony | 🗄🔧 Haskell / Servant | 🗄🔧 Phalcon | 🗄🔧 Dropwizard | 🗄🔧 Go + Gorilla mux | 🗄🔧 Loopback 3.0 | 🗄 🔧 Crystal + Kemal | 🗄 🔧 Erlang + Cowboy | 🗄 🔧 Nancy | 🗄🔧 Sanic | Haskell / Scotty | Typescript + node + express | typescript + node.js(koa) | Vanilla PHP | Vert.x (Java) | Lumen + MongoDB | Go + net/http Package | Swift Vapor | Egg.js | Serverless python (AWS Lambda) | Serverless Typescript + Mongodb (implementation done) | Azure Functions + CosmosDb | Serverless+Typescript with AWS as the provider (Lambda, SSM, DynamoDB) | Vertx + Reactive + MongoDB | Fullstack Golang (tgram) | Zend Framework | Rust / Rocket / Diesel / Mysql - Backend Application | Golang + Revel | Masonite | Turbolinks | Actix | Lucky | Symfony 4 with API Platform | Scala + Finch | Holochain

Mobile

Sorted by popularity on Sun Jul 19 2020

🥇 🥈 🥉
NativeScript (Angular)
NativeScript (Angular) Star Fork

Work In Progress: 📱🔧 React Native | 📱🔧 Jasonette | 📱🔧 Swift | 📱🔧 C# on Xamarin | 📱 🔧 Kotlin/Android | 📱🔧 Onymos | Quasar framework | Swift Perfect | Flutter

Fullstack

Since these implementations are responsible for the entire stack, they obviously cannot be mixed and matched but they still adhere to the same functionality & UX specs.

Work In Progress: Meteor | Ruby Hyperloop | Firebase

Create a new stack

Create a new stack

Know any of these frameworks (or one that isn't listed)?
Create a new framework implementation >>>

Or you can view upcoming stacks (WIPs)

Note: All stacks that are a WIP are experimental and incomplete.

Don't expect everything to work perfectly out of the box!


How do I get up & running?

Simply follow the instructions in the README of whatever frontend and/or backend repo's you want to get up and running.

Can you teach me how to build each stack from scratch?

Yup! We've built step-by-step tutorials for all of our stacks that teach you how to go from git init all the way to the production ready application. Start learning now >>>


Community created resources

Forks, tutorials, workshops, and other resources based on the RealWorld project:


Learn more

  • "Introducing RealWorld 🙌" by Eric Simons
  • Every tutorial is built against the same API spec to ensure modularity of every frontend & backend
  • Every frontend utilizes the same hand crafted Bootstrap 4 theme for identical UI/UX
  • There is a hosted version of the backend API available for public usage, no API keys required
  • Interested in creating a new RealWorld stack? View our starter guide & spec

Who made this?

RealWorld would not be possible without the open source community continuously helping push the project forward. In addition, we have a core project team composed of:

Anish Karandikar - Core Maintainer

MathWorker, ex-Google, ex-Computational Fluid Dynamicist, forever lover of tech & humanities ❤️

Cameron Chapman - Core Maintainer

Cameron Chapman is a Software Engineer at FanThreeSixty. He's an open source enthusiast and is helping to teach a local web development boot camp at Kansas University.

Eric Simons - Founder/Maintainer

Eric is a Software Engineer, UI Designer, and author of many technical books & tutorials. He oversees the project direction, maintenance and organizes the planning and development efforts of the team.

Albert Pai - Founder/Maintainer

Albert is a Software Engineer, DevOps ninja, and author of many technical books & tutorials. He oversees the project direction, maintenance and organizes the planning and development efforts of the team.

Thinkster - Funding/Support

Thinkster creates high quality resources that help Javascript developers succeed. The RealWorld project wouldn't exist without their funding, so please consider investing in a Pro subscription to help support us!

James Brewer - Admin

James is a Software Engineer at Square and a contributor to the Django project. He created & maintains the RW Django codebase and continually provides guidance for the RealWorld project itself.

Sandeesh S. - Admin

Full stack developer, Laravel enthusiast, Digital marketing specialist and an avid gamer.

Special thanks to...

RealWorld wouldn't be possible without the help of the open source community reviewing codebases, creating new app implementations, and many other tasks that help push this project forward. We especially appreciate the OSS leaders who have helped contribute to RealWorld:

  • Dan Abramov (creator of Redux) for helping spark the initial idea, getting the Redux community involved, as well as graciously taking the time to provide feedback on the Redux codebase
  • Max Lynch (creator of Ionic) for taking the time to provide guidance in the early days of this project
  • Addy Osmani (creator of TodoMVC) for helping spark the initial idea and his amazing work with TodoMVC
  • TodoMVC (team & contributors) for their exemplary & successful work; their project & org has been an invaluable analogy for us as we've built out RealWorld
  • James Brewer (docs contributor to Django) for countless brainstorming sessions, helping name this project, and creating the Django codebase + tutorial

License

All of the codebases are MIT licensed unless otherwise specified.


Brought to you by Thinkster