VulcanJS 1.7: Cards, Datatables, and more!

Another big update for your favorite framework

Card & Datatable Components

The big new feature in VulcanJS 1.7 is the introduction of the Card and Datatable components.

The Card component can be used to quickly output the contents of a single document:

While the Datatable component does the same, but for a list of documents:

Both are super easy to use, so check out the documentation to get started!

Easier Search

To go along with the new Datatable component, making a document’s fields searchable is now much easier. Just set searchable to true inside the field schema, and Datatable’s search will work out of the box.

Users, Groups, and Permissions

A big change in the way VulcanJS handles permissions is that admin users can now perform any action. In other words, any Users.canDo(user, action) check will always return true when the user is an admin. This simplifies permission logic a lot and is the behavior you want anyway in 99% of cases.

New Example Packages

Another big improvement is the addition of three new example packages that show you what can be done with VulcanJS. You’ll find all of them in the main repo.

example-simple

As its name indicates, the example-simple package implements the simplest possible VulcanJS app.

If you’re new to VulcanJS, you can follow along the video tutorial to get started.

example-membership

This example shows you how to build a simple members-only site, complete with a vulcan:payments integration to unlock member access.

example-permissions

This example implements a complex permission scheme, complete with different user roles. The two-part video tutorial (part 1, part 2) will show you how it’s done!

Other Improvements

The payment package now supports coupon codes.

withList and withDocument will now use “default” fragments if none are specified. These default fragments will simply ask for every publicly available schema field.

and will now use “default” fragments if none are specified. These default fragments will simply ask for every publicly available schema field. The forms-upload package now supports uploading multiple images in multiple formats for a single document.

package now supports uploading multiple images in multiple formats for a single document. The generated GraphQL schema now supports interfaces thanks to @ochicf’s work.

We also have SSR support for styled-components thanks to @hakimelek.

VulcanJS is now on Meteor 1.5.1.

The way <head> tags are added has been clarified and refactored. See documentation.

Join the Stream!

In other news, I’ve been livecoding every day at 9am Japan Time (5pm PST/8pm EST) to document the process of building an AirBnB clone with VulcanJS.

I’ve also been uploading all the videos to the YouTube channel, so you can catch up before the next stream!

I hope you enjoy this release, and see you very soon either on Twitch or on Slack.