443 | Web development technologies have evolved at an incredible clip over the past few years. 444 |
445 |Introducing RealWorld.
446 |It's a great solution for learning how other frameworks work.
447 |├── .env.example ├── .envrc ├── .github └── workflows │ └── deploy.yml ├── .gitignore ├── .tool-versions ├── 404.html ├── FRONTEND_INSTRUCTIONS.md ├── docs ├── Real-World-App.svg ├── app-machine.png ├── article-machine.png ├── auth-machine.png ├── editor-machine.png ├── feed-machine.png ├── profile-machine.png └── settings-machine.png ├── index.html ├── index.tsx ├── logo.png ├── package-lock.json ├── package.json ├── readme.md ├── src ├── App.tsx ├── components │ ├── AppLayout.tsx │ ├── Article.tsx │ ├── AuthorCard.tsx │ ├── Comment.tsx │ ├── ErrorListItem.tsx │ ├── Footer.tsx │ ├── Header.tsx │ ├── Pagination.tsx │ └── Tag.tsx ├── hooks │ └── is-authenticated.ts ├── machines │ ├── app.machine.ts │ ├── article.machine.ts │ ├── auth.machine.ts │ ├── editor.machine.ts │ ├── feed.machine.ts │ ├── profile.machine.ts │ ├── settings.machine.ts │ └── tags.machine.ts ├── pages │ ├── Article.tsx │ ├── Auth.tsx │ ├── Editor.tsx │ ├── Home.tsx │ ├── Profile.tsx │ └── Settings.tsx ├── types │ └── api.ts └── utils │ ├── api-client.ts │ ├── dates.ts │ ├── env.ts │ ├── errors.ts │ └── states.ts └── tsconfig.json /.env.example: -------------------------------------------------------------------------------- 1 | PUBLIC_URL="" 2 | -------------------------------------------------------------------------------- /.envrc: -------------------------------------------------------------------------------- 1 | use mise 2 | -------------------------------------------------------------------------------- /.github/workflows/deploy.yml: -------------------------------------------------------------------------------- 1 | name: Build and Deploy App 2 | on: 3 | push: 4 | branches: 5 | - main 6 | 7 | jobs: 8 | build-and-deploy-docs: 9 | runs-on: ubuntu-latest 10 | steps: 11 | - name: Checkout 🛎️ 12 | uses: actions/checkout@v4 13 | with: 14 | persist-credentials: false 15 | 16 | - name: Install and Build 🔧 17 | env: 18 | PUBLIC_URL: ${{ secrets.PUBLIC_URL }} 19 | run: | 20 | npm ci 21 | npm run build 22 | 23 | - name: Deploy 🚀 24 | uses: JamesIves/github-pages-deploy-action@v4 25 | with: 26 | BRANCH: gh-pages # The branch the action should deploy to. 27 | FOLDER: _site # The folder the action should deploy. 28 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # See http://help.github.com/ignore-files/ for more about ignoring files. 2 | 3 | # dependencies 4 | /node_modules 5 | /bower_components 6 | 7 | # IDEs and editors 8 | /.idea 9 | .project 10 | .classpath 11 | *.launch 12 | .settings/ 13 | 14 | 15 | #System Files 16 | .DS_Store 17 | Thumbs.db 18 | dist/ 19 | .cache/ 20 | .env 21 | _site 22 | .parcel-cache/ 23 | -------------------------------------------------------------------------------- /.tool-versions: -------------------------------------------------------------------------------- 1 | nodejs 18.14.0 2 | -------------------------------------------------------------------------------- /404.html: -------------------------------------------------------------------------------- 1 | 2 | 3 |
4 | 5 |213 | Have an account? 214 |
215 | 216 | 219 | 220 | 234 |443 | Web development technologies have evolved at an incredible clip over the past few years. 444 |
445 |It's a great solution for learning how other frameworks work.
447 |With supporting text below as a natural lead-in to additional content.
493 |With supporting text below as a natural lead-in to additional content.
507 |{description}
33 | Read more... 34 |{body}
21 |{current.context.article?.description}
71 | 76 |132 | Sign in or{" "} 133 | sign up to add comments on this 134 | article. 135 |
136 | )} 137 | {current.matches({ comments: "hasContent" }) && 138 | current.context.comments?.map(comment => ( 139 |151 | No comments yet. You can be the first! 152 |
153 | )} 154 |45 | Have an account? 46 |
47 | )} 48 | {mode === "login" && ( 49 |50 | Need an account? 51 |
52 | )} 53 | 54 |A place to share your knowledge.
66 |Loading articles...
108 |No articles are here...yet
135 |Popular Tags
142 | 143 | {currentTags.matches("loading") &&Loading tags...
} 144 | 145 | {currentTags.matches("tagsLoaded") && ( 146 |{profile?.bio}
79 | 86 |Loading articles...
118 |No articles are here...yet
124 |