Packt
Offline-First Apps with Angular, Ionic, PouchDB and CouchDB

Gain next-level skills with Coursera Plus for $199 (regularly $399). Save now.

Packt

Offline-First Apps with Angular, Ionic, PouchDB and CouchDB

Gain insight into a topic and learn the fundamentals.
Intermediate level

Recommended experience

2 weeks to complete
at 10 hours a week
Flexible schedule
Learn at your own pace
Gain insight into a topic and learn the fundamentals.
Intermediate level

Recommended experience

2 weeks to complete
at 10 hours a week
Flexible schedule
Learn at your own pace

What you'll learn

  • Build offline-first apps with Angular, Ionic, and CouchDB.

  • Integrate PouchDB for offline storage and data synchronization.

  • Implement real-time data binding using Four-Way Binding in your apps.

  • Manage complex workflows and CRUD operations in Angular applications.

Details to know

Shareable certificate

Add to your LinkedIn profile

Recently updated!

January 2026

Assessments

15 assignments

Taught in English

See how employees at top companies are mastering in-demand skills

 logos of Petrobras, TATA, Danone, Capgemini, P&G and L'Oreal

There are 15 modules in this course

In this module, we will introduce the course, outlining the key objectives and the tools that will shape your learning experience. You'll understand the importance of building offline-first apps and be motivated to dive into the exciting technologies of Angular, Ionic, PouchDB, and CouchDB.

What's included

3 videos1 reading

In this module, we will build a quick and easy Todo app as our first project. You will set up the app, add basic features like creating and managing todo items, and refine the user interface to improve the app's functionality and design.

What's included

2 videos1 assignment

In this module, we will introduce Julies, an offline-first app designed for restaurants, showcasing its unique features and offline capabilities. You will learn to design key screens like the home and order screens and implement features that streamline restaurant operations.

What's included

3 videos1 assignment

In this module, we will explore the integration of CouchDB and PouchDB, enabling offline data storage and seamless synchronization. You’ll also learn how to implement four-way binding to synchronize data across the app in real-time. We’ll dive into important database concepts, including eventual consistency and the CAP theorem, to ensure robust app performance.

What's included

5 videos1 assignment

In this module, we will explore the use of TypeScript models to represent table details and order data in our app. You’ll implement models and features for tracking table reservations, managing orders, and updating the database to ensure data consistency.

What's included

10 videos1 assignment

In this module, we will refactor the database implementation by introducing the repository pattern. This will enhance the modularity and maintainability of the app, improving the overall performance and scalability of your offline-first app.

What's included

1 video1 assignment

In this module, we will add functionality for managing products in the app, including adding and removing products from the list. You’ll also create a custom sorting pipe to sort nested arrays of product objects, enhancing the organization and display of product data in your app.

What's included

2 videos1 assignment

In this module, you will learn to implement a fully functional payment screen, including navigation, design, and integration with a billing service. We’ll walk through the payment page in three stages, ensuring a smooth, user-friendly payment process, and refactor the code for better performance in generating bills.

What's included

6 videos1 assignment

In this module, we will design a Kitchen View screen to manage and track the status of orders. You will use XState to create state machines for each table, implement styling to improve usability, and ensure smooth state transitions to reflect the real-time status of orders.

What's included

5 videos1 assignment

In this module, we will optimize the workflow for waiters by adding features such as sorting orders based on priority. You will also learn to make changes visible to waiters before persisting them to the database, ensuring accuracy and reducing errors in order management.

What's included

2 videos1 assignment

In this module, we will focus on using debugging tools and techniques to troubleshoot and resolve issues within the app. You will learn how to apply custom fonts to enhance the app’s visual aesthetics and ensure consistency across the interface, creating a unique and professional user experience.

What's included

2 videos1 assignment

In this module, we will focus on implementing full CRUD functionality for both products and tables. You will learn best practices for managing and manipulating data, ensuring that changes are reflected consistently across the app.

What's included

4 videos1 assignment

In this module, we will focus on fixing the bug that prevents tables from being marked as free after they've been occupied. You’ll learn how to implement proper state management to ensure accurate table status updates, and test the solution to guarantee smooth functionality within the app.

What's included

1 video1 assignment

In this module, we will dive into generating and maintaining code documentation using Compodoc, a powerful tool for Angular projects. You will learn how to structure and generate useful documentation to improve maintainability and collaboration, making the codebase easier to understand and work with.

What's included

1 video1 assignment

In this module, we will explore the concept of mocking the database in unit tests to isolate database operations and ensure accurate testing of app functionality. You’ll learn best practices for creating unit tests that ensure your app remains stable and reliable without relying on actual database interactions.

What's included

1 video2 assignments

Instructor

Packt - Course Instructors
Packt
1,299 Courses334,545 learners

Offered by

Packt

Explore more from Software Development

Why people choose Coursera for their career

Felipe M.
Learner since 2018
"To be able to take courses at my own pace and rhythm has been an amazing experience. I can learn whenever it fits my schedule and mood."
Jennifer J.
Learner since 2020
"I directly applied the concepts and skills I learned from my courses to an exciting new project at work."
Larry W.
Learner since 2021
"When I need courses on topics that my university doesn't offer, Coursera is one of the best places to go."
Chaitanya A.
"Learning isn't just about being better at your job: it's so much more than that. Coursera allows me to learn without limits."
Coursera Plus

Open new doors with Coursera Plus

Unlimited access to 10,000+ world-class courses, hands-on projects, and job-ready certificate programs - all included in your subscription

Advance your career with an online degree

Earn a degree from world-class universities - 100% online

Join over 3,400 global companies that choose Coursera for Business

Upskill your employees to excel in the digital economy

Frequently asked questions