Hello do community. I’m considering building an app on do, and after having read some docs I have some questions considering the architecture and best services to use.
In general, my app will have an Angular + Ionic based application, connected to a backend DB (I’d prefer a graph DB, but I noticed do doesn’t offer a managed Graph DB, so it’ll be a relational DB).
Also, there will be a Wordpress + WooCommerce front-end for customers to work with, with the Angular app EMBEDDED within a Wordpress PAGE (for authorized users only).
I believe DO should have some good offering to set this all up technically, anticipating your guidance and advise! Thanks, Mor
This textbox defaults to using Markdown to format your answer.
You can type !ref in this text area to quickly search our full set of tutorials, documentation & marketplace offerings and insert the link!
These answers are provided by our Community. If you find them useful, show some love by clicking the heart. If you run into issues leave a comment, or add your own answer to help others.
Hello @morsagmon
For your use case, it’s possible to use a combination of App Platform and Droplet. You can deploy your Angular + Ionic application on the App Platform and the relational database as a Managed Database service in DigitalOcean. This way you get a scalable and easy-to-deploy frontend along with a maintained database.
For the Wordpress + WooCommerce part, you can use a Droplet to configure and host your Wordpress site. You can embed your Angular app within the Wordpress page using an iframe or other methods according to your preference.
To capture HTTP requests from Wordpress webhooks and update the Angular app’s DB, you can use a serverless Function within the App Platform or create an API service within your Angular app. Both options can handle webhook notifications and update the database accordingly. The choice between these methods mainly depends on your preference and how you want to structure your architecture.
For Angular app-Database communication, using an HTTP-based communication with a backend service (Node.js, PHP, or any other technology) is recommended. Your backend service will need to handle CRUD operations, authentication, and other tasks. This approach provides better security and separation of concerns.
Hope that this helps!