What Does A Developer Need To Do To Get Started With Crystallize?
Whether you're a seasoned pro or a beginner developer, let's review the basic requirements for working with Crystallize.
- A Crystallize account. It’s free to sign up.
- By creating an account, you’ll automatically receive a new, empty tenant for which you will be the Tenant Admin. If that’s what you’re looking for, you’re all set! However, if you intend to access someone else’s existing tenant, you’ll need to be invited to their tenant and granted the appropriate permissions for the things you want to work with (like the tenant’s catalogue, for instance).
- Access tokens for API access. (Read more about authentication in Crystallize here.)
The good thing about Crystallize is that it’s headless and platform-agnostic. You can use whatever frontend technology you like and develop applications for as many platforms as you can imagine: web, mobile, kiosk, and more. Below is a general idea of what you’ll need to support your desired frontend(s).
- Your favorite developer tools: command line interfaces (CLIs), an integrated development environment (IDE), one or more web browsers, your programming libraries of choice, a package manager like npm or Homebrew to keep them sorted, and something to test/deploy your frontend locally and to the cloud (ex. Vercel).
- Github: optional, but super useful for version control. Crystallize also provides nifty open-source tools, Apps, and other free resources in Github monorepos that you’re free to access and modify as you wish.
At this point, you’re ready to try out one of our free open-source boilerplates or start loading your new tenant with content from scratch or an existing source. Our Crystallize CLI can help you with boilerplates and importing data from other tenants. Try running this command in your terminal:
npx @crystallize/cli-next@latest --help
If you don’t already have dependencies, you’ll be prompted to install them. Once installed, you’ll see all the available commands and options for the CLI. This includes installing boilerplates, dumping existing tenants, and importing dumps to other tenants.
It could be really helpful for getting started with a boilerplate and/or quickly grabbing data from a production tenant to be used within a test environment. But, there are some limitations when it comes to importing data with the CLI. You may want to use a different approach if you'd like more control over what gets imported.
We detail the various ways you can import data into Crystallize in our Importing Data guide. We recommend that you spend the time to get your content modeling right before importing anything. When you’re ready, you’ll have several options to choose from. Our import utilities and tenant copy procedure are just a few examples.
If you're starting from scratch with no existing data, make sure you’ve done your content modeling first. Then, we recommend checking out our User Guide for working with tenants through the Crystallize App and our Dev Guide for the programming side of things. Our Learn section also contains open-source resources, livestreams and video tutorials, best practices, and more.
Here’s an example where I stepped through the entire process of installing and deploying one of our free Crystallize NextJS open-source boilerplates. It also involved getting my MacBook Air set up to handle everything. I found the process easy and fun, and I’m not a developer by trade! I’m sure you’ll think it’s a breeze, too.
- Hands-On Experience: How to Build an eCommerce Store with Next.js?
- Next.js Starter Install Experience: Part 2
We have many more boilerplates for Remix, Next, and more, and we’re adding new ones all the time!
We hope you’ll enjoy working with Crystallize and discovering its many advantages in performance, scalability, and flexibility. Add new frontends, try out several boilerplates to see what’s possible. Crystallize supports a wide range of eCommerce around the world.
If you have any questions or run into any issues, we’re happy to help! Join our Slack community and message us there.
Take the Next Step👣
But first, a background story to give you context. I didn't take the path most Computer Science students take once they graduate. At some point during my college career, while coding my brains out in Java, C++, and assembly, I decided that being a full-time developer was not for me.
To be fair, I hadn't known what to do with myself even before college. I’d always liked writing, but you couldn’t get paid for that. (Right?)
As the Internet became more popular, I’ve enjoyed building homemade websites in HTML+CSS, learned a great deal about how to use search engines, connected with people worldwide, and even bought books and Star Trek memorabilia off eBay.
Therefore, the elders in my life had nudged me toward Computer Science, saying I’d be sure to make a lot of money once I graduated. I’d started with programming classes in high school, then continued with that path into college. And while I kept up with my coursework, I was never all that into coding for coding’s sake. It wasn’t something I itched to do in or out of the classroom.
As a result, my career path has been colorful: tech support, technical training, business analysis, and project management. I once had a job helping developers who used my company’s SaaS and APIs to get up and running and troubleshoot their programming issues. But by far, my favorite thing to do has always been technical writing and documentation. I enjoyed writing articles for the company website, for the knowledge base, you name it.
It turned out I could get paid for writing. Who would’ve thunk it?
I like writing so much that I’ve done a fair bit of it outside work as well. It’s been mostly for myself and my own fun, but I was able to get some work self-published under a pen name.
Now I’m doing technical writing full-time. Although I enjoy every second of it and wouldn’t want things any other way, there’s no denying that my technical side has atrophied a bit. It's super-hard for a full-time developer to keep up with all the latest technological trends, never mind someone who isn’t constantly immersed in it.
So, every once in a while, I like to dip my toes back into that water to learn what’s going on. It helps me to write better documentation when I know firsthand what’s important from the developer’s perspective.
On one occasion, I wanted to see if I could deploy one of the Crystallize boilerplates myself. And if I wanted to later on, I could eventually customize the boilerplate to sell my short stories and novels without having to rely on the big A or the big G.
What follows is a nice bit of hands-on experience. How easy or hard was it for a beginner like me to pull off?
Do you want to build an eCommerce storefront using SvelteKit, Houdini, Tailwind, and with product information from the Crystallize GraphQL API? Well, look no further. We have created an open-source boilerplate that connects the dots for this stack.