- GeoFire (Firebase-based library for datapoint creation)
The basic idea is you can create a chatroom at your physical location and a pin/chatroom will be created on the map at your gps-coordinates. However, a few restrictions apply: You can only join a chatroom if you are presently within 1-mile of where it is located(where it was created). Also, chatrooms will expire and delete 24 hours after creation. This app would be fun for social districts and areas such as festivals, downtown distrcts, college campuses, etc .I encourage you to watch my demonstration of it on Youtube.
- Using a foreground service(over a bounded/background service) to run Location updates/requests(on Main Thread), since location updates on background threads are heavily restricted with new Android Oreo update.
- Broadcast Receiver to read then send automatic text message replies with distance
- Notification Manager and Notifications.
- Shared Preferences
This idea came about after a new Texting & Driving law was passed in my city. My sister would ask for rides from work pretty often, & her location is actually a bad place to text and drive in due to traffic, but I also didn't like arriving and parking & waiting for her to finish her 10 minute conversations to come outside. How it works is, you merely enter in someone's address, phone number, and choose a distance(such as 1 mile). Now shutoff the screen, place your phone out of reach, & when you are within 1 mile of that address, your phone will automatically send a text message notifying the rider that you are "Almost There". The rider can also text the word "distance" to the driver's phone, which will cause the driver's phone to automatically respond with the driver's approximate distance( e.g. "Nick is currently 2.7 miles away"). I encourage you to watch my demonstration on Youtube.
This is my Book ISBN Scanner Inventory app. This app is handy for quickly & easily scanning books into a personal inventory that will store the book's author, title, and image of the cover. It can easily be updated to store extra information such as publication date, page length, genre, etc. Currently talking to a book-store charity about creating a version for their large inventory of books that get donated to them daily, which would require a central online depository/database, and would not be difficult to build.
Some Tools Used in building Book ISBN Inventory Scanner:
- MVP Design Pattern
- XML Parsing
- AsyncTask(for background tasks)
- NetworkCalls ( HttpUrlConnection() )
- MySQL database
- Android Recyclerview for Efficient List Layout
- Picasso Image Library
This app was made for the very specific situation of having a large amount of books you want to inventory and no technology for doing so except a pen, paper, and a smartphone. With this app you can throw away the pen and paper, and with android phone in hand you can turn its camera into a scanner, & any book with an ISBN barcode (sorry, fans of old leather-bound books) can scan the barcode & add it to a personal database for reference. It relies on the API provided by GoodReads.com for fetching book details via HTTP GET requests, and converts the HTTP response from its XML format into a managable Java Object for storing into the MySQL database.
This is my WalMart Scanner App. This app was a fun build with a very practical use in developing it; it's used for keeping tracking of how much money you're spending as you shop at Wal-Mart to stay underneath your budget.
Some Tools/Concepts Used in building the Walmart Scanner App:
- WalMart's Open API (still in beta)
- HTTP GET Requests
- Conversion from JSON format to Java Objects
- Android HttpUrlConnection for Nework calls
- Android RecyclerView for List Layout
- MySQL database
Thanks to Wal-Mart developing their Open API, giving developers access to their product database, I was able to make a handy app for helping manage financial habits when shopping at Wal-Mart. This app which accesses an API utilizes HTTP requests and response processing(using Android's HttpUrlConnection networking class). The response data from Wal-Mart's end is in JSON format, which is converted into a managable Java Object. All the saved Wal-Mart products are saved in an Android MySQLite database on the phone's memory. Possibly because Wal-Mart's Open API is still in beta, some of the return results don't match in price to the physical store's price, or sometimes no product is found.
In Development - (visit www.NCastro.me/burgers for current progress)
This is the Web App Version of my DropSpot Android Chat App. This functions the exact same way as the android version only for Browsers. It's modeled as a Single Page App built with ReactJS as the front end framework, React-Router as the login library, & of course Google's Firebase platform as the backend. It was initially styled with MaterialCSS a CSS-framework similar to Bootstrap. I'm currently in the process of overhauling the layout and designing it with pure CSS via SASS(css pre-processer). This React app was deployed on Heroku's Cloud Platform, but on the free-tier, so initial load time may be slow.
This is another Single Page app built on the React Framework. It functions as a central open repository for people to submit their favorite Quotes by entering the author, entering the quote, and a choosing a color representing the category. I have also made a Chrome Extension from which people can submit quotes on the fly which I will submit to the Chrome Store for fun. This app, too, was built on the React Framework & styled with MaterializeCSS(CSS-framework), which I am redesigning via pure CSS/SASS. However, the backend for this project is a NodeJS Express Server which is connected to a MongoDB Database hosted on www.MLab.com. Both the React Front-End & NodeJS/Express Back end were deployed to Heroku's Cloud platform.
Some of my most used NPM Packages inlude: "live-server", "node-sass", "npm-run-all", "express", "lodash", "create-react-app"