My Elemental Being offers custom astrology readings with a unique focus on the elements. The website should clearly communicate this distinctive offering and provide straightforward mechanisms for booking and paying for readings. Additionally, it should facilitate the purchase of merchandise and e-books. To drive engagement and acquisition, the site should also feature a blog.
Each reading is custom-made and can take up to two hours to complete. Given the expected demand and limited resources, the client requires a flexible and responsive booking system. This system should clearly inform customers of the expected delivery date of their report while allowing them to specify their preferred delivery time.
To reduce production time for each report, the client asking for possibility of automatically generating astrology data and charts based on the client's birth location, date, and time.
Before approaching us, the client had explored the popular WordPress route but found it unsatisfactory due to the restrictions imposed by templates and plugins. The page designs appeared generic and lacked a personal touch, while the booking system was too limited due to inflexible plugins. Although the initial cost seemed attractive, the necessary customizations quickly caused expenses to balloon.
To address these issues, we recommended a JAMstack solution combined with SaaS. We utilized Next.js as the front-end framework, enabling us to create a completely custom front-end tailored to the client's specific needs and preferences. This approach allowed us to incorporate all the desired features exactly as the client envisioned.
Next.js offers several advantages over WordPress. It supports Static Site Generation (SSG), which provides excellent performance by pre-rendering pages at build time, ensuring fast load times and better SEO. Server-Side Rendering (SSR) allows dynamic content to be generated on the server for each request, offering a more personalized user experience. Additionally, Client-Side Rendering (CSR) enhances interactivity by allowing pages to be rendered on the client side, improving user engagement. Next.js also supports incremental static regeneration, enabling sites to scale efficiently without compromising performance. The combination of SSG, SSR, and CSR ensures that the site can handle high traffic volumes while maintaining fast load times and responsiveness. Unlike WordPress, which is often constrained by templates and plugins, Next.js allows for complete customization, ensuring that the site meets all the client's specific requirements.
By leveraging these features, we created a robust, high-performing, and scalable website that not only meets but exceeds the client's expectations.
As the CMS for this project, we chose Contentful, a very powerful headless CMS. Contentful provided us with the flexibility for content management and the decoupling from front-end design that we needed. Although it is an enterprise solution, Contentful offers a free tier subscription that is suitable for small clients and sites.
We utilized Contentful primarily to allow the client to manage the blog and certain parts of the front page. By carefully selecting which content areas to manage through Contentful, we were able to remain well within the limits of the free tier.
To manage the booking system for the reading, we chose Simplebook.me, a complete and comprehensive booking platform. Using the Simplebook.me API allowed us to implement a unique user experience with all the requested features. Since the requirements were not standard for a booking system like those used for gyms or GP practices, instead it is used to manage the workload and inform the customer of the delivery time. Simplebook.me enabled our client to set availability, manage customer relations, and flexibly manage her time.
For payment transactions, we used Stripe, which allowed us to create a slick and easy-to-use checkout process. The user enters their personal details, and the system looks for available slots for report delivery. We integrated Google Maps to allow the user to select their birth location. Once the payment process is completed, the backend generates the astrological data and chart, which are then attached to the client profile created in Simplebook.me. When our client needs to complete the reading, all the necessary data is readily available within the booking in Simplebook.me.
To start out, the client only wanted to sell e-books on the site, with the possibility of extending to merchandise sales in the future. While Stripe can handle payment transactions, it cannot manage the distribution and secure storage of e-books. Rather than building our own platform for these functions, we opted for Gumroad, which is a cost-effective solution for managing digital products. We used the Gumroad API to pull in product listings and information. For payment transactions on Gumroad, we selected Stripe to allow our client to manage the financial side, including reports, in one place.
The client was very pleased with the result. It was exactly what she wanted. We have already started exploring ideas on how we can improve and automate some aspects of the report creation process. Our goal is not to completely remove the human element from the creation process but to enhance it by using models such as ChatGPT to aid with the analytic process and calculations. For customer-facing interactions, we plan to provide small snippets of the full report in real-time as a marketing tool. Stay tuned—our work with Elemental Beings is far from finished!