Real World Phoenix apps and their open source codebases for developers to learn from
Learn from Phoenix apps written by experienced developers.
You'll find the source code for the Real World Phoenix apps in the apps/
subdirectory.
Thank you to every developer who has worked on a project this repo links to, your work is helping developers learn Phoenix.
NOTE: Don't open this repo in trusted mode in VS Code or the Elixir LS extension will use up all of your CPU trying to analyze all of the code.
# Clone this git repo:
git clone [email protected]:szTheory/real-world-phoenix.git
cd real-world-phoenix/
# The apps are linked to as git submodules.
# This will take some time... (see comment below for possible speedup)
# We add `GIT_LFS_SKIP_SMUDGE=1` to prevent downloading lfs files which are not required and can use a repo's Github quota for bandwidth
GIT_LFS_SKIP_SMUDGE=1 git submodule update --init
# OR if you've got git 2.9+ installed try to run updates in parallel:
# GIT_LFS_SKIP_SMUDGE=1 git submodule update --init --jobs 4
Given a GitHub repo for an app githubuser/foo
:
# Inside the project root:
git submodule add -b master [email protected]:githubuser/foo.git apps/foo
The apps in apps/
are git submodules. Git submodules are locked to a revision and don't stay in sync with the latest revision.
To update the revisions, run:
# This will take some time:
git submodule foreach git pull origin master
- Real World Erlang Apps
- Real World Elixir Apps
- Real World Plug
- Real World Absinthe
- Real World Nerves
- Real World Rails
- Real World Sinatra
- Real World Ruby Apps
- Real World React
- Real World Ember
- Real World Django
- Know any others? Please open a PR and add the link here
- Contributions are welcome, fork the GitHub repo, make your changes, then submit your pull request! Reach out if you'd like some help.