Newsfeeds

OpenSense Labs: Blend of VueJS and Drupal

Planet Drupal - 24 January 2019 - 5:55am
Blend of VueJS and Drupal Shankar Thu, 01/24/2019 - 19:25

That’s a beautiful view!”, you exclaim when you witness the sunset while standing on a beach with waves touching your feet. That is when you come out of the rut, leave behind the humdrum life of city and ‘really’ feel a natural beauty. There is another view in the digital landscape that will make you exclaim, “wow!”, and that is Vue.


Vue.js is fantastic for developers to build applications faster and make it more attractive and user-friendly. In combination with Drupal, one of the leading open source content management systems, Vue JS can be a brilliant option for web development needs.

A trip down memory lane: JavaScript frameworks

JavaScript framework is great for creating modern applications. There is an interesting piece from freeCodeCamp on JavaScript’s development and how it came through.

Browsers that we see today are did not have the sort of functionalities until the early 2000s. They were much less powerful and, performance-wise, there was no feasibility in creating intricate applications inside them.

Introduction of Google Maps and Gmail, that ran inside the browser, started bringing in the much-needed change. Asynchronous network requests were made a reality by Ajax. Eventually, development started happening on top of the web platform while the platform itself - that constitute browsers, the web standards, the browser APIs, and the JavaScript language - was being worked upon by engineers.

First major projects developed upon JavaScript were libraries like jQuery and Mootools that offered a nicer API for interacting with the browser in addition to the provision for solutions to bugs and inconsistencies among numerous browsers. Then, Backbone, Ember, Knockout among others burst onto the scene as modern JavaScript frameworks followed by React, Angular and Vue which have gained popularity in recent times.

The rise of VueJS


VueJS is one of the popular JavaScript frameworks. The official site of VueJS states that it is a progressive JavaScript framework that is used for developing user interfaces. In complete contrast to monolithic frameworks, it is incrementally adoptable and its core library emphasises on the view layer and can be easily incorporated with other libraries or existing projects. It is an astounding solution for intricate single page applications when leveraged alongside modern tooling and supporting libraries.

The usage of VueJS has seen a tremendous rise over the years as represented in the graph below.

Usage statistics of VueJS | Source: BuiltWith

VueJS scores heavily when it comes to high traffic websites. Organisations in need of a web development solution that can scale well during a high spike in traffic are opting for VueJS as can be seen in the graphical representation below.


Meritorious features of VueJS

Following are some of the benefits of VueJS:

Smaller in Size

A JavaScript framework triumph depends upon its size. Size of the JavaScript framework is directly proportional to its usage. With that being said, VueJS is very beneficial with its small size. The size of the VueJS framework is around 18-21KB which means it does not take much of your time while downloading and using it. Small size has no effect on the speed as it is fast and snappy.

Easy development

Adding Vue to an existing web project is quite easy and you can begin coding very swiftly without the need for knowing anything about JSX, ES2015 or build systems to get started. Familiarity with HTML and JavaScript in addition to reading their guide can assist in building something basic within a day that is very advantageous for a fast-paced development team where you are required to pick up something very quickly.

Moreover, it has a simple structure which is great for both small and large scale template development and saves a lot of time as a result. You can even trace the blocks with errors due to its simple structure.

Easy integration

It facilitates developers while integrating with existing applications which makes it a great prospect for developing new web applications and changing the pre-existing applications. The integration is possible because it has components for everything.

Exhaustive Documentation

The documentation of VueJS is very detailed, simple to understand and constitutes several code examples. It has a growing community of developers that can assist when needed.

Immense flexibility

It is simpler to write an app with VueJS swiftly and run it straight from the browser. Or you can even develop an intricate application leveraging ES6, JXX, components, routing, bundling among others. You can even write a template in HTML or in JavaScript or you can use JSX. You get the liberty to structure the application in a way that suits you.

Model-view-viewmodel architecture

Its MVVM architecture (Model-view-viewmodel) helps in facilitating two-way communications for easy management of HTML blocks.

Implementing VueJS with Drupal

Like VueJS, Drupal is very scalable and has been powering high-traffic websites around the world. It also has been outperforming other leading content management frameworks in this criteria.


The blend of Drupal and VueJS, which are both preferred for their scalability, can be a remarkable option. 

One of the ways of utilising VueJS with Drupal is the development of single page application as we have discussed in an earlier blog. It involves the installation of Drupal 8 on the local system followed by the creation of custom content types, adding views, and enabling REST API.

Then, you can start building front end with VueJS and create single page application. This would involve setting up of Vue project with Vue CLI. Once this is done, the addition of Vue router and Vue resource is performed. Vue router, the official router for VueJS, deeply integrates with VueJS core is similar to the angular router (of Angular JS) and react router (of React JS). Vue resource is the plugin for VueJS that offers services for making web requests and govern responses. Then, you can start modifying main.js file to use Vue routers and Vue resources and modify the app.js to work with the router followed by setting up of app components and routers.

Use case

Arbetsförmedlingen, Swedish Public Employment Service, benefitted from the amalgamation of Drupal and VueJS. Drupal Europe 2018 had a session that talked about how a video platform that was built for the Swedish government.


The platform used podcasts, video on demand and live broadcast for the dissemination of their content. They needed a new platform where these different sorts of media could be imported and metadata could be added for easily grouping them and filtering them out.

Drupal was the ultimate choice because of its great content management system, robust multilingual support, user management, and open source platform. Being lightweight with a production-ready build, VueJS was chosen as the desired JavaScript framework. Its compatibility with twig was a bonus. So, development recipe constituted Drupal, the combination of VueJS and twig and an API endpoint.

RESTful Web Services and Serialisation modules were enabled that gave the ability to create normal views as REST export and Axios, a promise-based HTTP client that has an easy-to-use API and can be leveraged in both the browser and NodeJS, was used for the consumption of data. Theme structure comprised of the twig, JS and CSS. Pluggable VueJs components were utilised and event handling configuration was shown through ‘Load More’ button.

Conclusion

The amalgam of Drupal and VueJS can be a rewarding solution that can help fulfil your digital transformation dreams.

We are devoted to providing ambitious digital experience to our partners through a suite of services.

Ping us at hello@opensenselabs.com to get the best out of Drupal and VueJS amalgamation.

blog banner blog image VueJS Drupal 8 Blog Type Articles Is it a good read ? On
Categories: Drupal

People think and behave differently in virtual reality than they do in real life

Virtual Reality - Science Daily - 24 January 2019 - 5:48am
By studying the phenomenon of contagious yawning, the researchers learned that people's reactions in virtual reality can be quite different from what they are in actual reality. They found that contagious yawning happens in VR, but people's tendency to suppress yawns when they have company or feel they're being watched don't apply in the VR environment. Further, when people immersed in VR are aware of an actual person in the room, they do stifle their yawns. Actual reality supersedes virtual reality.
Categories: Virtual Reality

Media Library Edit

New Drupal Modules - 24 January 2019 - 5:30am

A tiny module to add a missing "Edit" button to the Media Library widget that routes to the Media entity edit form.

Applies via third-party widget settings and the widget alter hook. Currently only applicable to fields with cardinality = 1.

Categories: Drupal

Finance Account

New Drupal Modules - 24 January 2019 - 5:30am
Categories: Drupal

Gnomecast #58 – Meet a New Gnome: Jen Adcock

Gnome Stew - 24 January 2019 - 5:20am

Join Ang and get to know one of the newest Gnomes, Jen, in this “Meet a New Gnome” episode of Gnomecast! Learn about Jen’s start in gaming and her plans for future games, conventions, and Gnome Stew articles! Will Jen’s game theme extremes be enough to help her avoid the stew?

Download: Gnomecast #58 – Meet a New Gnome: Jen Adcock

Keep up with all the gnomes by visiting gnomestew.com, following @gnomestew on Twitter, or visiting the Gnome Stew Facebook Page. Check out Gnome Stew Merch, and support Gnome Stew on Patreon!

Follow Jen at @JenKatWrites on Twitter, check out her website First Sight Second Thoughts, and support her on Patreon at patreon.com/jenkatwrites.

Follow Ang at @orikes13 on Twitter, or find her in the Misdirected Mark Google+ Community.

Categories: Game Theory & Design

Why Friendly AI Cheat in Ghost Recon Wildlands - by Tommy Thompson

Gamasutra.com Blogs - 24 January 2019 - 2:44am
Sometimes if you want to make your game work as intended, you need to cheat a little bit. In this video I examine one of the best 'cheating' AI systems in recent years: the companion AI of 2017's Ghost Recon Wildlands.
Categories: Game Theory & Design

Inverse kinematics for fingers explanation and example in Unreal Engine 4.21 - by Tom Kemna

Gamasutra.com Blogs - 24 January 2019 - 2:38am
Inverse kinematics seems like a daunting subject, but in Unreal Engine 4 it's surprisingly straightforward! I'll show an overview on how I applied used it in VR, and provide an example project where you can look into the code itself and experiment around.
Categories: Game Theory & Design

Group Mapping From Node

New Drupal Modules - 24 January 2019 - 1:28am

This module adds a configuration section to a node form to select a Group and make it part of it.

By Default, Group module does not allow to map a node to a group from the node itself, however, there is a specific way it needs to be done.

Group administration page has one section called Related Entities, where an existing or a new entity can be attached to a group.

Categories: Drupal

Image tagger

New Drupal Modules - 24 January 2019 - 12:38am

Create points on images, and render entities on hover.

One example use case for this module is creating "environment images" with products, and view a view mode of this product on hover. This way a user can add all of the products of an "environment image" to the cart, without leaving the context of the editorial content.

Categories: Drupal

Entity title length

New Drupal Modules - 24 January 2019 - 12:38am

GIves webmaster the hand to choose title length of an entity (Ex : node).

Categories: Drupal

200WAD API

New Drupal Modules - 24 January 2019 - 12:32am

A module that provides API integration to 200 Words a day service.

Only provides the m200wad_api.client service. You still need to implement either hook or Dependency injection to use this module to post to 200wad.

Development happens in Github

Categories: Drupal

So You Want To Compete With Steam: Epic, Discord, Kartridge, and RobotCache - by Lars Doucet

Gamasutra.com Blogs - 23 January 2019 - 10:03pm
Four new competitors have emerged to take on Steam: Epic, Discord, Kartridge, and RobotCache. Let's see how they stack up.
Categories: Game Theory & Design

Paragraphs Geographic Coordinates

New Drupal Modules - 23 January 2019 - 9:27pm

This will create a paragraph with two field and button to get the Geographic Coordinates, for Drupal 8. Also it will provide you the link of that location, it is usefull when you want to get Geographic Coordinates easily to use it any purpose.

Categories: Drupal

With CryEngine's SpatialOS GDK in the works, Crytek reaffirms open-platform goals

Social/Online Games - Gamasutra - 23 January 2019 - 1:07pm

In the wake of the big (now resolved) dispute between SpatialOS dev Improbable and Unity, Cryengine maker Crytek has reaffirmed its commitment to providing an open platform in a post on its blog. ...

Categories: Game Theory & Design

Promet Source: Better Instructions for Your Drupal Content Types

Planet Drupal - 23 January 2019 - 11:40am
Besides Title, the most common field label found on a content type form is Body. Of course, this is where you place the body of your content. It’s your blog post, your how-to instructions, or maybe an event description. You know exactly what needs to be provided in this field because you are the trained author. What happens when the scenario includes many authors with varied skills? Without clearly visible instructions for the form and the form fields, content authors can make mistakes. There are four default features in Drupal 8 that provide instructions for content authors.
Categories: Drupal

Master the art of creating and managing great live games at GDC 2019

Social/Online Games - Gamasutra - 23 January 2019 - 11:29am

Don't miss all the great GDC 2019 talks aimed at helping you become a better live game developer! Catch these talks from folks who've worked on Fallout 76, Armello, Path of Exile and more! ...

Categories: Game Theory & Design

OPTASY: Progressively Decoupled Drupal: Moving Towards a Standard Workflow

Planet Drupal - 23 January 2019 - 9:11am
Progressively Decoupled Drupal: Moving Towards a Standard Workflow silviu.serdaru Wed, 01/23/2019 - 17:11

Progressively decoupled Drupal has gone from concept to buzzword. Until recently, when we've started to witness sustained efforts being made to set up a standard workflow for implementing this architecture.

New dedicated modules have been developed to fit those use cases where just a few particular blocks, affecting the website's overall performance, need to be decoupled. All while preserving Drupal's standard robust features.

Features too famous among content editors and site builders to be sacrificed in the name of high speed and rich UX. 

We've gradually shifted focus from “Why would I choose progressive decoupling over a headless CMS?” to:

Categories: Drupal

EU Cookie Compliance Extras

New Drupal Modules - 23 January 2019 - 8:58am

Provides extra features for the EU Cookie Compliance module.

Categories: Drupal

Mediacurrent: Contrib Half Hour updates for 2019

Planet Drupal - 23 January 2019 - 8:40am

Just over a year ago I decided to repurpose an internal contrib-focused meeting and make an open meeting to support contributing to Drupal, called the Contrib Half Hour. Along the way we moved its time a little later to avoid conflicting with another important community initiative and then restructured it to add focused meetings for certain topics. To make things even better, almost all meetings have been recorded and uploaded to our Youtube channel. 2019 is going to see some additional changes that I'm excited to start on.

Our Q&A have issues

Throughout the year it became apparent that there was a huge overlap between the Q&A meetings, where we'd focus on general questions and discussions from the community, and the issues lab, where we'd focus on specific drupal.org project issues. While there's definitely a case for both, the overlap became somewhat naturally as the Q&A days had us often look at Drupal issues.

As a result of this we're going to combine the Q&A and Issues Lab days into one that'll be more open ended, letting us focus on general discussions some days and specific issues other days.

The testing shall continue until code improves

We're also continuing our dedication to helping people learn how to write code tests for their modules and themes. While during 2018 we focused on functional testing for Drupal 7 and 8, I'm aiming to expand our coverage (ba-dum-dum) in 2019 to also include unit testing.

I'd also like to open an invitation for folks to join our testing lab who are starting to write tests to join our labs where we'll be able to help.

Upgrade Lab: Time to upgrade

It was announced late last year that Drupal 9 will be released in June 2020 and that Drupal 7 and 8 will reach their end-of-life in November 2021. The main driving factor behind these dates is that the various libraries Drupal 7 and 8 depend upon will all have reached their end-of-life in November 2021 and so will no longer receive security updates from their respective maintainers. To avoid needing to come up with a plan to provide security coverage for a huge number of out-of-date 3rd party libraries, the Drupal core maintainers are dropping support when the other libraries also stop being supported.

It was also revealed that the usual upgrade anxiety for major releases of Drupal (5 to 6, 6 to 7, etc) would not be the case for Drupal 9. The plan is two release Drupal 9.0.0 and the final minor release of Drupal 8 on the same day, with the only difference being that all deprecated D8 APIs are removed from D9. As a result it will be relatively easy to upgrade from Drupal 8 to 9, “just” update all contrib code and custom code to no longer use the deprecated APIs along the way, and in theory everything should just work.

With this in mind we think it's time for people running Drupal 6 and 7 sites to start looking to upgrade to Drupal 8. Towards that goal we're going to have a regular meeting where we look at the steps to upgrade a site to Drupal 8 using the bundled Migrate system. We'll look at what's involved, how it works, how to plan for it, and how to help contributed modules support Drupal 8's upgrade solution. I'm intending that we'll be able to collaborate on improving both core and contrib's upgrade functionality, and in so doing help all sites looking to upgrade. I'm also hoping that we might be able to provide some assistance to folks attempting custom upgrades using Migrate's APIs, but we'll see how it goes.

Schedule

Our schedule for the next few months looks like this:

  • January 3: Q&A
  • January 10: Turning custom code into OSS
  • January 17: Q & A & Issues
  • January 24: Testing Lab
  • January 31: Upgrade Lab
  • February 7: Presentation TBD
  • February 14: Q & A & Issues
  • February 21: Testing Lab
  • February 28: Upgrade Lab
  • March 7: Presentation TBD
  • March 14: Q & A & Issues
  • March 21: Testing Lab
  • March 28: No meeting
  • April 4: Upgrade Lab
  • April 11: Presentation TBD
  • April 18: Q & A & Issues
  • April 25: Testing Lab
  • May 2: Upgrade Lab
  • May 9: Presentation TBD
  • May 16: Q & A & Issues
  • May 23: Testing Lab
  • May 30: Upgrade Lab
Same Bat Time!

We're going to continue meetings at the same time each month, using the same video conferencing provider:

And remember, if you're not able to join us then you can always catch up later as all meetings are recorded, when I don't forget to hit the record button that is.

See you then!

Categories: Drupal

Chromatic: Getting Ready for the Drupal Global Contribution Weekend

Planet Drupal - 23 January 2019 - 8:26am

This coming weekend is the Drupal Global Contribution Weekend where small local contribution groups volunteer their Drupal development at the same time throughout the world. This year there are local groups gathering in Canada, England, Germany, India, Russia, Spain, and the United States.

Categories: Drupal

Pages

Subscribe to As If Productions aggregator