You must be striving hard to craft a slew of web apps from scratch, nonetheless, we are going to tell you that you may probably don't know previously, especially when we talk about “Security” & “User Experience”.
Our
experience, as there are a lot of still pivotal things to catch up
on. Even outside of what we had seen before or what we knew about, a
laundry list of essentials to bear in mind while making a web
applications that can make it easy to forget which is something
important, specifically when you are just starting out.
The
checklist is not exhaustive in any manner & if you are an
experienced developer, we'll sure there will be something that will
make you surprise. We hope that it'll prove helpful for you, have a
look!
UX
Forms:
After
submitting the forms, the user must should receive the feedback on
the submission. If there is something wrong as in after submitting
the form, it does not send the user to the next level, then there
should be a pop-up or alert or something that let users know the
submission of succeeding or failure.
Login
Redirects: If the user tries to
access the page of the website, but there is not “logged in”
page, then the user first should be sent to the page where they will
be able to login. After that, it should be redirected to the page
where they were originally trying to access that.
If
there's something wrong with the password while logging in, then you
should provide with the option “reset password” (in case they
have forgotten it).
Animations
For
the love of all, which is holy!
Don't
try to animate each & everything on the app. Mostly CSS
animations trigger the layout redraw, and you are limiting yourself
in order to transform & opacity.
Next,
avoid idle transition calculations. If you use it, make sure use
specific properties, for instance- “transition: opacity 250ms
ease-in” rather than “transition: all 250ms ease-in”
Security
Identity
Management: In order to store
the passwords, first of all, hash them, then use widely used the
crypto library. You can also add it, outsource identity management to
Facebook, Twitter, GitHub, etc.
Confirmation
Of Emails: If the user sign
ups, then it should be needed that you should provide the user email
a confirmation email. In case, if the user update address again, then
the same procedure should be triggered again.
Credentials:
Do not check ever any kind of
credentials, including API keys, database passwords, etc. into source
control.
Encryption:
There's nothing better than SSL
(Secure Sockets Layer) for all
of the problems with certificates. Simply, use it! You can use HSTS
(HTTP Strict Transport
Security) as well.
Email
Subscription
Settings: Any emails that send
to your end, then it should include-- a link to the page on your
application where the user can personalize the email settings. The
next, most preferably, an individual link, which unsubscribe them
from all email, too.
Mobile
You
don't need to develop apps for mobile. But, if you are doing so, make
sure it must be an active decision due to the fact that it will have
a material impact on the design & engineering of designed app.
SPA
(Single Page Apps): Recently,
SPA is king! In order to use SPA, you'll be privileged with “fewer
page loads” that means all you need to load resources as what you
need. But you do not need to reload the complete resource again &
again.
UI
Resolutions:
In order to develop MVP, you
don't need to make sure whether UI works or not on every possible
mobile device out there, nevertheless, you should make sure it works
on a basic range of both resolutions i.e. Smartphone & tablet.
UX:
Forms
Honestly
speaking, keep the forms & workflow as simple as that you can be.
It is also pivotal if you target mobile as a mobile development
platform. It is as simple to understand that nobody wants to fill out
the 5 pages on their iPhone.
UX:
Bandwidth
While
developing for mobile, it is pivotal to take notice on “bandwidth”,
which is something precious resource rather as it is on the desktop.
In short, you should look for every opportunity in order to decrease
the number of requests that being made. Try to make them asynchronous
where it can be possible, plus try to minimize the size of the
resource that being requested.
We
hope that the above list proves informative for those who just
starting out on the first web apps. ☺️
If you have other things to add to the above list, ✏️
share with us, we'll see about adding them.
