0.1.0-dev • Published 10 months ago
strategio-saas v0.1.0-dev
Strategio SaaS
The Tool for developing Webs & APIs by simple clicks.
Demo: https://saas.strategio.dev (u: admin@test.cz p: Test1234)
Installation guide
- Create project by
curl -sL bit.ly/3AnA49z | bash /dev/stdin create <project-folder>
- Move to your project folder & finish installation steps by readme.md
Core features
- 🟢 Website frontend builder (simple router & Latte templates)
- 🟢 Vite assets builder for fast compiling scss, ts, vue, etc.
- 🟠 Admin panel with visual Doctrine ORM entity builder & data editor.
- 🟠 Fully configurable & extendable Vue 3 Admin panel.
- 🟢 One click deployment with Dockerfile and easypanel.io.
Backend features
- 🟢 JWT Auth (user, admin, guest, +custom roles).
- 🟢 Roles, resources and resource-guards in controllers.
- 🟢 Schema validation for requests and controllers.
- 🟢 Doctrine database entities with PHP attributes and migrations.
- 🟢 File storage with AWS S3 adapter.
- 🟢 Tracy/Debugger with AWS S3 logger adapter.
- 🟢 Sending emails by custom SMTP servers.
- 🟢 Symfony console commands.
- 🟢 PHP-Stan static analysis on level 8.
Working on
- User datagrid + CRUD with bulk inserts / updates
- Collection datagrid + CRUD
- Admin datagrid + CRUD
- App.php & Bootstrap.php refactoring
Backlog
- Collection Editor (Doctrine entity builder, migrations, route generator, API permissions)
- Role access table (routes or resources)
- Request-validation by entity (by default)
- File uploader
- Admin navigation configurator
- App settings
- Storage settings
- E-mail settings
- Enhanced API CRUD filters, joins, orders
- Application event hooks
- Doctrine SQL profiler: TracyBar, JsonResponse debugger (Queries count, SQL log, execution times)
- Extension (Simple cart + GoPay)
- Make some docs (inspire by docusaurus.io)
- Make intro videos (for developers & for administrators)
- Console cron jobs & progress dashboard
- Access log & error log dashboard with Tracy/BlueScreens
Tutorials
TODO Beginner:
- How to start new project and create first collections.
- How to handle request and render collection data in Latte template.
- How to handle API requests and send example e-mail.
- How to make CRUD operations with Doctrine ORM.
- How to upload files with S3 storage adapter.
- How to deploy your application with easypanel.io.
How to debug API with Postman.
If you want to use Postman to debug API, just add this script into Postman -> Collection -> Tests
section and you will be able to use Tracy\Debuuger in Postman.
pm.test("set html", function() {
var regex = /\"(.*)(\_tracy\_bar)/gm
var protocol = pm.request.url.protocol
var host = pm.request.url.host
var port = pm.request.url.port
var hostPort = port ? `${host}:${port}` : host
var html = pm.response.text()
var fixedHtml = html.replaceAll(regex, `${protocol}://${hostPort}$1$2`)
pm.visualizer.set(fixedHtml)
});