At Lostium, we have been incorporating more modern and efficient technologies into our workflow with the goal of being more agile and taking advantage of their benefits over more outdated models.

Disclaimer. This is a technical article and we will be using many terms that you may not understand or be familiar with. Although we will try to explain it in a simple way, it is aimed at introducing our usual development tools to departments or technology managers.

Frontend

While WordPress is a constant in our backends, we have been varying the technologies we use on the frontend. So much so that for some time now, we have embraced JAMStack, a modern web development architecture based on JavaScript, APIs, and markup (HTML).

The cornerstone of our applications is Angular. It is a framework based on TypeScript that allows for the implementation of single-page applications (SPAs). These types of applications offer a more fluid and faster user experience since the page is loaded only once, and the content is dynamically updated without the need to reload the entire page.

We also rely on other libraries such as Angular Material, a set of components and utilities that allows us to develop highly customizable user interfaces.

For simpler projects, we use TailwindCSS, a CSS framework that integrates very well with Angular and allows us to design interfaces quickly. Thanks to these technologies, we can develop web applications efficiently and in a scalable manner, providing our clients with the best possible user experience.

Backend

One of the main pillars of our developments is WordPress. It is the most popular CMS (Content Management System) in the world, and although we initially started using it to implement websites, over time we have adapted it to become the backend for all of our applications and services.

Thanks to our expertise in WordPress, we can develop administration areas that allow storing any type of information, managing users and roles, or building robust communication APIs. We have come so far with this CMS that we have even used it to manage an industrial kitchen.

In addition, we use Trellis, a LEMP stack (Linux, Nginx, MySQL/MariaDB, and PHP) that automates server provisioning and maintenance, along with backend deployment. Thanks to this, we can update any application in a matter of minutes without any service interruption.

Rendering

With the use of JAMStack, we face the challenge of optimizing applications for search engines and increasing the visibility of our services on the web. To solve this problem, we adopted various techniques such as Server-Side Rendering (SSR) or prerendering with Angular Universal, Express, and Node.js.

The use of SSR allows us to improve the loading speed of web applications and make the content easily indexable for search engines. With this technique, the page is rendered on the server before being sent to the browser, allowing search engines to efficiently identify the content.

We also use the prerendering technique with Angular Universal (this website is an example). It involves generating static HTML pages for each section of the website. This way, when a search engine or user accesses the page, the "rendered" version loads immediately, improving the page's loading speed and indexability. The web server serves only plain HTML, and it is the user's browser that takes care of "hydrating" the page and executing the dynamic part, if necessary, via JavaScript.

Native Apps

To build native applications, we use Capacitor, a tool that allows us to access native functionalities of mobile devices using web technologies. With Capacitor, we develop cross-platform applications for iOS, Android, and the web, which allows us to reduce development time and speed up their deployment. We have also developed mobile interfaces with Ionic, although recently we prefer to use Angular Material.

APIs and integrations

We also integrate all kinds of third-party services to enrich and personalize our applications. We use authentication tools that allow us to add layers of security, maps to create geolocated solutions, or communicate with other platforms such as Salesforce through APIs. Lately, we have integrated text-to-speech services with iA, which allows us to provide our applications with a unique and personalized user experience.

In summary, the use of all these technologies allows us to offer advanced solutions tailored to the specific needs of each project, which our clients greatly value. Furthermore, our ability to create flexible and scalable applications enables us to ensure that our solutions remain effective in the long term.