SimpleTweet

An Android app written in Java which allows for users to view and create new tweets using Twitter REST API.

The homepage of SimpleTwitter with Tweets displayed line by line.

Timeline

Oct. 2021 - Mar. 2022

Technologies

Java(Android)

Tools

Git, GitHub, Android Studio

My Responsibilities as Software Developer

  • Prioritizing user stories involved assessing project requirements, understanding user needs, and determining the order of feature implementation to ensure timely delivery of desired functionality.
  • Implementing functionality with REST API integration necessitated proficient coding skills, meticulous attention to detail, and effective problem-solving to securely and efficiently communicate with Twitter's platform and retrieve data for the SimpleTweet app.
  • Overseeing UI design encompassed translating user interface requirements into visually appealing and intuitive layouts, employing design principles, and iterating based on feedback to create an engaging and cohesive user experience throughout the app's development process.

Background

This project was made to learn how to use a REST API as well as expand upon Android skills taught by Codepath.

Problem Statement

In response to the cluttered and feature-heavy nature of the native Twitter app, there is a demand for a simpler alternative that provides a straightforward user experience. SimpleTweet aims to fulfill this need by offering a minimalistic Android app that pulls data from Twitter using the Twitter API, focusing on simplicity and efficiency. Its streamlined design eliminates unnecessary bloat, providing users with a more pleasant and efficient Twitter browsing experience.

Solution

SimpleTweet offers a streamlined solution for Twitter users by allowing them to sign in via OAuth login and view their home timeline with displayed usernames, tweet bodies, and relative timestamps. Additionally, users can enjoy features such as refreshing the timeline, infinite pagination for more tweets, clickable links within tweets, and composing and posting new tweets seamlessly from the app interface, enhancing their overall Twitter experience. Furthermore, the app ensures user convenience by manually inserting newly created tweets into the timeline without requiring a full refresh and providing a character counter for composing tweets.

Software Development Process

Prioritize user stories based on requirements, ensuring clear understanding of feature importance and implementation order.

Implement functionality according to prioritized user stories, following best coding practices and utilizing appropriate libraries and APIs, to fulfill the specified requirements.

Refine the user interface (UI) to enhance usability and aesthetics, incorporating feedback and iterative improvements to ensure the SimpleTweet app meets both functional and design expectations.

The gif shows the user being able to click on the link to the actual twitter page within the app.

Final Product

Here, we can see that the user is able to create and send a tweet which is added to Twitter.

The gif shows the user being able to make tweets within the app.

Reflection

Learning Android development through the creation of SimpleTweet was an invaluable experience, providing hands-on insight into building functional and user-friendly mobile applications within the Android ecosystem.

Utilizing REST API integration to connect with Twitter's platform offered a practical understanding of data retrieval and manipulation, enhancing proficiency in leveraging external services to enrich app functionality.

Given additional time, the opportunity to refine the UI to reflect Twitter branding and introduce customizable themes would not only elevate the app's visual appeal but also deepen comprehension of user experience design principles and implementation techniques within the Android framework.

Source Code