Showing posts with label Web Development. Show all posts
Showing posts with label Web Development. Show all posts

Friday, 4 October 2019

React Learning Resources

In the time of information overload and rapid technology advancement it is really hard to follow and try out all the interesting projects, articles and samples. I have compiled a list of resources for React Java Script framework that I am interested to try and review and share. I will split resources by topics.

Sample projects

"Build your first React website using Create React App."

Building a React Universal Blog App: A Step-by-Step Guide
"...In this step-by-step tutorial, I’ll show you how to build a React Universal Blog App that will first render markup on the server side to make our content available to search engines. Then, it will let the browser take over in a single page application that is both fast and responsive..."

Build a movie search app using React Hooks
"Build a movie search app using React Hooks React hooks is finally . And I know there has been a whole lot of excitement around the possibilities that this new set of APIs present"

Build a Tic Tac Toe App with TypeScript, React and Mocha
"Learn how to compose a tic-tac-toe app with React and TypeScript components."

How to create a simple blog with Node & React
"In this article you will learn how to create a personal blog using React & Node. You will also learn how to config your own Webpack, Redux, React-Router and start your node server from scratch. This tutorial does **not contain authentication process"

How to Build a Productivity Application in React: Part 1
"Building a functional to-do list"

Authentication with React

Secure Your React and Redux App with JWT Authentication
"Learn how to add JWT authentication to your React and Redux app. Use Redux middleware to make secure calls to an API. ... Since we are using JWTs, we just need to remove the token // from localStorage"

React Best Practices and Tips

React Best Practices: Maintaining Large Scale Projects
“The real cost of software is maintenance over time because change is inevitable”

React Redux Tutorial – Efficient Management of States in React
"React is one of the most popular JavaScript libraries which is used for front-end development. It has made our application development easier and faster by providing the component based approach..."

High Performance React Progressive Web Apps
"Creating a fast web application involves many cycles of measuring where time is wasted, understanding why it’s happening, and applying potential solutions."

React Courses


React resources on YouTube 




Native Mobile Apps

Creating an Audio Player in React Native
"In this tutorial, you are going to build a functioning interface for an audio player in React Native"

How to use Ionic and React to build a Mobile App
"In this post, we’ll show you how to get started using Ionic with React by building a simple demo app from scratch."

Top 5 Open-Source Apps in React Native You Must Know
"In this article, we are taking a look at a few open-source React Native projects, which we recommend you to check out when starting your next mobile app."

Mimic WhatsApp stories using React Native and Firestore
"Stories are now a trending feature of most social media applications, including WhatsApp, Snapchat, Instagram, and others. This feature gives us another avenue to share media in the form of images, videos, and text to your contacts or friends, and let you know who viewed your story."

Testing React Apps

How to Test a simple React component
"In the first part of this series, we will learn how to test components with local state by testing the changes reflected in our UI."

Books







Wednesday, 25 September 2019

Vue.JS Learning Resources

In the time of information overload and rapid technology advancement it is really hard to follow and try out all the interesting projects, articles and samples. I have compiled a list of resource for Vue JS framework that I am interested to try and review and share. I will split resources by topics.

Sample projects


"This tutorial will help you build a realtime commenting system with Laravel, Vue.js and Pusher. We’ll create a basic landing page, a comments feed, and a submission form where users can submit comments that will be added to the page and viewable instantly. This tutorial is the Laravel version of this one, and when setting up Vuex and Vue.js you can refer to the same sections in that tutorial."

"Recently, me and my friend built a location-based chatroom called — Near (https://near.idgo.me). People can talk with each other nearby in a web app. We would like to share what we did and how to make it. Please feel free to give us feedback by replying this article."

"Building a Pomodoro Timer with Vue.js. How I learned a lot trying to make a timer for a challenge and then determined to make a full featured one."

"I love lists. I keep everything I need to do (too many things, usually) in a big to-do list, and the list helps keep me sane throughout the day. It’s like having a second brain!"

How To Create a Real Time To Do List App with Vue, Vuex & Firebase Tutorial
"Hello! In this tutorial, we’ll be using Firebase and Vue to create a very simple project that will update your Firestore and your VueJS project in real time. We’re going to be creating a simple to do list before we get started – you need to have NodeJS & NPM installed."

How to Drag and Drop File Uploads with Vue.js and Axios
"In this tutorial we are going to combine all of these tricks to make the ultimate file uploader with VueJS and Axios. We will allow users to select any amount of files, remove the ones they don’t, show a preview, and show a status bar for uploading the files."

Authentication with Vue.js


"We will build a simple project that handles authentication and prepare basic scaffolding to use when building the rest of the app."

How to setup JWT authentication with ASP.NET Core 2, Vue.Js, and Facebook OAuth. 

"Create a simple VueJS frontend app running on a Vert.x backend, providing login with Google OAuth2 from scratch"

"In authenticated frontend apps, we often want to change what's visible to the user depending on their assigned role. For example, a guest user might be able to see a post, but only a registered user or an admin sees a button to edit that post."

User Registration and Login with Vue.js and Vuex
"In this tutorial we'll go through an example of how to build a simple user registration and login system using Vue.js and Vuex + Webpack 4.16"


Vue.JS Best Practices and Tips


"In this article, I’d like to share a few common issues that you may have to deal with when working with Vue.js."

"As you write applications with Vue and take advantage of its support for components, you will need to decide how to manage the state of your application..."

"In this post, we will look at how to use render functions to unleash the power of JavaScript by using templates in Vue."

Working with Dynamic Components in Vue.js
"To understand what is a dynamic component, let's consider an example. Suppose we are developing a commenting platform where user can come and post a comment on the article. Posting of comment for the logged-in and logged-out user is different..."

How to avoid SOLID principles violations in Vue. JS application
"In this article I’d like to discuss how can we avoid SOLID principles violation in our Vue.JS project."

Vue.js Series
"Welcome to the Vue.js Series. In this blog series, we are going to go through a detailed example of how to use Vue.js to create a fully functional client application that consumes the .NET Core 2.0 Web API server."

Creating Vue.js Client Side – Two-way binding and v-model directive (Create and Update Components)
"We are still missing the create and update components and in this article, we are going to implement these missing parts. With this post, we are going to finalize our application development process."

I created the exact same app in React and Vue. Here are the differences.
"Having used Vue at work, I had a fairly solid understanding of it. I was, however, curious to know what the grass was like on the other side of the fence — the grass in this scenario being React."

How I built a web app with Vue, Vuetify and Axios
"In this article, we will be building a Vue.js Application supported by Vuetify and Axios. The aim of this article is to implement a movie application which will be calling on an API"

Five tools to speed the development of your Vue.js applications.
"Not long ago Vue.js passed React in GitHub stars. Although a somewhat shallow metric to measure, no doubt that this is only an indicator of the great success and popularity Vue.js is gathering in the community in 2018.As we use more great frameworks like Vue to build new applications."

Optimize the Performance of a Vue App
"Single-page applications sometimes cop a little flack for their slow initial load. This is because traditionally, the server will send a large bundle of JavaScript to the client, which must be downloaded and parsed before anything is displayed on the screen. As you can imagine, as your app grows in size, this can become more and more problematic."

An introduction to dynamic list rendering in Vue.js
"An introduction to dynamic list rendering in Vue.js. List rendering is one of the most commonly used practices in front-end web development. Dynamic list rendering is often used to present a series of similarly grouped information in a concise and friendly format to the user"

Using Renderless Components in Vue.js
"Most Vue apps need asynchronous HTTP requests and there are many ways to realize them: in the mounted() lifecycle hook, in a method triggered by a button, within the store (when using vuex) or in the asyncData() and fetch() methods (with Nuxt)."

Lazy Loading Individual Vue Components and Prefetching
"The purpose of lazy loading is to postpone downloading parts of your application that are not needed by the user on the initial page load which ends up in much better loading time."

How to implement client-side pagination in Vue.js
"In this post, you'll see a simple example of how to implement client-side pagination in Vue.js"

Dockerizing a Vue Application
"This tutorial looks at how to Dockerize a Vue app, built with the Vue CLI, using Docker along with Docker Compose and Docker Machine for both development and production. We’ll specifically focus on"

The difference between COMPUTED and METHODS in Vue.js
"Now it’s some months that I’m using Vue.js and something that made me confused for the first few weeks was the difference between computed and methods."

Top 10 most popular Vue.js tutorials
"I’ve created a list of the 10 most popular Vue.js tutorials based on the page views."

How to Add Internationalization to a Vue App
"¡Hola. Bonjour. Ciao. 你好. Here is how you add internationalization to Vue."

Creating Custom Directives in Vue.js
"Creating Custom Directives in Vue.js. Directives are special attributes with the `v-` prefix. A directive’s job is to reactively apply side effects to the DOM when the value of its expression changes."


How To Use Google Maps With Vue.js Apps
"Building a Vue.js address book app with maps to display a contact’s location"

Getting Started with Vuetify 2.0
"With the release of Vuetify 2.0, now is the perfect time to start learning how to use this popular component framework."

Vuetify.js - Vue Material Design Component Framework
"Vuetify is a progressive framework that attempts to push web development to the next level."

Building Frontend Using Vuetify
"In this article, you will learn how you can quickly build an attractive and interactive frontend very quickly using Vuetify."

Simple Vue.js Form Validation with Vuelidate
"Thanks to Vue's reactivity model, it's really easy to roll your own form validations. This can be done with a simple method call on the form submit, or a computed property evaluating input data on each change."

Deploying a Vue.js app to Netlify
"Setting up a Continuous Integration pipeline from _A to Z_ that: runs tests, builds the app and deploys it to Netlify. Let’s do it!"

What is Template in Vue.js
"...We have learnt in the earlier chapters, how to get an output in the form of text content on the screen. In this chapter, we will learn how to get an output in the form of HTML template on the screen..."

How to use Web-Components in Vue
"Learn how to seamlessly integrate and use Web Components in VueJS, including custom properties and events"

How to implement and use Google reCaptcha with Vue.js and .Net
"This article will cover how to implement google reCaptcha v2 using Vue.js and .Net."

A few handy Vue.js tricks
"1, 2, 3, 4, 5, 6 Handy Tips"

How to Create an Interactive YouTube Video Selection in Vue.js
"In this post I want to share my observations during my implementation of an **interactive** YouTube Video selection in Vue. Maybe this can save you some time, if you plan to do the same."


Vue.Js Courses

Vue.Js resources on YouTube 

Native Mobile Apps


Vue Native
"Vue Native is a framework to build cross platform native mobile apps using JavaScript"

NativeScript and Vue.js
"Vue.js is a lightweight framework for building engaging user interfaces. NativeScript powers cross-platform (truly native) mobile apps, using the web skills you already know. Combined they are a fantastic pair for developing immersive mobile experiences."


Testing Vue.Js Apps


Vue Test Utils
"Vue Test Utils is the official unit testing utility library for Vue.js."

Testing Vue with Jest
"In this article to show how to setup Jest in an Vue.js application. This will guide you through everything in a blank Vue.js template to test components and more"

How to Test Your Vue Project with Jest and Nightwatch
"Testing is a vital part of the development cycle and a part of life for programmers and developers. ..."

Unit Testing in Vue: What to Test?
"Every developer knows that they should be writing tests, but in reality, many of us don’t do it at all or we aren’t doing enough of it. The problem isn’t the lack of tools, it’s that we don’t have a clear understanding of what these tools are meant to do."

Books


"Explore Vue.js to take advantage of the capabilities of modern browsers and devices using the fastest-growing framework for building dynamic JavaScript applications. You will work with the power of the Model-View-Controller (MVC) pattern on the client, creating a strong foundation for complex and rich web apps."



Thursday, 4 July 2019

Code format and beautifier for code snippets in blogger.com

In almost all my blog posts I show code snippets or command line examples. To make code examples more readable they need to have code highlighting. One very nice and easy option that I liked for code highlighting is to use github gists. On my github I created one multi-file gist. To include only one file from multi-file gist use code sample below. Replace name before js with one provided by gist’s tag. Replace FileName with name of the file in the gist.

The sample of commands I like to show in the sample box that is not prettifying the text. Use the sample code below to wrap the sample command between “pre” tags.

Example of the sample command box.
C:\run_me.exe

Sunday, 17 April 2011

Install Joomla! 1.6 on IIS 7

In the previous post Joomla! Installing XAMPP on Vista I described installation of the XAMPP package for Windows 7 and Vista. XAMPP package installs Apache web server, MySQL database, phpMyAdmin, FileZilla FTP Server and many more. With XAMPP it is really easy to install and configure Joomla!.

In this post I will show how to install Joomla! 1.6 on IIS7 on Vista or Windows 7.  I will be performing installation on Windows 7 with no IIS installed. We will install PHP support for IIS 7, MySQL database (I will not be covering installation of Joomla! with SQL Server just yet), phpMyAdmin for maintaining databases.

In my first attempts. I tried to install Joomla! using Windows Platform installer from Microsoft/web site, which did not work completely. Installer did not install properly IIS, failed to register PHP with IIS 7, did not configure MySQL and I got mixed up with credentials for Joomla! and MySQL. My decision was to start over and  install all required components manually.

Before we begin

In my explanations of the steps below I will assume that you are familiar with installation of basic windows components. I will only note most important points of the installation. If you require detailed explanation of the some of the installs I will provide reference section with links to sites with more detailed steps.

Install IIS 7

In this step we will perform basic installation of IIS 7. Open Control Panel>Programs>Program and Features>Turn Windows Features on or off.

image

Navigate to Internet Information Services and make sure you tick it first. It will select all required modules to run IIS7. Then expand tree to navigate to Application Development Features and tick CGI. I will be also doing ASP.NET development so I ticked ASP.NET Development and this also selected .Net Extensibility and other required modules. If you do not need any of the .Net features, don’t tick it. CGI component is needed to use FastCGI module of the PHP package, which we will be installing in the step below. Click OK.

image

When installation is complete open http://localhost to see if it installed OK. You should see similar screen to one below.

image

Installing PHP support for IIS7

Now we are going to install PHP support for IIS 7. Download latest PHP windows package from php.net site.

image

Now follow installation Wizard steps.

image

In the Web Server Setup select IIS FastCGI module. Click Next.

image

I selected to install all items including Register *.php to open automatically with PHP.

image

Click Finish.

I would also suggest installing PHP Manager for IIS package. It will add PHP configuration module into IIS Console.

image

This is an example PHP configuration screen. I find it is handy when you need to do some tweaks to PHP configuration.

image

Copy Joomla! CMS files to ISS 7

In this step we are going to copy Joomla! package files into C:\inetpub\wwwroot folder and create JoomlaDev Web Application to see if we can run PHP web sites. Configuration of Joomla! site will be done after completing of the MySQL database server installation. Download Joomla! CMS package from the joomla.org site. Unzip it and copy folder to ISS7 directory C:\inetpub\wwwroot. I named folder as JoomlaDev. Open IIS Management Console. Right click Default Web Site and select Add Application.

image

Enter fields as shown above if you are using the same names. Click OK.

image

JoomlaDev Application is created. Use Browse to open the site. If everything OK you should see the screen below.

Image[46]

Install MySQL on Windows 7 or Vista

Congratulations if you got that far, but don’t get too excited as we got a little be more work to do. Now we are going to install MySQL server. I am not going to cover using Joomla! with SQL Server here. This can be a topic for future posts. We need to  download, install and configure MySQL database and phpMyAdmin package for managing databases. Get MySQL Community Server from mysql.com site. PhpMyAdmin can be downloaded from phpmyadmin.net site.

image

Run MySQL Installation Wizard.

image

Run through wizard steps and click Install at the end.

image

Leave Launch the MySQL Instance Configuration Wizard tick box on and click Finish.

image

This will open MySQL Server Instance Configuration Wizard.

image

We will go through the Detailed Configuration steps. Click Next.

image

This is a Development Machine, so this option is what we need.

image

Leave as it is on Multifunctional Database and click next.

image

Installation Path as a location for database files will be fine.

image

I do not expect a lot of connection during development work, but I like to have more options at hand so I selected Online Transaction Processing Option. You can select what is more suitable in your case.

image

All looking good. Tick Add firewall exception for this port to enable access for phpMyAdmin. phpMyAdmin uses TCP/IP connection by default. If you are worried about security you can setup phpMyAdmin to use socket connection. It is possible in our case to use socket as we are installing MySQL server on the same machine as IIS 7 web server.

image

I am developing website in English and Russian Languages so the second option is the best one for me. Click Next.

image

We will set our Database Instance Name as MySQL. I like to perform some commands in the command prompt so I also ticked Include Bin Directory in the Windows PATH.

image

Enter a password for root. This is a development database and will not be accessed outside development machine. So I did not ticked Enable root access from remote machine or Create An Anonymous Account. For build and testing servers I will use a different installation of MySQL and IIS 7. Click Next.

image

Excellent! Click Execute when you are ready.

image

We are done! Click Finish.

Install and Configure phpMyAdmin

Installation of MySQL Server is done. Now we are going to configure phpMyAdmin package, which will help us to manage MySQL Databases. If you haven’t downloaded phpMyAdmin from previous step download it from phpmyadmin.net site. Unzip package and copy it to C:\inetpub\wwwroot directory. Open IIS 7 Management Console and create new web application in a similar way how we created web application for our Joomla! install.

image

I named folder and Web Application as phpMyAdmin. After clicking OK use browse to open http://localhost/phpMyAdmin/. You will get the screen below.

image 

Enter root as username and your root password, Click Go.

image

I got in! I was really impressed that without any additional configuration phpMyAdmin detected local MySQL Server and the setup is done!

Conclusion

Congratulations ones more time on the going through this rather lengthy post. Don’t get disappointed that you do not see Joomla! configuration steps here. There are very easy and straightforward. I am planning to post Joomla! configuration steps in the future post. This and the other posts will be part of the Creating Joomla! Development Environment series. Don’t forget to check out some references for more information.

References

Configure Joomla! 1.6 in IIS 7

Recently I published a blog about installing Joomla! 1.6 on IIS 7. We installed PHP support for IIS and MySQL Server on WIndows 7 development machine. In this post I will show how to configure installed Joomla! 1.6 site.

Running Joomla! configuration wizard

If you followed the same naming for directories and site names open http://localhost/JoomlaDev.

Image

You will be presented with Choose Language step. Select your main language and click Next.

image

Configuration wizard performs checking and detected that configuration.php file is not writable. It is good idea to check permissions on the files and directories to avoid hand writing configuration settings. Browse to C:\inetpub\wwwroot directory and open properties of the JoomlaDev folder.

image

Select IIS_IUSRS and click edit. Tick Full Control and Click OK. After that click Check Again on the Joomla! Wizard. Now Wizard should display green Yes. If not, try adding Everyone and allowing Full Control. You can remove this permission once configuration is complete. If you can suggest other options of solving this, please leave a note in the comments. Click Next.

Image(1)

This is a License page. Click Next.

Image(2)

Enter Username as root, your password, Database name. Click Next.

Image(3)

This is a development machine and no remote access is needed. I skiped FTP Configuration. Click Next.

Image(4)

Enter Site name, your e-mail, admin username and password. If you like you can install sample data. Click Next.

Image(5)

In this version of Joomla! configuration Wizard lets you to click a button to remove installation folder automatically. It could be a good idea to rename this folder to keep it handy if you will ever want to run this wizard again. Click Administrator or Site to view configured Joomla! Site.

Image(6)

Congratulation. Joomla! 1.6 is installed and configured. As you can see this was pretty easy and straightforward. In the future posts I will be covering creation of the Development Environments for Joomla! Development.

Friday, 8 April 2011

Free Joomla! Extensions

These who ever worked with Content Management Systems will know about Joomla! CMS. Personally, what I like about Joomla! is availability of the vast number of extensions and templates and many of them are available for free. One of the popular sites where you can find Joomla! extensions is extensions.joomla.org. There are a lots of extensions for all sort of tasks. Here I am listing the ones I am using in my projects, which are tried and tested.

  joomla eXtplorer

extplorer

joomla eXtplorer is a File- and FTP - Manager. It allows you to edit files, delete, copy, rename, archive and unpack files/directories directly on your server. You can - Browse Directories & Files - Edit, Copy, Move and Delete files - Search, Upload and Downloading files - Create new files and directories - Change file permissions (chmod) and much more. I am mainly use this extension for changing file permissions and editing configuration files.

Linkr - The Article Linker and Link Creator

image

This extension lets you quickly link to articles in your Joomla! site when you are creating content. You can either search for your article with the search box, or find it by selecting the section and category. Finally, the link class, title, relation and url are completely customizable, making Linkr the perfect linking extension for Joomla! I like the nice user interface allowing easy article categories browsing and article preview.

Xmap

image

Xmap is a Site map generator component for Joomla, it's based on the popular Joomap component. Xmap allows you to create a map of your site using the structure of your menus. In the Preferences Page under Options there are links to html sitemap page and xml sitemap document which can be submitted to Google webmaster tools.

Commercial Extensions

sh404sef sh404SEF


image

sh404sef is one of the commercial extensions I would highly recommend if you are serious about SEO (Search Engine Optimisation). This extension make it very easy to control page titles and meta tags and automatically converts Joomla links to search engine and human friendly links.  By itself it has a lot of extensions that optimise this component for other Joomla systems like VirtueMart, Xmap, Book or Media libraries. Check these extensions at sh404SEF extensions.

I will be happy for your comments about what extension you use and would recommend to others.

Thursday, 3 June 2010

Free Mozilla Add-ons

Below is a list of Mozilla add-ons I use.

Add-ons for better work with Google SERVICES


Better Gmail 2 - Enhances the new Gmail interface with Greasemonkey user scripts. Only compatible with the NEW Gmail interface.

Better GReader - Enhances Google Reader with Greasemonkey user scripts.

Better GCal - Enhances Google Calendar with Greasemonkey user scripts.

Better YouTube - A compilation of some of the best Greasemonkey user scripts for YouTube in one interface

Google Toolbar for Firefox - Take the power of Google with you anywhere on the Web

GMarks - helps you sync & manage your bookmarks with Google Bookmarks.

Google Shortcuts - Display all of your Google Services as buttons just next to your address bar or anywhere you like it.

Google Gears - is an open source project that enables more powerful web applications, by adding new features to your web browser.

Designer and Web Developer Tools


ScribeFire Blog Editor - is a full-featured blog editor that integrates with your browser and lets you easily post to your blog.


Dummy Lipsum - Generate "Lorem Ipsum" dummy text.


Web Developer - adds a menu and a toolbar with various web developer tools.


Firebug - the most popular and powerful web development tool.


FFClickOnce - Allows Firefox to run a .NET ClickOnce application.


Misc Tools


Forecastfox Enhanced - Enhanced version of the popular Forecastfox extension (forecastfox.mozdev.org) by Jon Stritar and Richard Klien.

Friendbar - The Twitter and Facebook Toolbar.

Power Twitter – makes Twitter Better.

eBayBuddy Australia - is a small eBay extension for quick navigation of eBay.com.au The Australian eBay, and other related tools through the right-click context menu or a single toolbar button you can add from the customize menu. It includes lots of advanced search features, category browsing, discussion boards, a full site map of eBay, PayPal, comparison price shopping and more.

Firefox Companion for eBay - Be a better bidder! You’re always securely signed in so you can check out your progress whenever you like. Customise your alerts so you stay on top of your bids. Be told when an auction style format listing you’re bidding on is about to end.

TOOLS for better browsing


GUI:Config - makes it easier to change preferences that can only be found in the “about:config”.

Configuration Mania - More Advanced (hidden) configures.

DownThemAll! - The first and only download manager/accelerator built inside Firefox!

IE Tab Plus - An enhanced version of IE Tab which supports Adblock Plus in IE, and can sync cookies between IE and Firefox.

WOT - Warns users about risky websites that try to scam visitors, deliver malware, or send spam.

Fox Splitter - splits the content area of the browser window as you like.

ErrorZilla - Implements a useful error page when a website cannot be reached. Will add Try Again, Google Cache, Coralize, Wayback, Ping, Trace, and Whois buttons, along with the Firefox logo to the error page when a website isn't found or a web server is down.

Resurrect Pages - Searches through five big page cache/mirrors and shows lost pages.

Google chrome extensions manager - will allow you to use Google chrome extensions inside Firefox.

Ctrl-Tab - Ctrl+Tab navigation and "All Tabs" panel.

Greasemonkey Add-on and Scripts


Greasemonkey Add-on - Allows you to customize the way a webpage displays using small bits of JavaScript. Hundreds of scripts, for a wide variety of popular sites, are already available at http://userscripts.org.

Mozilla Themes

Below are the Mozilla Themes I am using.

Noia 2.0 (eXtreme) - This is a fully skinned version. This theme is based on the Noia 2.0 icon set by Carlitus( http://carlitus.deviantart.com/ ).

References and Tips

These are links to useful Mozilla Internet resources.