Photo by u j e s h on Unsplash

I used a very SDL-first approach with this GraphQL server of my side hustle project, and I decided to switch to API Platform after a couple of days of development with some other framework.

It allows all CRUD operations to be ready when you are sure of your resources, and it’s fantastic in this way. But I didn’t want to rewrite some of them just to get it to fit some more functional requirements.

One of them is bulk-deleting records from a data-table like this:

I would like to share my latest fancy password generator with you.

It will look like this:

Its features are basically;

  1. Password strength slider with other form components via Quasar Framework.
  2. Password fields can be masked/unmasked, so there’s no need an additional check password field.
  3. Has fingerprint display as a strengthometer, thanks to Akryum/vue-progress-path.
  4. Generated password field has “copy to clipboard” and “move itself to new password field” button.

I should skip how to create first two current/new password fields, those instructions are well documented here.

Generated password field is also very simple;


This one is really short;

I am currently working on a project which requires authentication to its API server. API server built up on Laravel and uses Airlock (can be used Passport it doesn’t matter) for API authentication.

To authenticate the GraphQL requests on API server, we use attaching access token to headers option, like this;

import { ApolloClient } from 'apollo-client'
import { from } from 'apollo-link'
import { HttpLink } from 'apollo-link-http'
import { onError } from 'apollo-link-error'
const getHeaders = () => {
const headers = {}
const token = Vue.prototype.$token …

I’ve been using GraphQL since Vue-Apollo’s first release for every API development project and just like any other new working environment, Vue-Apollo has its own caveats. One of them is that you can’t simply update its own store without calling a mutation (in practice, actually a Query also updates the store but that not is the case for this subject).

Obviously, it’s completely logical from the developer aspect. If you’d like to keep your SSOT concept intact, this is the way.

But, and there’s always a but, there might be some occasions in which you may want to update your…

image courtesy of expo web site.

Today I wanted to take a look at the NativeScript and Flutter. It was long time ago since my last check on {NS} but Flutter was not even on my radar until today.

I’ve been working with Vue.js and Quasar Framework lately and they are doing very good job except a little performance issues on Mobile Apps. I see their fans and stars are growing each day and promising great deal.

As you may know there are couple frameworks out there in the wilderness that you can build Mobile Apps, PWAs, SPAs or simple web sites within. Only one of…

Head note: Sorry folks, project discontinued and cannot be maintained because of financial problems. Article here will stay for inspiration for other fellow developers.

Today I’d like to introduce you our new service called T9N Manager.

BLUF: It is free for personal and open-source projects. Also has paid version for commercial use with extended functions, in very soon future.

Building a large scale application is hard for teams, harder for single developers with low budget and much more harder for anyone if the application is multilingual.

We’ve experienced that first hand during our ongoing project, then T9N Manager was born…

You can create interfaces like this with Quasar Framework btw.

There are times that a title can’t explain enough the context of an article. A better one for this article is something should like “How to learn mutations of Array of Objects with vue-apollo in Laravel GraphQL” but it’s way too complex to explain a bit of code.

I try to write articles about the problems that occur while developing this project of mine and their solutions. For this time, it’s the mutation of Arrays.

I’m using Laravel in my projects since it’s version was 4ish. So it’s hard to break our bond after this long. Vue.js lets me seperate…

Here is the deal;

You are creating a form with a recurring list of fields, for example;

  1. a list of phone numbers, addresses, tags, names etc.,
  2. a wish list, inputs has search functions embedded with them,
  3. a todo app maybe? really? still in 21st century?
Maybe something like this?

If you are a JavaScript developer, you’d do;

  1. Create the template of a single line of the form inputs,
  2. Put some “add/remove” buttons or icons at the end of the line,
  3. Use jQuery clone command and append/prepend at the end or beggining of the list of lines,
  4. Reset the fresh line of input’s contents and…

In case you’ve missed, there is Quasar Framework. The team behind has done an amazing job.

I’m trying to learn it just after the Vue.js and Quasar made me more ambitious about how the client-side will evolve in this era.

Loading components and displaying what’s going on to user is a bit burden in any SPA and Vue.js is not an exemption. But Quasar has a lot of components to overcome this flow. You have Ajax Bar, Loading, Inner Loading, Progress Bar and Spinner under the hood.

It was little bit tricky for me to find out how to use…

It’s just a tip for someone who;

  1. Uses Laravel, Mix and Vue.js,
  2. Looking for a .env implemantation for a day, a whole day,
  3. Forks one and tries to improve it with dynamic .env file names,
  4. Finds out require() function with webpack can’t use variable module names, because of build-time confusions of it’s nature etc.
  5. Is already aware of Laravel’s .env functionality and asks himself what about that one?
  6. Then figures out there is even a section in their documentation about that!

So basically, just add whatever environmental variable to your .env files with the prefix of MIX_

You don’t even…

Onur Köse

Full-Stack Developer

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store