I am an android developer who is interested in not just programming but also designing the product to give the user the best possible experience from the product and make the user feel special. I recently completed the Android Developer Nanodegree by Udacity.
I am also interested in deep learning and its potential to revolutionize almost every industry. My Goal is to secure a challenging position where I can effectively contribute my skills and enthusiasm and constantly learn to improve my skills along the way.
The objective of this project is to develop a home automation system in IoT using an android application.
Home automation is automation of the home or household activity. Home automation may include control of lighting,
to provide more convenience, comfort, power saving, and security. Home automation in IoT gives you access to control
devices in your home over the internet using an android application from anywhere in the world.
In the age of the smartphone, all the services are being moved to mobile applications. With android running on 60%
of all phones at this time, it is the most popular mobile operating system. In this project, we develop a native android
application to control lights, fans, garage doors and many other devices.
In the client side, the android application has buttons to turn the lights ON/OFF. Upon clicking a button on the android
application to turn ON/OFF a particular device, it sends an HTTP REST API request to the server. The request is sent to
through the domain of the router that the raspberry pi 2 model B is connected.
In the server side, the server called webiopi is running on the raspberry pi 2 model B, the server runs on the physical port 8000
on the local network. The server has an inbuilt HTTP REST API. The router is constantly updating its IP address to a dynamic domain
name service called no-ip. The service will provide a domain name to point to the router over the internet. When the application makes
the HTTP POST request to the server, the server makes the corresponding GPIO pin of the raspberry pi HIGH/LOW. This acts as a control
pulse for the relay which turns the relay ON/OFF. The hardware is interfaced with the relay and it acts as a switch. When the switch is
turned ON the circuit is closed and the corresponding device will turn ON.
This is the first project of the android nanodegree. This project deals with the basics of android programming.
This project has a grid view with full bleed images as the grid items when a movie poster in the grid is tapped
more details of the movie are shown such as the overview, release date, and ratings. To switch between the most
popular and highest rated movies use the menu. The objective of this project was to become familiar with basic
UI elements and to populate them with data from the TmDb API JSON response.
Main Activity
It shows a grid of movie posters and the user can sort the results between popular and top rated using the menu.
The purpose of this application is to discover new and exciting movies.
It was a part of the udacity nanodegree project P2. The main screen displays
movies in three tabs the first 2 tabs are sort movies on most popular and
top rated. Clicking on a movie will display more information about the movie
is displayed like trailers, reviews, The movie can be saved to a database for
future viewing which will be displayed in the favorite tab, The movie trailer
URL can be shared using the share button at the top right.
Main Activity
The Main Activity has three tabs sorting results from the API by popularity,
highest rating and the data saved locally by the user to be viewed later.
Each tab shows a grid of movies.
Detail Activity
This screen shows the user more details about a particular movie. It shows the overview,
release date, rating, trailers and reviews of the particular movie.
Credits
This app uses the TMDb API.
Mixology
Find and discover new and exciting cocktails and drinks!!!!
The application uses TheCocktailDb API to show a grid of cocktails in card views.
Clicking on a cocktail shows a detail screen with Instructions and Ingredients
required to prepare the cocktail. A navigation drawer is used to filter out
different types of drinks according to alcohol content, Ingredients, Glass and
many more and an option to save the favorite cocktails.The randomixer allows the
user to browse through random cocktails. The app has a widget that shows a list
of all the saved cocktails. There is support for both phones and tablets.
The user can also search through the extensive database using the search option.
User Login
The application uses firebase authentication for login. The user can login using
either their email or google accounts.
Main Activity
The main screen has a navigation drawer which allows the user to sort through
the different filters like #Alcoholic, #NonAlcoholic, #Cocktail, #Ordinary drink,
#Gin, #Vodka, #Cocktail Glass, #Highball Glass and displays the username, email
, and photo. There is a search option in the toolbar that allows the user to search from a database of over 3000 cocktails.
It displays a grid of drinks from the selected filter.
Detail Activity
The detail screen shows more information about the drink, it shows if the drink is alcoholic or not,
instructions to prepare the drink and it displays a list of all the ingredients, measures and
images of the ingredients.
Tablet layout
The application supports tablet layouts with the detail fragment in the main activity
for tablet screens.
Widget
The widget shows the data saved by the user to a local SQLite database.
Randomixer
The randomixer on a pull down will show a random drink.
The objective of this project is to take an application in a functional state and get it to production ready state.
This involved finding and handling error cases, adding accessibility features, allowing for localization, adding a
widget and adding a library.
Description
This application shows a list of stock quotes on the main screen with a floating action button to add new stocks.
Clicking on one of the stock quotes will take the user to a details screen with a graph to display the value over
time of the stocks.
The widget shows the prices of individual stock quotes clicking on a quote will take the user to the detail screen
which has a graph with the value of the stock overtime.
Main Activity
It shows a list of the stock quotes and their price increase in value or increase in percentage. It also displays a
Toast if the stock was already added or the stock symbol was invalid. New stock symbols can be added using the Floating
Action Button.
Detail Activity
This screen shows a graph of the particular symbol over a period of 7 days.
Widget
The widget has a list of all the stock symbols added in the main activity. If a symbol is tapped option a graph of the stock price over the last 7 days is shown.
In this project, you will create an app with multiple flavors that uses multiple libraries and Google Cloud Endpoints. The finished app will consist of four modules:
A Java library that provides jokes. A Google Cloud Endpoints (GCE) project that serves those jokes. An Android Library containing an activity for displaying jokes.
An Android app that fetches jokes from the GCE module and passes them to the Android Library for display.
Description
This project uses a java library that has jokes, an android library to provide the activity to display, a GCE module to provide jokes which are queried using an async
task and sent to the android library using an intent extra to be displayed. It has a test for the async task.
The objective of this project is to take user feedback and redesign an older application to follow the Material Design guidelines and translate a set of static design mocks to a living and breathing app.
Screenshots of the old applicaiton
User Feedback
Lyla says:
“This app is starting to shape up but it feels a bit off in quite a few places. I can't put finger on it but it feels odd.”
Jay says:
“Is the text supposed to be so wonky and unreadable? It is not accessible to those of us without perfect vision."
Kagure says:
“The color scheme is really sad and I shouldn't feel sad.”
Description
This project takes an older version of the application and uses material design concepts like appcompat, floating action button, collapsing toolbar, cardview, recycler view,
co-ordinator layout, appbar layout etc.
Main Activity
The main activity has a swipe to refresh layout and a recycler view. It implements appbar scrolling that make the toolbar disappear when scrolling.
Detail Activity
The detail activity contains a viewpager to scroll through articles and a fragment with a collapsing toolbar,
nested scroll view and a card view.
In this project, you will build a wearable watch face for Sunshine to run on an Android Wear device.
Android Wear is an exciting way to integrate your app more directly into users’ lives. As a new developer, it will be important for you to understand how to perform this integration. This project gives you an opportunity to design a companion app for Sunshine, tying it to a watch face in order to enrich the experience.
Description
The watch face shows the time and shows an icon with the weather condition on the left and Maximum and
Minimum temperature are shown on the right.