DEV Community

My experience with a headless CMS (Strapi)

Abir Ganguly on January 29, 2024

I was approached by my friend to develop a E-commerce site for his book publishing business. I was mainly responsible for the back-end part. Requir...
Collapse
 
lansolo99 profile image
Stéphane CHANGARNIER

Thanks for this feedback, it’s Interesting to see the pros and cons of using Strapi, though this apply for your specific usage and context.

I also bet on Strapi, and used it for a couple of websites. One of those was also an e-commerce.

I had issues sometimes configuring relationship logics within components, some of them had been resolved with the V4 I have no used yet.

I would be interested to know the e-commerce stack you used with the front-end, and how did you host your project (personally, I relied on Snipcart and Heroku at the time).

Collapse
 
abir777 profile image
Abir Ganguly • Edited

At that time our frontend was in Next.js. We used netlify for hosting the frontend (no specific reason, we used it a lot in the past - that's why)

An aws ec2 instance for strapi. This project is to be used in production and we needed multiple features like CDN, storage, e-mail (currently using zoho zepto mail - dirt cheap transactional mail). We were getting all these from a single provider AWS, at a very cheap rate - but definitely it was quite a work to set up. I would rather recommend using something like digital ocean if you can spend few extra bucks.

Later on as we moved off from strapi, we also realised that next.js, along with its app router and RSC is adding some extra complexity, we were SSRing most of the pages - the frontend server felt like merely a proxy in between. Then we decided to move to good old Django + HTMX. I will post a separate post about all these, the good, the bad - all of that.

Collapse
 
lansolo99 profile image
Stéphane CHANGARNIER

Thanks for the details! I wouldn't have think to AWS for hosting Strapi, neither Netlify, as Vercel seems more the way to go with Next. I will have a look at the other tools you mentioned. So I guess the e-commerce part is handmade plugged with a Stripe or something...

Thread Thread
 
abir777 profile image
Abir Ganguly

We use different provider for Payments and shipping, as Stripe doesn't support some Indian payment methods.

I am just curious about Next.js specifically its backend part. I heard about Vercel edge or something. It probably has some major limitations (maybe like time limit or storage?) Kinda obvious because it is mostly meant for frontend.

We had to use a proper backend hosting strategy - there are webhooks coming from external payment and shipping APIs, background cron jobs, backups, also long running tasks like websockets - can Vercel edge handle it? I haven't used it.

Thread Thread
 
lansolo99 profile image
Stéphane CHANGARNIER

I'm not sure about Vercel capacities, as it's moving very quickly. Storage is pretty new, I know edge functions (internal next api routes actually) are improving as well but I didn't have chance to experience all those stuff yet. I know for sure it's not mean to host a strapi instance as of now 🙂.

Collapse
 
darkmortal profile image
Saptarshi Dey

I'll definitely try out this thing

Collapse
 
xanwtf profile image
Xan

Interesting post! I'd definitely just be updating the included User model, just like with Laravel or Rails.

Collapse
 
rickrickiin profile image
Rickrickiin

Intresting post