Hi. New to Clojure and Pedestal. Looking at Vase. Can someone explain why the template doesn’t match the instructions on building your first API?
Also is Pedestal and Vase ready for production use?
Hi @ujjwalt and welcome 🙂. I’ll take a look at the Vase docs. It could be that they are out of date. I’m not sure what your definition is for production use but both have been used in production systems. Pedestal predates Vase by a number of years, is highly configurable and supports high traffic usage scenarios
Yeah I meant if people have used it in production and that it won
*won’t crash
Little confused with Vase because of the mismatch. Any suggestions on what path to follow to understand it and start using
I’d start with Pedestal first and understand it’s concepts
Understanding Vase is much easier once you’ve got the basic concepts down
Then I’d peruse Datomic docs to get a high-level understanding
I tried to capture the learning path here https://github.com/cognitect-labs/vase#before-you-get-started
@ujjwalt, sorry you ran into issues with the Your first API doc. I can see that it uses the Fern api description format but the vase template is emitting the edn format. I’ll work on rectifying that but you can try working with an older version of that guide in the meantime https://github.com/cognitect-labs/vase/blob/6332b633c174fcfa40efef56d3cd0a57cd2033f8/docs/your_first_api.md
Thanks a lot @ddeaguiar. I’ll start there. Will get back if I encounter something else.
:thumbsup:
Quick questions: Specifically when does one use ions vs Vase? What would be the ideal use cases for both provided we are on AWS.
It’s on my todo list to put out an example of Ions + Vase now that datomic client api support has landed on Vase master. Note that we’ve yet to push out a release of Vase with those changes
Vase’s value proposition is in data described services. Using it, you can build services quickly
Ions allows you to deploy code that runs on the Datomic infrastructure - close to your DB. In the process, it facilitates deployments.
If you are working with Datomic Cloud, then there’s likely a place where Ions are a fit for you
In fact, re: Ions, they run within the Datomic process
so your application is running in the database. You can’t get much closer to your data than that
and you benefit from autoscaling, etc…
There are some caveats, you may run into dependency conflicts but the tooling around identifying, describing and resolving those has improved
I see. So there’s a use case for using Ions + Vase? Like deploying Vase services as ions? That would be pretty cool. Or maybe deploying it as an API gateway?
I’ve not tried deploying Vase via Ions yet but see no reason why that wouldn’t work. It’s just a Pedestal service and we have a Pedestal Ions interceptor chain provider https://github.com/pedestal/pedestal.ions
but we’d need to release an updated version of Vase first containing Datomic Cloud support (currently on master)
I also think Vase + Ions is cool!
That sounds very interesting. Any possible timeline on Vase Datomic Cloud support release?
I’m hoping in the next few weeks
And any update on the pedestal docs on the website. A lot of links don’t have articles
Ongoing work in progress
Cool. Thanks a lot.
np!