Professional Documents
Culture Documents
Batch 16-Cse
Batch 16-Cse
Batch 16-Cse
Ms. P. LOVA
Assistant Professor
Department of CSE
Besides VSEZ, Duvvada, Vadlapudi Post, Gajuwaka , Vishakapatnam -530049, A.P., India.
1
VIGNAN’S INSTITUTE OF INFORMATION TECHNOLOGY
Department of CSE
CERTIFICATE
This is to certify that this project report entitled “HOMEIFY” is a bonafide record
of the work done by
LAGUDU.YAJNASRI 21L31A05C5
2
DECLARATION
By
LAGUDU.YAJNASRI -21L31A05C5
Date:
Place: VISAKHAPATNAM.
3
ACKNOWLEDGEMENT
4
ABSTRACT
Modern urban living demands efficient and streamlined management of residential
complexes. The Apartment Management System (AMS) is a comprehensive software
solution designed to facilitate seamless administration and organization of apartment
complexes, offering a range of tools and features to simplify day-today operations.
The Apartment Management System encompasses diverse modules, including
resident management, maintenance tracking, communication channels, and security
controls. These modules synergize to optimize resource allocation, enhance resident
satisfaction, and foster a secure and harmonious community environment.
5
CONTENTS Page no
1.1 Introduction
1.2 Existing System
1.3 Proposed System
1.4 Scope
1.5 Approach
4.1 Modules
4.2 System Design
Chapter 8: CONCLUSION 36
Chapter 9: REFERENCES 36
6
Introduction
1.1 Introduction
In a world where urbanization and digitalization are rapidly reshaping living environments, the
Apartment Management System emerges as a crucial tool to meet the evolving needs of property
management. By leveraging cutting-edge technology and a user-centric approach, the AMS
empowers property managers to orchestrate apartment complex operations with precision and
ease. Moreover, it nurtures a sense of community, engagement, and security among residents,
fostering an ideal living environment that resonates with the demands of modern urban living. As
we delve deeper into the functionalities and benefits of the Apartment Management System, a
comprehensive understanding of its transformative potential will be realized.
1. AppFolio:
- A comprehensive property management software that offers features like online applications,
tenant screening, rent collection, maintenance tracking, accounting, and reporting.
- Provides owner and tenant portals for communication and access to information.
2. Yardi Breeze:
- Aimed at smaller property management companies, offering features like property listings,
tenant portals, maintenance tracking, financial reporting, and accounting.
7
2. Dashboard and Overview:
- Visual dashboard displaying key metrics, occupancy rates, pending maintenance requests,
and financial summaries.
- Notifications and announcements for property managers and tenants.
3. Property Management:
- Add, edit, and delete apartment units with details (unit number, type, size, amenities,
etc.).
- Real-time tracking of apartment availability and occupancy status.
1.4 SCOPE:
The scope of an apartment management system encompasses the features, functionalities, and
objectives that the system aims to achieve. It defines the boundaries of what the system will
include and the problems it intends to solve. The scope can vary based on the specific needs and
goals of property managers, landlords, and users. Here is a comprehensive scope for an apartment
management system:
2. Property Management:
a. Add, edit, and remove apartment units with details (unit number, type, size,
amenities, etc.).
b. Track apartment availability and occupancy status.
c. Maintain historical data of properties and units.
3. Tenant Management:
a. Tenant profiles with contact information, lease details, and payment history.
b. Rent calculation, billing, and online payment integration.
c. Document storage for lease agreements and tenant-related documents.
4. Maintenance Management:
a. Tenants can submit maintenance requests online, specifying the issue and urgency.
b. Property managers assign tasks to maintenance staff and track progress.
c. Maintenance history and scheduling.
8
5. Rent and Financial Management:
a. Online rent payment processing with multiple payment methods.
b. Automated late fee calculation and notifications.
c. Financial reporting, including income, expenses, and profit/loss statements.
6. Communication:
a. Messaging system for property managers, tenants, and staff.
b. Announcements, alerts, and notifications for important updates and events.
9. Document Management:
a. Store and manage important property documents, contracts, and communication.
1.5 Approach:
The idea is to form an individual functions for every operation. All the functions are unified
together to form software. Developing an Apartment Management System (AMS) requires a
well-defined and structured approach to ensure its successful design, development, and
implementation. Here's a comprehensive approach to creating an effective AMS:
1. Project Initiation :-Clearly define the goals and objectives of the AMS project.
Identify stakeholders, including property managers, residents, maintenance
personnel, and potential investors. Establish a project team with members from
various domains, such as software development, user experience design, and
property management.
3. System Design: Create a system architecture that outlines the overall structure,
modules, and interactions of the AMS. Design the user interface (UI) and user
experience (UX) to ensure a seamless and intuitive user journey.
4. Module Development: Break down the AMS into distinct modules like Resident
Management, Maintenance Tracking, Communication Channels, and Security
Controls. Implement features such as resident profiles, maintenance requests,
announcements, and access control.
10
TECHNOLOGIES USED
2.1 REACT NATIVE
What is REACT NATIVE?
Executive Summary:
React Native is an open-source framework developed by Facebook for building mobile
applications using JavaScript and React. It allows developers to create native-like mobile apps
for multiple platforms, including iOS, Android, and web, while sharing a significant portion
of the codebase.
React Native is like React, but it uses native components instead of web components as building
blocks. So to understand the basic structure of a React Native app, you need to understand
some of the basic React concepts, like JSX, components, state, and props.
Many different kinds of people use React Native from advanced iOS developers to React
beginners, to people getting started programming for the first time in their career. These docs
were written for all learners, no matter their experience level or background.
The working principles of React Native are virtually identical to React except that React Native
does not manipulate the DOM via the Virtual DOM. It runs in a background process (which
interprets the JavaScript written by the developers) directly on the end-device and communicates
with the native platform via serialized data over an asynchronous and batched bridge.
React components wrap existing native code and interact with native APIs via
JavaScript in modern React Native applications due to its increased type safety.
While React Native styling has a similar syntax to CSS, it does not use HTML or CSS.
Instead, messages from the JavaScript thread are used to manipulate native views.
React Native is also available for both Windows and macOS, which is currently maintained by
Microsoft.
11
A. What is REACT NATIVE?
o React − This is a Framework for building web and mobile apps using JavaScript.
React Native is an excellent choice for mobile app development due to its cross platform
functionality, faster performance, and simplicity. It allows developers to build high quality mobile
apps using a single codebase, reducing development costs and time. Moreover, React Native has a
vast and vibrant community of developers and contributors, ensuring that the framework remains
up-to-date and relevant. Its compatibility with a wide range of platforms and technologies and its
robustness and dependability make it an ideal choice for businesses looking to build high
performance mobile applications.
12
C. FEATURES OF REACT NATIVE:
The apps made with React Native are of high quality. Many prefer React Native because of its
faster approach towards mobile app development and flexibility towards code sharing. Most app
development companies are switching to React Native because of its ease and scalability. If you’re
wondering what’s so great about this web development framework, we’re here to help you.
There’s no need to write code separately be it C for Windows, Java for Android, or Swift
for iOS. This is partly the reason React Native is referred to as a native framework. Any
code written here can be used on multiple mediums. That’s why react native for hybrid
app is a great choice.
2. UI Focused
One of the most concerning factors at the time of mobile app development is designing
the User Interface (UI) of the app. React Native is a hot favorite because this framework
gives a lot of attention to designing the app UI.React Native is thoroughly responsive and
has great rendering capabilities. That’s the reason why the global development community
is fond of this framework.
3. Programming Language
Hire dedicated developers India is the best solution on the decision making factors like
Programming language and its flexibility, making the entire development process much
more simpler. If a web development framework is using a well-known programming
language that is used widely, the developers already incline towards that framework. For
React Native, the programming language is widely practiced JavaScript. Apart from
HTML and CSS, the third most widespread programming language on the internet is
JavaScript. JavaScript is one of the basic languages and any developer, whether he or she
is a beginner or an experienced professional, is well versed with JavaScript. Therefore,
learning and using React Native practically is not a big deal at all.
4. Strong Community
React Native can open doors to great community support in terms of cross-platform mobile
app development. Soon after React Native was launched in 2015 Facebook, it became an
instant favourite among the developers worldwide. Till today, the fame of React Native
has been overwhelming. The strong presence of community support ensures that any
question related to mobile app development will be answered by the universal community.
13
5. Tried & Tested
React Native is one of those mobile app development frameworks that is trusted by a large
developer base. The Facebook factor also works in favour of this framework. The brand
image of Facebook helps React Native to become a reliable name in the app development
industry.
D. PREQUISTES
1.React Native released the support for the New Architecture with the release 0.68.0.
2.This guide is written with the expectation that you’re using the latest React Native release.
3.You can find instructions on how to upgrade in the page upgrading to new versions.
4.Remember to re-install the dependencies after upgrading.
14
2.2 Firebase
Firebase is a set of backend cloud computing services and application development platforms
provided by Google. It hosts databases, services, authentication, and integration for a variety of
applications, including Android, iOS, JavaScript, Node.js, Java, Unity, PHP, and C++ .
The Firebase Realtime Database is a cloud-hosted database. Data is stored as JSON and
synchronized in real time to every connected client. When you build crossplatform apps with our
Apple platforms, Android, and JavaScript SDKs, all of your clients share one Realtime Database
instance and automatically receive updates with the newest data.
FEATURES:-
1. Realtime:
Instead of typical HTTP requests, the Firebase Realtime Database uses data
synchronization—every time data changes, any connected device receives that update
within milliseconds. Provide collaborative and immersive experiences without thinking
about networking code.
2. Offline:
Firebase apps remain responsive even when offline because the Firebase Realtime
Database SDK persists your data to disk. Once connectivity is reestablished, the client
device receives any changes it missed, synchronizing it with the current server state.
Firebase project.
15
5. Looking to become a front-end web developer:
We have put together a course that includes all the essential information you need to work towards
your goal.
Prerequisites:
Basic understanding of JavaScript (ES6+)
• Familiarity with React (not mandatory, but helpful)
• Node.js and npm (Node Package Manager) installed on your computer -Setup:
• Install React Native CLI: Run npm install -g react-native-cli to install the React Native
command-line interface globally.
Styling:
Apply styles using inline styles, stylesheets, or third-party libraries like styledcomponents.
Navigation:
Learn how to set up navigation between screens using libraries like React Navigation.
API Integration:
• Integrate APIs using fetch or third-party libraries like axios for data retrieval.
• Understand asynchronous JavaScript using Promises or async/await.
State Management:
Learn about state management libraries like Redux or MobX for managing complex app
states.
16
Debugging and Testing:
• Utilize debugging tools like React Native Debugger or Chrome DevTools.
• Write unit tests and UI tests using libraries like Jest and React Native Testing
Library.
Device Features:
Explore device features like camera, geolocation, sensors, and more using React Native
APIs or third-party libraries.
Deployment:
Follow React Native's official documentation to deploy your app to iOS and Android
devices. Use services like Expo to simplify the deployment process.
Keep Learning:
React Native is a rapidly evolving framework. Stay updated with new features, best
practices, and changes by following blogs, newsletters, and social media accounts related
to React Native.
Helpful tools for writing and debugging your React Native code.
React Native Shells: A React Native shell allows you to quickly test snippets of
1. App Shell: The term "app shell" generally refers to the basic structural components of a
mobile app, including the navigation, layout, and overall user interface. In the context of
React Native, this could mean the core components and navigation structure that provide
the main framework for your app's UI.
2. React Native Navigation Shells: React Native apps often use navigation libraries to
handle screen transitions and app navigation. Examples of navigation libraries for React
17
Native include React Navigation and React Native Navigation. These libraries provide
different types of navigation shells, such as stack navigators, tab navigators, and drawer
navigators. These shells help you organize and manage the different screens of your app.
3. Custom Shell Components: Depending on your app's design, you might create
custom shell components to encapsulate certain UI elements or layout structures that are used
throughout your app. These custom shell components can help maintain a consistent
design and user experience.
4. Integration with Native Shells: React Native allows you to integrate native modules and
views into your app. In some cases, you might need to create or modify native "shells" to
wrap and display native components or views within your React
Native app.
5. Shell Apps: Some companies and developers use the term "shell app" to refer to a base or
template app that is customized for different clients or projects. This shell app might
contain common functionality and design elements, with the ability to plug in specific
features or content for each client or project.
D. Database defined :-
A database is an organized collection of structured information, or data, typically stored
electronically in a computer system. A database is usually controlled by a database management
system (DBMS). Together, the data and the DBMS, along with the applications that are
associated with them, are referred to as a database system, often shortened to just database. Data
within the most common types of databases in operation today is typically modeled in rows and
columns in a series of tables to make processing and data querying efficient. The data can then
be easily accessed, managed, modified, updated, controlled, and organized.
Most databases use structured query language (SQL) for writing and querying data.
18
LITERATURE SURVEY
A literature survey involves reviewing and summarizing existing research, studies, articles, and
resources related to a specific topic, in this case, an apartment management system.
1. Research Papers and Articles:
• Studies on the design and development of apartment management systems. - Research
on the impact of apartment management systems on property management efficiency and
tenant satisfaction.
• Investigations into the integration of emerging technologies like IoT, AI, and blockchain
in apartment management systems.
• Research on data security, privacy concerns, and compliance with regulations in apartment
management systems.
19
6. Security and Privacy:
• Studies on the security measures implemented in apartment management systems to
protect sensitive tenant and property information.
• Articles discussing the importance of data privacy and compliance with data protection
regulations.
20
MODULES & SYSTEM DESIGN
An apartment management system typically consists of several interconnected modules that work
together to facilitate various tasks and processes involved in property management. Here are some
common modules and a high-level overview of the system design for an apartment management
system:
Modules:
1. User Management:
- User registration, login, and authentication.
- Role-based access control for property managers, tenants, maintenance staff, and administrators.
2. Property Management:
- Apartment/unit information management (add, edit, delete).
- Tracking apartment availability and occupancy status.
3. Tenant Management:
- Tenant profiles with personal and contact information.
- Lease details, rent calculation, and payment history.
- Online tenant applications and screenings.
5. Maintenance Management:
- Maintenance request submission by tenants.
- Task assignment, tracking, and maintenance history.
- - Scheduled maintenance and preventive tasks.
21
6. Communication and Messaging:
- Messaging system for property managers, tenants, and maintenance staff.
- Announcements, alerts, and notifications.
7. Document Management:
- Lease agreements, contracts, communication records, and maintenance reports storage.
- Document version control and access management.
9. Lease Management:
- Online lease agreements with electronic signatures.
- Automated lease renewals and expiration reminders.
22
System Design:
The system design of an apartment management system involves the architecture, databases, and
technologies used to develop and deploy the system. Here's a high-level overview:
1. Architecture:
- The system can follow a web-based architecture, allowing access from browsers.
- A three-tier architecture with a presentation layer (user interface), application logic layer, and
data storage layer (database) is common.
2. Database Management:
- A relational database system (e.g., MySQL, PostgreSQL) for storing apartment, tenant, financial,
and maintenance data.
- Proper database normalization to ensure data integrity.
3. User Interface:
- Intuitive and user-friendly interfaces for different user roles.
- Responsive design to support various devices including desktops, tablets, and smartphones.
23
8. Testing and Quality Assurance:
- Thorough testing of each module, including unit testing, integration testing, and user
acceptance testing.
24
APPLICATIONS
An apartment management system has a wide range of applications that cater to the needs of
property managers, landlords, tenants, and maintenance staff. It streamlines various tasks and
processes involved in property management, enhancing efficiency, communication, and overall
tenant satisfaction. Here are some key applications of an apartment management system:
5. Lease Management:
- Digital lease agreements and electronic signatures.
- Automated lease renewals and expiration reminders.
- Centralized storage of lease documents.
6. Document Management:
- Central repository for property-related documents and contracts.
25
- Easy access to important documents for property managers, tenants, and maintenance staff.
26
PROJECT REVIEW
LOGIN PAGE :
A login page serves as the gateway for users to access your app. It enables user authentication, ensuring
that only authorized individuals can use your app's features and access sensitive information. By requiring
users to log in, you can protect user data and maintain the security of your app. A login page allows you to
create personalized user experiences.
SIGN UP PAGE :
27
A sign-up page is a critical component of any application that requires user registration. It's the
first step for users to create accounts and access the features and services your app provides.
Designing an effective sign-up page is important for attracting users and ensuring a smooth
onboarding process.
HOME PAGE :
The home page of an apartment management system serves as the entry point and dashboard for users to
access various features and functionalities related to managing apartments, tenants, maintenance, and other
relevant aspects. Here's a breakdown of key components and features you might consider including on the
home page of an apartment management system.
28
PASSWORD RESET PAGE:
A password reset page is a critical component of any application that requires user authentication. It allows
users to securely reset their passwords if they have forgotten them or suspect unauthorized access to their
accounts. Here's a guide on what to include in a password reset page .
TOOLS/MENU PAGE:
29
A menu page in an apartment management system serves as a central hub for users to access
various sections and features of the application. It provides a structured and organized way for
users, such as property managers, tenants, and maintenance staff, to navigate through different
functionalities.
30
SOURCE CODE
LOGIN SCREEN CODE:
31
32
33
COMPLAINT REGISTRATION CODE:
34
COMPLAINT STORAGE PANEL& LOGIN INFO STORAGE:
35
CONCLUSION:
Overall, the project is considered a success, where all the functional and non-functional requirements
have been successfully implemented. The success of the project can also be judged on the basis of
meeting the objectives of the project. It is grateful that the deliverable in this project have been
produced and delivered on time. This essentially important because failing to meet the deadlines
could deter the success of a project, which happens almost to every project in the world today.
REFERENCES:
1. Dennis, A., Wixom, H. B., & Roth, R. M. (2012). System And Analysis Design. United
States: John Wiley & Sons, Inc.
2. Ibrahim, S., Wan Kadir, W., Samsuri, P., Mohamed, R., & Idris, M. (1999). Kejuruteraan
Perisian. Skudai, Johor: University Technology, Malaysia
4. Kendall, K.E, & Kendall, J.E. (2011). System Analysis and Design. Upper Saddle River,
United States: Pearson
7. Korth, F. Henry and Abraham Slberschatz. Database System Concepts. NY: McGraw-Hill
International, 1991.
8. Q.F. Nian, S.L. Shi, R.Q. Li. Research and application of safety assessment method of gas
explosion accident in coal mine based on GRA-ANP-FCE. Procedia Eng., 45 (2012), pp. 106–
111.
9. Mojtaba R. Mojtaba, Y.C. Abdolreza, H.Y. Siamak. A novel fuzzy inference system for predicting
roof fall rate in underground coal mines. Saf. Sci., 55 (2013), pp. 26–33
10. G. Lu, Y. Sun, Y. Qiu, et al. On relation between work study and safe-efficient coal mine.
Industrial Engineering and Engineering Management (IE&EM) 2011 IEEE 18Th International
Conference, vol. 2 (2011), pp. 1270–1272
36