Our Latest Blog Posts

latest-post

Stripe Connect is the fastest way to integrate payment into your marketplace.

In this tutorial we are going to integrate the stripe connect with Laravel.

To integrate the stripe connect you must need the stripe secret and the stripe key. You can get that credentials from your Stripe account.

So let's start integrating...

Installation

composer require srmklive/paypal:~2.0

Onboard the seller using Stripe connect

Define the route for onboarding the seller.

  Route::get('onboard-seller', [StripeController::class, 'onboard']);

Now on StripeController.php write the code for the onboarding link.

use Stripe\Stripe;
use Stripe\Account;
use App\Models\User;
use Stripe\AccountLink;

public function onBoard()
{
    $user = Auth::user();

    /** @var User $user */
    if (empty($user->stripe_on_boarding_completed_at)) {
        Stripe::setApiKey(stripeKey());

        if (empty($user->stripe_connect_id)) {
            /** @var Account $account */
            $account = Account::create([
                'type'         => 'express',
                'email'        => $user->email,
                'country'      => 'US',
                'capabilities' => [
                    'card_payments' => ['requested' => true],
                    'transfers'     => ['requested' => true],
                ],
                'settings'     => [
                    'payouts' => [
                        'schedule' => [
                            'interval' => 'manual',
                        ],
                    ],
                ],
            ]);

            $user->stripe_connect_id = $account->id;
            $user->save();
        }

        $user->fresh();

        $onBoardLink = AccountLink::create([
            'account'     => $user->stripe_connect_id,
            'refresh_url' => route('organization.dashboard'),
            'return_url'  => route('stripe.onboard-result', Crypt::encrypt($user->stripe_connect_id)),
            'type'        => 'account_onboarding',
        ]);

        return redirect($onBoardLink->url);
    }


    $loginLink = $this->stripeClient->accounts->createLoginLink($user->stripe_connect_id, []);

    return redirect($loginLink->url);
}

Please note that you have to generate routes for return and cancel URLs.

Once a merchant is successfully onboarded stripe will again redirect him to the return_url

Below you can find the code in which we managed the success callback.

public function onBoardResult($encodedToken)
{
    /** @var User $user */
    $user = User::whereStripeConnectId(Crypt::decrypt($encodedToken))->firstOrFail();

    $user->stripe_on_boarding_completed_at = Carbon::now();
    $user->save();

    return redirect(route('dashboard'));
}
June 02, 20231 minuteuserVishal Ribdiya

Posts

An In-Depth Look at the Adobe Premiere Pro Editing Tools

Let’s Explain Every Tool From The Toolbar In Adobe Premiere Pro

As a beginner video editor you often struggle with finding the right tools to perform certain actions while editing. And once you’ve finally found some tools to edit, you don’t know what they do. We’ve all been there, so here’s a quick and easy explanation of every tool in the toolbar.

Selection Tool (V)

selection_tool

The Selection tool allows you to perform basic selections and edits. This will be your default and primary mouse function when using Premiere Pro, so make sure to remember the short key for it, which is V on your keyboard. Along with making basic selections, you can also select edit points and perform trims where you can increase or decrease a clip’s duration.

Track Selection Tool - Forward (A) / Backward (Shift+A)

track_selection_tool

The Track Select tool will let you select all of the clips in a sequence, either forward or backwards. All you need to do is use the keyboard shortcut (A) and you can highlight multiple clips at once, in whichever direction you prefer. If you hold shift, the tool will select only one track instead of all of the tracks.

Ripple Edit Tool (B)

ripple_edit_tool

One of my favorite shortcut tools in Premier Pro, Ripple Edit is a trim tool used to trim a clip and "wave" the rest of the clips in a timeline. This will effectively close the gap between the two editing points immediately at the point where you will be editing. This can save a lot of time when editing on-the-fly, as you don't have to manually navigate the rest of your timeline — especially if you're dealing with videos or sequences longer than a few minutes.

Rate Stretch Tool (R)

rate_stretch_tool

The Rate Stretch tool will help you speed up or slow down the clips in your order. When using the tool, note that the in and out points of the clip will always be the same. You will change the duration and speed of the clip according to the amount you "stretch" through the trim. For example, extending the outpoint of a clip will slow down the speed, while shortening the clip will speed up the duration.

Slip Tool (Y)

slip_tool

For visual editors who prefer to make their cuts based on specific images of the corresponding frames, Slip Tool is a great resource for working directly from the monitor. The slip tool "slips" the source of the clip in and out, but does not move it on the timeline.

Slide Tool (U)

slide_tool

Like the Slip Tool, the Slide Tool allows you to work with your clips drawn on the monitor. However, the slide tool works by "sliding" the clip on the timeline, while keeping the source in and out points the same. After sliding the clip, the tool will also close all the gaps.

Pen Tool (P)

pen_tool

Moving on to editing shortcuts and tools to help with keyframes and other elements (such as audio), the Pen Tool is your best choice for adding keyframes to any clip. By selecting the Pen Tool (P), you can click on any point on your clip to add a large number of features, including the opacity, scale, position, and even volume of the audio clip.

January 27, 20223 minutesauthorKishan Savaliya
Why developer choose React JS

There are a few reasons why developers choose ReactJS and they are :-

  1. JavaScript XML or JSX
  2. React use Virtual DOM
  3. ReactJs Props
  4. One-Way Data Binding
  5. Quick Rendering
  6. SEO Friendly
  7. Helpful Developer Toolset

JavaScript XML or JSX

It is a markup syntax that describes the appearance of the application's interface. It creates the same syntax as HTML and is used by developers to create feedback elements.

JSX is one of the best features of React JS as it makes it very easy for developers to write building blocks.

React use Virtual DOM

This feature helps speed up the app development process. The algorithm allows the web page to be copied into React's virtual memory.

The original DOM there is represented by a virtual DOM.

ReactJs Props

ReactJS Props allows developers to move custom development data into its specific UI components. This helps in rendering JavaScript components and improving the UI development experience.

One-Way Data Binding

Feedback uses a stream of data that is directionless, forcing developers to use the callback feature to edit components and prevent them from editing directly.

Control of data flow from a single point is achieved with a JS app architecture component called Flux. It really gives developers better control over the application and makes it more flexible and effective.

Quick Rendering

This means that a small edit made at the top level can hit the app UI hard. Thanks to the virtual DOM, it can be tested first to determine the risk level with each change before finalizing all changes.

SEO Friendly

To make any application work well, it is important that the search engine selects it; Two factors are important for applications: fast load time and rendering. If both of these boxes are ticked, your app will rank higher on Google results pages.

React's super-fast rendering feature drastically reduces page load time, enabling businesses to rank their apps on the first page of Google search.

Helpful Developer Toolset

Facebook has included many developer tools in the React JS framework for React and Chrome, and they greatly help developers find parents and child components, observe their hierarchies, and test their current status.

Through self-learning, developers will be able to use emerging technologies in real, live, projects.

So, developers choose ReactJS hope this help.

January 26, 20222 minutesauthorVatsal Sakariya
Points to Learn from Your Competitors about Beta Testing
Currently there is a lot of competition in the market. As everybody’s technology and strategies are improving day by day, there is a huge opportunity to learn from the others businesses too. Our biggest learning comes from our Competitors. They can teach us many things which you can easily grasp and improve yourself. User Acceptance Test is a software testing procedure executed in a real-world scenario. UAT has two types - Alpha and Beta testing. Alpha testing takes place in the company whereas beta testing is field testing. The software is tested in real-world working conditions which takes place at the customer’s site.

Below are the followings points which can we learn from other competitors about beta testing.

  1. The important thing that you can learn from your competitors is how they proceed with the beta testing and how they strategise their every action. They prepared several instructions before proceeding with the beta testing. Proper project planning should be written down and agreed upon by the other fellow mates. The objective of the beta testing and how you’re going to achieve that goal should be clear.

  2. If you’ve ever looked at the team of other competitors who include professional beta testers, they are able to achieve their work more easily. You can also gather a team of professionals with experience in the beta testing. Their opinions and aspects would be totally different which will provide various working conditions which can be used for the beta testing procedure.

  3. If you want to improve your structure of software or modifying it, you can learn how the other competitors take feedback from their users. By taking the proper feedback from their users they alter every single of the bugs or error which shows up during the beta testing procedure. You can also improve your software by taking feedbacks from your user when they start using the beta software. The feedback can be in the form of bugs report, quotes, suggestions or surveys.

  4. Learn the major tools which are being used by the other software testing companies and try to understand the concepts of different tools which are used in the beta testing procedure. Thus it would be a great thing to learn from the other top companies and follow their footsteps. Try using different tools and adapt them.

  5. Many of your competitors may use beta testing as a marketing strategy. They strategise their market planning and create awareness among the users about the beta software. It helps in creating a buzz among the beta users and creates eagerness among them. Thus you can also use this type of strategy to engage your beta users and create more eagerness among them. This will help in the involvement of a beta user if there is a new version of the beta software which is going to update.

  6. If you want to make your application more useful, you need to understand what platforms you are using to test your software. Learn from the other competitors and see which platforms they are using for beta testing of their software. You can learn to release an app which can perform on more than one platform with more than one different ways of performance. This is the best way to make your software more usable by doing tests on different platforms which you can learn from your competitors.

  7. You can use the tool which your competitors use to save time by taking the valuable feedback from the beta users. This will help you to take valuable feedback from the user directly to your tool services. You don’t have to ask them over a phone or visit them. This tool will help you to set up a particular email ID which can be used to catch feedback from the users.

  8. You can learn simple to complex things from your competitors. The simplest thing which your competitors can teach you is the patience and integrity. You don’t have to falter when your QA testified software comes up with a lot of errors and bug while running beta testing. There are many companies which face failures and still come up with a great solution for their services.

  9. Your competitors may use quantity of beta testers to test their software in a real You can also get a large number of beta testers who are professional in testing the software under real-work conditions. This will help you to get a plenty of feedback on different aspects of your software. Always look for the quality beta testers and invite them for beta testing.

  10. The last thing you can learn from your competitors is how they handle their feedback and bugs reports. How fast they can be to provide the solution to that problem. You can have an effective team of experts which can take this valuable feedback and without wasting any time comes up with a solution and makes your software error Major companies solve their bug issue in just a few times after getting a feedback.

January 26, 20224 minutesauthorNayan Patel
How To Setup SSH key in Windows

In this article, I show you how to set up SSH in windows10,

first of all, you have a question what is the ssh key, and why do we need it?

you can watch this video or follow an article.

Let me explain a bit more, An SSH key is a secure access credential used in the Secure Shell protocol. SSH keys use key pairs based on public key infrastructure technology, the gold standard for digital identity authentication and encryption, to provide a secure and scalable method of authentication. as you know all developers use git for pushing, fetching, and pulling their code from GitLab, GitHub, and any other tools.

So, using SSH key you can use git for your repository and get authentication from GitHub or any tool where you add ssh.

When you set up an SSH key, you create a key pair that contains a private key (saved to your local computer) and a public key.

So, Let's Set up SSH for Git on Windows

Step1: Set up your default identity

firs of all open your terminals like gitbash or cmDer.

  • Now, type the command ssh-keygen and enter and command prompts you for a file to save the key in:

$ssh-keygen Generating public/private rsa key pair. Enter file in which to save the key (/c/Users/emmap1/.ssh/id_rsa):

  • Press enter to accept the default key and path,/c/Users/<username>/.ssh/id_rsa. or you can specify the path and then press enter.

  • Enter and re-enter a passphrase when prompted.

  • final out put in your terminal is look likes,

    ssh-keygen 
    Generating public/private rsa key pair.
    Enter file in which to save the key (/c/Users/shailesh/.ssh/id_rsa):
    Created directory '/c/Users/shailesh/.ssh'.
    Enter passphrase (empty for no passphrase):
    Enter the same passphrase again:
    Your identification has been saved in /c/Users/shailesh/.ssh/id_rsa.
    Your public key has been saved in /c/Users/shailesh/.ssh/id_rsa.pub.
    The key fingerprint is: e7:94:d1:a3:02:ee:38:6e:a4:5e:26:a3:a9:f4:95:d4 shailesh@InfyOm-PC
  • Let's navigate to path cd /c/Users/shailesh/.ssh/ and fire ls command for confirming file generated or not.

  • ls command displays two files, one for the public key (for example id_rsa.pub) and one for the private key (for example, id_rsa) if successfully generated.

Step 2: Add SSH in Bitbucket.

  • let's fire command cat id_rsa.pub on the terminal and make sure you stay on the .ssh directory.
  • Now, you can see the key in the terminal. so, copy it and add it to bitbucket. click here for Github to add SSH to your account.

Step 3: Add the SSH key to the ssh-agent.

fire command $eval ssh-agent into the terminal and you get output like Agent pid 9795. 9765 PID may be different in your PC.

Step 4: Check Login in terminal

fire command ssh -T git@bitbucket.org in your terminal and you can get output like

Warning: Permanently added the RSA host key for IP address '104.192.141.1' to the list of known hosts.
authenticated via ssh key.

You can use git to connect to Bitbucket. Shell access is disabled
January 10, 20223 minutesauthorShailesh Ladumor
Importance of Employee Motivation

Importance

Motivation allows management to attain its goals. Without motivation, It’s too difficult to attain organizational goals without motivation workplace could be placed in a very risky position.

The motivated employee can lead the higher productivity and allow the organization to achieve a higher level of output. Imagine having employees without motivation for work, they will probably use their time at their desk surfing on the internet for personal pleasure, Gossiping with others, even applying for other jobs as well. This Is a waste of your time and your resources.

Benefits of Motivated Employees

Employee motivation is highly important for each organization since it brings many benefits which include.

  1. Improve Employee Efficiency

  2. Improve Employee Commitment

  3. Ongoing employee Development

  4. Improve Employee Satisfaction

  5. Higher Productivity level

  6. Lower absenteeism

  7. Better problem-solving

  8. Creativity and Innovation

  9. Pro-Active workforce

  10. Goal Oriented workforce

  11. a Better understanding of the End Goal

  12. Lower turnover

  13. Better as a Team Player

  14. Influence to another worker

  15. Great reputation leads to strong recruitment

  16. Client-centric

To know more about Employee motivation, kindly read the upcoming monthly blog.

January 04, 20223 minutesauthorMariyam Bemat
Top 5 web design trends that will shape the future

Here are a few modes for web design trends

Dark Mode

They look very modern and also very pleasing to the eye. They look amazing and stand out from other colors. Sometimes the most stunning web designs begin. Dark themes are great for OLED screens, which extend the life of the screen and also save power. The best part is that it is very easy to see and not too bright. If you are thinking of keeping something simple you can simply choose a dark mode and it can easily have a good effect on your mood.

3D Elemental

3D visuals are very interesting and they always make people wait for them. This is more about technology and the price tag and so the designers are working together to develop a 3D elemental design without any use of NASA tire equipment. Until VR becomes a trend, one can easily use these 3D designers and experience the reality of matter. Interactive 3D design lasts longer and looks more attractive at the same time. So you can also use this to break down the boundaries between space and reality. It looks great and you will enjoy the mode to the fullest.

Floating Elements And Layers

If you like something with more depth then this is for you as these soft shadows with floating elements add more life to the web page. It has a 3D light look and is not just graphics. One can use photos, text and move it forward. These effects and the feel of the web page will be lighter and the floating elements will make it more beautiful. If you are a travel company you may choose to have this one for your site.

Graphics and Photography

If you want to make it a little more memorable, you need this. You can put graphics on top of your favorite photographs. You can also be creatively wild and get your creativity for it. This can be versatile as it is like a collage of items with which it can add special versions and features to make it look more attractive. The person needs to match the pictures and graphics according to the brand personality. How people can interpret a photograph can take away the style. It's a sophisticated theme.

White Space With Solid Frames

Here you can easily play with solid compositions and also use different ways of using white space and with that you can give a better texture to their style and also use cleaner framing. Lots can be done here with fitting shapes in white spaces. This can brighten up all the visuals and make it very easy to order and separate different parts of the page. Designers love this type of framing and this is a simple website design if you want simplicity.

December 31, 20213 minutesauthorKishan Savaliya
CSS Vendor Prefixes in Browser

Vendor Prefixes

The CSS Browser (Vendor) prefix is a way to add support for new CSS features for the browser before those features are fully supported across all browsers.

When CSS3 is popular, choose all sorts of new choices. Unfortunately, not all of them were browser-supported. The developers of the vendor service organization help to use those innovations and need to use them without waiting for each browser to become available.

CSS prefixes

The prefixes used are:

  • -webkit- Chrome, Safari, newer versions of Opera, almost all - iOS browsers.
  • -moz- Firefox.
  • -o- Old versions of Opera.
  • -ms- Microsoft Edge and Internet Explorer.

When using a Vendor prefix, keep in mind that it is only temporary. Many of the properties that used to have a Vendor prefix attached to them are now fully supported and not needed.

How Should You Use Them?

You can easily use vendor prefixes, simply by adding them before the property, like this:

.element {
  -webkit-transition: all 1s linear;
  -moz-transition: all 1s linear;
  -ms-transition: all 1s linear;
  -o-transition: all 1s linear;
  transition: all 1s linear;
}

In this case, you ensure the property is supported in browsers.

It is a good practice to put the unprefixed property at the bottom. This way, by using the cascading nature of CSS, you ensure that when the property is fully supported, this is the one it will use.

Which Property Needs Prefixing?

A good thing would be to stop guessing and check out these websites: (http://shouldiprefix.com/) (https://www.w3.org/TR/css-2010/#properties/)

A good way to check which property is available for use without a Vendor prefix is to check the CanIUse service. There you can see which browsers currently support which properties.

November 21, 20213 minutesauthorPayal Pansuriya
How to Start and Stop Jobscheduler in Android

Android apps will work in the background (Android Background Service) mode to listen to broadcast messages, push services, and many other features that extend the functionality of the app. Similarly, it comes with job scheduling.

The Android Job Scheduler is a very efficient way of dealing with things. It will provide a wake lock for the app by default, which will provide a guarantee that the device will stay awake until the work is completed. Also, it provides better battery performance, which is the key point in any application.

activity_main.xml

This tutorial deals with the Android JobShedular UI is easy. Just two buttons to start and stop jobscheduler.

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
xmlns:app="http://schemas.android.com/apk/res-auto" 
xmlns:tools="http://schemas.android.com/tools" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
tools:context=".MainActivity" 
android:orientation="vertical">

<Button 
android:id="@+id/btn_start" 
android:layout_width="match_parent" 
android:layout_height="wrap_content" 
android:text="Start Service"/>; 

<Button 
android:id="@+id/btn_stop" 
android:layout_width="match_parent" 
android:layout_height="wrap_content" 
android:text="Stop Service"/>;

<LinearLayout/>

MyJobScheduler.Java

Add Android JobScheduler, Job Scheduler starts from this class where we can find methods that will start and stop work.

This method deals with the job start where we can also initialize our MyJobExecutor.java class so that we can execute our task as the job starts.

import android.app.job.JobParameters; 
import android.widget.Toast; 

public class MyJobScheduler extends android.app.job.JobService { 

private MyJobExecutor jobExecutor; 

@Override 
public boolean onStartJob(final JobParameters params) { 
jobExecutor = new MyJobExecutor() {

@Override 
protected void onPostExecute(String str) { 
Toast.makeText(MyJobScheduler.this, str, Toast.LENGTH_SHORT).show(); 
jobFinished(params,false); 
} 
}; 
jobExecutor.execute(); 
return true; 
} 

@Override 
public boolean onStopJob(JobParameters params) { 
jobExecutor.cancel(true); 
return false; 
} 

}
December 25, 20213 minutesauthorVivek Beladiya