Yore Tutorial Script
Well, this will eventually be a tutorial, right now it's just an outline :/
- Introduction - What is Yore?
- The 8 fundamental Pillars of Yore
- Yore is an MVC for building web applications
- Yore has 2 View Template Engines
- Standard HTML (Called "Fred")
- "Blade" like in Laravel
- (I might add Twig too)
- You can use these interchangeably based on the file name of the template
- Yore has a platform independent Controller & Template Language (called "Fred")
- Yore has automatic URI routing
- In Modules:
- Web Trait function names are website routes
- API Trait controller function names are API routes
- Also, Fred Trait function names automatically become Fred and Blade "@template()" functions
- Otherwise domain, site & view folders automatically become routes
- Multiple Views selected from a route can be based on the user's Role value
- Yore apps can be deployed anywhere you can store data
- Disk files (Like you normally do)
- Database
- GitHub/GitLab, etc
- FTP, DropBox, S3
- (anywhere a URL can return JSON)
- Yore has a really useful Module Engine
- For extending Yore in the platform/language of your choice (i.e. Php, Python)
- Or modules can be built using Fred to be platform independent
- Yore apps can be interconnected
- Instantiate and use an object on a different server
- Distribute tasks to multiple servers
- Yore has built-in version control and deployment and unit testing tools
- Honerable Mention Pillars of Yore
- A useful CLI:
- Table CRUD Code and Page generator
- Site cloning tool
- Class Tinker tool
- Push/Pull whole sites to/from data source
- Excel integration tool
- _________________
- Native App Compiler?
- Example Themes, Modules and Starter Apps
- Yore is primarily an Application Framework
- Interesting things that make Yore unique
- Free and Open Source, of Course
- Platform independent design
- A simple and useful template engine called Fred
- Yore also supports Blade templates, like in Laravel
- An easy, yet powerful server side scripting language based on BASIC.
- Everything is a Module
- WebWork - Remote Classes
- Sample Apps & Themes
- Create pages just by going to a new URL
- Automatically generate full sets of CRUD pages for existing DB tables
- Comparing Yore with other frameworks
- The future road map
- Contributing
- https://github.com/blackrushllc/yore
- Installation
- Linux/Apache
- Windows or whatever
- Composer is optional
- Yore Files and Directory Structure
- Why this is important
- Yore directories and files
- HTML vs Blade templates
- Configuration
- Admin dashboard
- Database connection
- Making a "Hello World" page
- Using the Admin dashboard
- Editing files directly
- Page JSON
- Page View
- Using UI and Tools Modules
- Debug Module
- Navigation Menu
- Desktop
- Office Docs and Sheets
- Database Admin
- Forms
- JSON Viewer and Editor
- API Explorer
- Files and Uploads
- Reports
- Javascript Library
- Tray
- Context Menus
- Excel and PDF
- CLI CRUD Generator
- CLI Site Cloning tool
- DEBUG mode
- Memory Dump
- Automatic page creation
- "404" Site, Page and CRUD generator page
- PhpStorm integration built-in
- Inline View, Blade and JSON Editor
- Version Control & Deployment
- Unit Testing
- A Brief Look at Fred and YoBASIC
- What is Fred and When Should You Use It
- What is YoBASIC and When Should You Use it
- How Remote Classes are the Coolest Thing Ever
- Why Fred and YoBASIC? Platform independent web/app hosting
- Subdomain Sites
- Building a Skeleton Web App using Modules and Themes
- Building an Online Course with PayPal payments, SMTP Email, and Accredible certificates
- Building a Twitter Clone
- Creating a Text Game
- Building a Twilio Front-End: Twilite
- List of clone-able sample web apps
- app.yoreweb.com
-
- List of Included Modules
- Admin
- App
- Basic
- Courses
- Database
- Debug
- Games
- Hello
- Library
- Logging
- Mail
- Navbar
- Skeleton
- Twilite
- Users
- Module Documentation (this should be later in the outline, I think, probably after YoBASIC)
- Modules are Classes
- Sample Single File Module
- Sample Multi-File Module with Traits and Views
- Sharing Modules
- Module Directories
- Route Limitations (on purpose)
- API Routes and Functions
- Fred Functions
- Scheduling Tasks
- Referencing Other Modules
- Using the Database Module
- Authentication with the User Module
- Forms
- List of Included Themes
- Building a Custom Theme
- Sample Theme
- Sharing Themes
- Theme Documentation
- Fred and YoBASIC - View and Controller programming
- Fred Documentation
- Fred User Guide
- Fred Reference
- Extending Fred
- YoBASIC Documentation
- YoBASIC User Guide
- YoBASIC Reference
- Building and Using Remote Classes
- Extending YoBASIC
- Data Source Deployment - Storing Your Entire Site as Data
- Local plain text files
- Local JSON data Files
- Database or RDS
- Git Repository
- FTP/SFTP/S3/Drop Boxes
- Other
- Building a Custom Data Source for Deployment
- A silly but working example - Store your entire website in a Google spreadsheet
- Allow Other Yore Hosts to Display Your Site
- Create Your Own Server Side Script Engine
- A silly but working examples -
- Server-side programming with Cobol
- How about dBASE?