Urbit Developers
  • Lightning Tutorials

  • Build a Chat App
  • Build a Voting App
    • Core Curriculum

    • Environment Setup
      • Hoon School

        • Introduction
        • 1. Hoon Syntax
        • 2. Azimuth (Urbit ID)
        • 3. Gates (Functions)
        • 4. Molds (Types)
        • 5. Cores
        • 6. Trees and Addressing
        • 7. Libraries
        • 8. Testing Code
        • 9. Text Processing I
        • 10. Cores and Doors
        • 11. Data Structures
        • 12. Type Checking
        • 13. Conditional Logic
        • 14. Subject-Oriented Programming
        • 15. Text Processing II
        • 16. Functional Programming
        • 17. Text Processing III
        • 18. Generic and Variant Cores
        • 19. Mathematics
        • App School I

          • Introduction
          • 1. Arvo
          • 2. The Agent Core
          • 3. Imports and Aliases
          • 4. Lifecycle
          • 5. Cards
          • 6. Pokes
          • 7. Structures and Marks
          • 8. Subscriptions
          • 9. Vanes
          • 10. Scries
          • 11. Failure
          • 12. Next Steps
          • Appendix: Types
          • App School II (Full-Stack)

            • Introduction
            • 1. Types
            • 2. Agent
            • 3. JSON
            • 4. Marks
            • 5. Eyre
            • 6. React app setup
            • 7. React app logic
            • 8. Desk and glob
            • 9. Summary
          • Additional Guides

          • Writing Aqua Tests
          • CLI Apps
          • Using the HTTP API
          • Working with JSON
          • Parsing
          • Sail: HTML in Hoon
          • Distributing Software
          • Working with Strings
          • Writing Unit Tests
            • Threads

              • Fundamentals
              • Bind
              • Input
              • Output
              • Summary
              • Hoon Workbook

                • Rhonda Numbers
                • Roman Numerals
              Urbit Developers
              • Lightning Tutorials

              • Build a Chat App
              • Build a Voting App
                • Core Curriculum

                • Environment Setup
                  • Hoon School

                    • Introduction
                    • 1. Hoon Syntax
                    • 2. Azimuth (Urbit ID)
                    • 3. Gates (Functions)
                    • 4. Molds (Types)
                    • 5. Cores
                    • 6. Trees and Addressing
                    • 7. Libraries
                    • 8. Testing Code
                    • 9. Text Processing I
                    • 10. Cores and Doors
                    • 11. Data Structures
                    • 12. Type Checking
                    • 13. Conditional Logic
                    • 14. Subject-Oriented Programming
                    • 15. Text Processing II
                    • 16. Functional Programming
                    • 17. Text Processing III
                    • 18. Generic and Variant Cores
                    • 19. Mathematics
                    • App School I

                      • Introduction
                      • 1. Arvo
                      • 2. The Agent Core
                      • 3. Imports and Aliases
                      • 4. Lifecycle
                      • 5. Cards
                      • 6. Pokes
                      • 7. Structures and Marks
                      • 8. Subscriptions
                      • 9. Vanes
                      • 10. Scries
                      • 11. Failure
                      • 12. Next Steps
                      • Appendix: Types
                      • App School II (Full-Stack)

                        • Introduction
                        • 1. Types
                        • 2. Agent
                        • 3. JSON
                        • 4. Marks
                        • 5. Eyre
                        • 6. React app setup
                        • 7. React app logic
                        • 8. Desk and glob
                        • 9. Summary
                      • Additional Guides

                      • Writing Aqua Tests
                      • CLI Apps
                      • Using the HTTP API
                      • Working with JSON
                      • Parsing
                      • Sail: HTML in Hoon
                      • Distributing Software
                      • Working with Strings
                      • Writing Unit Tests
                        • Threads

                          • Fundamentals
                          • Bind
                          • Input
                          • Output
                          • Summary
                          • Hoon Workbook

                            • Rhonda Numbers
                            • Roman Numerals
                          Guides/Core Curriculum

                          App School II (Full-Stack)

                          Table of Contents

                          • Introduction

                          Lessons

                          • 1. Types - This lesson creates the /sur structure file for our %journal agent.

                          • 2. Agent - This lesson creates the %journal agent itself.

                          • 3. JSON - This lesson shows writing a library to convert between our agent's marks and JSON. This lets our React front-end poke our agent, and our agent send updates back to it.

                          • 4. Marks - This lessons creates the mark files for the pokes our agent takes and updates it sends out.

                          • 5. Eyre - This is a brief overview of how the webserver vane Eyre works.

                          • 6. React App Setup - This lesson shows how to create a new React app, install the required packages, and set up some basic things for our front-end.

                          • 7. React App Logic - This lesson analyzes the core logic of our React app, with particular focus on using methods of the Urbit class from @urbit/http-api to communicate with our agent.

                          • 8. Desk and Glob - This lesson shows how to build and “glob” our front-end, as well as put together a desk for distribution.

                          • 9. Summary - App School II is now complete. Here are some final comments and additional resources.

                          Edit this page on GitHub