---
title: "How to Get Going with the On"
description: "This workshop setup guide prepares a minimal Todo SaaS application for a series of enterprise-readiness workshops, while warning that the base app is not production quality and has intentional security shortcomings. It uses a React frontend, an Express API written in TypeScript, SQLite persistence, Prisma for ORM and database visualization, and an Nx workspace for shared project commands. Developers install Node.js v18 or higher, obtain the repository, run npm ci, seed two users with npm run init-db, and start the application with npm start. The frontend runs on localhost:3000, the API on localhost:3333, and Prisma Studio on localhost:5555 for inspecting users and todos. The guide concludes by directing developers to workshops covering OpenID Connect, SCIM, Terraform, Okta Workflows, and cross-application sign-out."
---

# How to Get Going with the On

[Okta](https://yomu.fyi/company/okta) · Alisa Duncan · Jul 27, 2023

**Type:** Tutorial

## Summary

This workshop setup guide prepares a minimal Todo SaaS application for a series of enterprise-readiness workshops, while warning that the base app is not production quality and has intentional security shortcomings. It uses a React frontend, an Express API written in TypeScript, SQLite persistence, Prisma for ORM and database visualization, and an Nx workspace for shared project commands. Developers install Node.js v18 or higher, obtain the repository, run npm ci, seed two users with npm run init-db, and start the application with npm start. The frontend runs on localhost:3000, the API on localhost:3333, and Prisma Studio on localhost:5555 for inspecting users and todos. The guide concludes by directing developers to workshops covering OpenID Connect, SCIM, Terraform, Okta Workflows, and cross-application sign-out.

## Context

The guide introduces an on-demand workshop series that incrementally enhances a minimal B2C Todo application for enterprise use cases, including multi-tenancy, customer-managed identity providers, user synchronization, reporting, and environment automation. It focuses on getting the application running locally before those workshops begin.

## Approach / What changed

Install Node.js v18 or higher, obtain the okta-enterprise-ready-workshops project, install locked dependencies with npm ci, seed two local users with npm run init-db, and launch the React frontend and Express API with npm start. Use the documented localhost endpoints and npx prisma studio to inspect the running application and database.

## Takeaways

- The application combines React, an Express API in TypeScript, SQLite, Prisma, and an Nx workspace; the frontend and API are served together with npm start.
- Running npm run init-db seeds two users and prints their credentials, while storing passwords in plaintext is an intentional shortcoming that a later enterprise authentication workshop addresses.
- The local services use separate ports: the Todo frontend runs on localhost:3000, the API on localhost:3333, and Prisma Studio on localhost:5555.

## FAQ

### What tools and versions are required to run the application locally?

The guide requires Node.js v18 or higher, which includes npm and npx. A code editor or IDE is also needed; Git and a GitHub account are optional because the project can be downloaded as a zip file.

### Why does the setup seed users with plaintext passwords?

The initialization script writes the users and their passwords to the command line and stores the passwords in plaintext in the database. The guide identifies this as an intentional shortcoming that a later workshop replaces with an enterprise-ready authentication mechanism.

### How can the API and database be inspected separately?

The Express API can be served with npm start or npm run serve-api and accessed on localhost:3333. Prisma Studio runs with npx prisma studio on localhost:5555, where users and todos can be viewed or changed.

**Tags:** [Express](https://yomu.fyi/topic/express), [Prisma](https://yomu.fyi/topic/prisma), [React](https://yomu.fyi/topic/react), [SQLite](https://yomu.fyi/topic/sqlite), [TypeScript](https://yomu.fyi/topic/typescript)

- Source: [Okta](https://developer.okta.com/blog/2023/07/27/enterprise-ready-getting-started)
- Source URL: https://developer.okta.com/blog/2023/07/27/enterprise-ready-getting-started
- Ingested by Yomu: 2026-09-17T14:13:02.110Z

[Read original post](https://developer.okta.com/blog/2023/07/27/enterprise-ready-getting-started)
