Go further with Oracle APEX: build SkySutra

The second Kathuko APEX course. Build an app about the real night sky over wherever you are, in modern astronomy and in the Indian tradition, with the APEX features Turnout didn't use.

Free13 parts71 lessonsQuizzes and a certificateAfter Turnout
The project

Meet SkySutra

What's up tonight from your home, where the planets and the Moon are, when the ISS flies over, a log of what you saw, and the 27 nakshatras and the lunar days as the real sky. It never tells anyone what the sky means for them.

Saturn (Shani)ESE, 37° up · magnitude 0.3
Up now
Full MoonE, 28° up · Purnima, lunar day 15 of 30
Tonight
ISS passRises in the NW, highest at 19:14
In 20 min

Data that arrives by itself

A 9,000-star catalog loaded with Data Load Definitions; the ISS, space weather and NASA's picture of the day synchronized from REST services.

The sky, computed

Sidereal time, the planets, rise and set, tithi and nakshatra in PL/SQL, tested against published values, drawn by your own region plugin.

An app that runs on its own

Workflows and approvals, nightly automations, push alerts, a weekly email, search by meaning, an AI guide that cites its sources, and a public API.

See what you'll build

The finished SkySutra, after Part 12. Every screen is yours by the end of the part it names.

SkySutra's home page: the Moon, a Tonight table, the panchang and a round sky chart with planets
Part 5 Tonight The Moon, tonight's times, the panchang, your own sky chart plugin and the planets, all worked out in PL/SQL when the page opens.
A faceted search page listing stars with facets for Up now and Brightness
Part 6 9,096 stars A faceted search over the whole catalog: what's up now, how bright, which constellation and nakshatra.
Aldebaran's page: facts, its Vedic name Rohini, a story with its source, and the sky chart
Part 6 A star's own page Facts in blue, tradition in saffron, a sourced story, and the star ringed on the sky chart.
A world map with the ISS's position and its next orbit drawn as dots
Part 7 Where's the ISS? Its ground track on a map, from orbital elements fetched each night and SGP4 written in PL/SQL.
A month calendar with sky events and saffron bars for Ekadashi, Amavasya and Purnima
Part 9 The sky calendar Eclipses, meteor showers and the Moon near the planets in blue; the lunar days in saffron.
The Ask the Sky chat answering What can I see tonight with the Moon and planets and their times
Part 11 Ask the sky An AI guide that answers only from SkySutra's own data and tools, and never makes predictions.
The Observing Plan: a table of the Moon, planets and bright stars with direction and altitude
Part 12 Tonight's observing plan Where to look and when, from your home, with a one-click PDF.
SkySutra on a phone: the sky chart and planet cards

On your phone

SkySutra installs as an app, with push alerts before the ISS flies over. It's a progressive web app: no app store, and the same pages.

Part 12: Share it

Curriculum

Each part builds on the last and ends with review questions and a short quiz. A suggested pace is one part a week.

Before you build

0Orientation
  • A tour of SkySutra
  • What you need from Turnout
  • The sky in ten minutes
  • Vedic sky, in plain English
  • Set up your workspace
  • Signing in

Open Part 0

The sky as data

1Modeling the sky
  • Bodies, stars and constellations
  • Nakshatras as data
  • Observers and places
  • Observations and photos
  • Time the astronomer's way
  • Store or compute?
  • Sidereal and tropical
  • Build the schema

Open Part 1

2Loading a catalog
  • Choosing a catalog
  • Data Load Definitions
  • Transformations on the way in
  • Constellations
  • The 27 nakshatras
  • Loads you can run again

Open Part 2

3Sky math in PL/SQL
  • Why the math lives in the database
  • Julian date and sidereal time
  • From RA/Dec to altitude and azimuth
  • The Sun and the Moon
  • Phase, tithi and nakshatra
  • The planets
  • Testing against published answers

Open Part 3

4Live data
  • REST Data Sources
  • The ISS from CelesTrak
  • Synchronization
  • Aurora chances and the picture of the day
  • When a service is down
  • Web credentials for keys

Open Part 4

Pages people use

5Tonight's sky
  • Dark first
  • Template Components
  • Today in the sky
  • The sky chart
  • The Tonight page

Open Part 5

6Exploring the stars
  • Faceted Search
  • Smart Filters
  • A star's own page
  • Search everything

Open Part 6

7Where you are
  • Your location from the browser
  • The Map region
  • Spatial queries
  • Where's the ISS?

Open Part 7

8The observing log
  • Logging an observation
  • A human task
  • A workflow
  • The moderator's inbox
  • Comments
  • How-to: photos in Object Storage (optional)

Open Part 8

On its own, and out into the world

9The sky calendar and lunar days
  • A sky calendar
  • Lunar days through the month
  • Lore pages
  • Why the signs disagree

Open Part 9

10Running on its own
  • A nightly chain
  • Work in the background
  • Push notifications
  • A weekly sky email

Open Part 10

11Ask the sky
  • Embeddings in plain English
  • A Vector Provider
  • Vectors in tables
  • Search by meaning
  • An assistant grounded in your data
  • Keeping it honest

Open Part 11

12Share it
  • JSON Relational Duality views
  • A public API from a view
  • A printable observing plan
  • On your phone
  • Go-live

Open Part 12

Get started in three steps

1. Finish Turnout, or know the basics

SkySutra doesn't teach pages, regions, packages or authorization again. If you're new to APEX, start with the first course, Turnout. Part 0 has a checklist of what you need.

2. Start Part 0

Follow Part 0. You'll learn just enough astronomy and Vedic sky to follow along, and make an empty SkySutra app in your workspace.

3. Build SkySutra, one part at a time

Each part adds to the same app. Pass every part's quiz to earn your certificate.

APEX features showcased

Everything SkySutra adds beyond Turnout, grouped by part. Each one has a real job in the app.

Getting ready Part 0

  • A second app in the same workspace, kept apart by a table prefix
  • Your own app icon, and Vita - Dark from the first page
  • Oracle APEX accounts and Google sign-in side by side
  • An Access Control role for moderators

Modeling the sky Part 1

  • Natural keys from star catalogs, beside surrogate ids
  • UTC everywhere, and why a TIMESTAMP WITH TIME ZONE can't be a key
  • A check constraint for "exactly one target"
  • Deciding what to store and what to compute
  • Quick SQL for the first draft, finished by hand

Loading a catalog Part 2

  • Data Load Definitions: a data load and a data profile
  • SQL Expression and Lookup columns, and transformations on the way in
  • Merge or Replace, and an error log for rows that fail
  • A Data Loading page, for administrators only

Sky math in PL/SQL Part 3

  • Julian dates, sidereal time and alt-azimuth in packages
  • The Sun, the Moon, the planets, tithi and nakshatra
  • BINARY_DOUBLE where the math is heavy
  • Tests against published values, run from SQL Commands

Live data Part 4

  • REST Data Sources, discovered from one URL
  • Remote servers and parameters
  • Scheduled synchronization with Merge, and triggers that keep fetched_at true
  • Web credentials, so API keys stay out of code and exports
  • What to show when a service is down

Tonight's sky Part 5

  • Three theme styles with your own CSS, remembered per person
  • Template Components, one inside another
  • A region plugin that draws the sky chart as SVG
  • The render procedure in a package
  • Value Attribute Pairs and one-line regions on views

Exploring the stars Part 6

  • Faceted Search with range and list facets
  • Smart Filters in one search bar
  • A plugin attribute that reads a page item
  • Search Configurations and an application Search page

Maps and places Part 7

  • Get Current Position, and the browser's time zone
  • Background execution chains for slow work
  • Map region: layers, shapes, info windows and clustering
  • Oracle Spatial: SDO_GEOMETRY and distances
  • A pipelined table function as a map source

The observing log Part 8

  • Image Upload item, resized in the browser
  • Cards with BLOB images
  • Task Definitions and Human Tasks
  • Workflows, and the Unified Task List as a moderator's inbox
  • The Comments template component

Calendar and lore Part 9

  • Calendar region with list view
  • Sky events computed ahead and stored
  • Markdown Editor item and APEX_MARKDOWN, safely escaped
  • A Checkbox plugin attribute that adds a layer to the chart

Running on its own Part 10

  • Automations with ordered actions and Stop Execution On Error
  • A job log in autonomous transactions
  • Progress from a background execution chain
  • PWA push notifications with APEX_PWA
  • Email templates and APEX_MAIL

Ask the sky Part 11

  • Vector Providers (Gemini, OpenAI, OCI and others)
  • VECTOR columns and AI Vector Search
  • A Search Configuration that searches by meaning
  • An AI Agent with Retrieve Data tools: grounded answers (RAG)
  • Show AI Assistant, inline on a page
  • A system prompt that cites sources and refuses predictions

Share it Part 12

  • JSON Relational Duality views
  • A read-only REST API with ORDS, including a media handler
  • PDFs with APEX_DATA_EXPORT, no print server
  • Installable on phones as a progressive web app
  • The Advisor and a go-live checklist

Questions

Do I need to do Turnout first?

It's the easiest way in. SkySutra assumes you can build pages and regions, write a PL/SQL package and set up authorization. If you can, start here; Part 0 lists what you need, with the Turnout lesson for each.

Is it really free?

Yes. Every lesson, quiz and certificate is free, and so is the apex.oracle.com workspace you'll use. The AI parts use a free Gemini key.

Do I need to know astronomy?

No. Part 0 explains altitude and azimuth, magnitude, sidereal time, nakshatras and tithis in plain English, and every formula is explained when it's used.

Is SkySutra an astrology app?

No. It shows the real sky, and the astronomy inside the Indian calendar: the Moon's place among the stars, the angle between the Moon and the Sun. Its stories name their sources. It never makes predictions or says what the sky means for a person.

Will it work on my own APEX instance?

Any APEX 26.2 instance with a 26ai database works. The lessons are written for apex.oracle.com and say where it differs, for example where it blocks JavaScript in the database or vector memory.

Is there an app export for each part?

No. You build one app as you go, and each part's downloads are the scripts and files its lessons use. There's one export of the finished app, at the end of Part 12, with the steps to install it next to yours.

How do I earn the certificate?

Pass the quiz at the end of each part. Then put your name on the certificate page and print it or save it as a PDF.