Skip to main content
Schoolyi

Trust and procurement

Data residency and backups

Schoolyi runs on a single Ubuntu server that you or your operator provision, so hosting region is your choice rather than ours. This page states what the deployment does today - including a database backup that runs on update and does not include uploaded files - and what a school must arrange itself before loading production data.

Illustrative school scene for Trust Data Residency Backups

At a glance

A useful page should answer the next operational question

Where a Schoolyi deployment actually stores school data, what the backup does and does not cover, and the recovery questions we cannot answer for you yet.

Who this is for

  • IT leaders
  • Data protection owners
  • Trustees

Start with the evidence

Use the linked product and documentation pages to validate the workflow against your school’s data, roles, policies, and deployment.

Read the supporting material

How it works

Follow the handoffs, not just the feature list

A clear sequence makes ownership, exceptions, and the next system action visible.

  1. 01

    Choose the location

    Because the application is self-hosted on one Ubuntu server, the hosting region is decided when that server is provisioned. Record the jurisdiction, the provider, and who holds the account before any student data is loaded.

  2. 02

    Read what the backup covers

    A MySQL dump runs automatically before migrations on each update and is written to a single rotating file on the same server. Uploaded files are not in it, and nothing is copied off the host by default.

  3. 03

    Close the recovery gap

    A restore is a documented manual step, not a script, and we have not published a tested recovery-time objective. Decide who would perform a restore, from which copy, and rehearse it on a staging copy before go-live.

  4. 04

    Arrange off-host copies

    Add scheduled off-server copies of both the database and the uploads directory, with your own retention period. This is the single most important thing a school should add on top of what ships.

Stated facts

Residency, backup and recovery: what we can state

Every row below was checked against the deploy scripts, systemd units, and environment templates in the product repository rather than against other marketing pages. Where a row says the capability is not available, that is a statement about what ships today and not a hint at a roadmap.

Verified against the product code on .

QuestionAnswerBasis
Where does the application run?One Ubuntu server. The Next.js application and its MySQL database both run on that host, MySQL bound to localhost, with Caddy terminating TLS in front and the application listening only on 127.0.0.1.In the product
Who chooses the hosting region?You do, when the server is provisioned. No region is fixed or configurable in the software, and no provider is mandated by the deploy scripts.Your deployment
Is the database backed up automatically?A MySQL dump runs before migrations on each application update, compressed to a single file on the same host. It replaces the previous dump rather than accumulating history.In the product
Are uploaded files backed up?No. Uploads live on local disk and are preserved across deploys, but they are not included in the database dump and nothing copies them elsewhere.Not available
Are backups stored off the server?No. Everything the backup produces sits on the same disk as the database it came from. Off-host copies are a school responsibility today.Not available
Is there a scripted restore procedure?No. Restoring means importing the dump manually. There is guidance in the operational runbooks, but no restore script and no completed restore drill behind a published recovery objective.Not available
Is there replication, multi-region hosting, or failover?No. Single host, single database, no replica, no automated failover, no CDN.Not available
How long are backups retained?The deploy backup keeps one file. Any longer retention period is something you configure in your own off-host backup arrangement.Your deployment
Can we get a contractual residency or recovery commitment?Ask, and get it in writing for your deployment. Nothing on a public page can commit to it, and we would rather you hold a signed term than a marketing sentence.Agree in writing

What we do not claim

  • A named or guaranteed hosting region. You choose the region; we do not control it.
  • Scheduled off-host backups, or any backup of uploaded files, in what ships today.
  • A tested recovery-time or recovery-point objective. No restore drill has been completed.
  • Replication, multi-region deployment, or automated failover of any kind.
  • Certification against a data-protection standard. No audit has been performed.

Product truth

What to verify before rollout

Good school software copy should answer who owns the work, what the handoff produces, and which parts still depend on deployment decisions.

Validate for your rollout

Capability status

This page describes the supported workflow boundary. Confirm configuration, integrations, data, and policy requirements in a representative pilot before committing to production.

Teams in the workflow

  • IT leaders
  • Data protection owners
  • Trustees

Deep dive

Decisions, handoffs, and boundaries

Use these details to turn a product page into an implementation conversation.

Self-hosted changes the question

Most residency pages answer "which region does the vendor use". Here the honest answer is that you choose, because the application and its MySQL database run on one server you control, with Caddy terminating TLS in front of it.

The backup gap is the real risk

A backup that runs only on deploy, keeps one file, sits on the same disk as the database, and excludes uploads is a rollback aid rather than a disaster-recovery plan. Treat off-host backups and a rehearsed restore as go-live work, not as a later improvement.

Make ownership explicit

The host operator must document off-host copies, upload retention, restore access, and a rehearsal date. Hosting region alone does not answer availability or recovery obligations.

Evidence layer

Read the supporting product and implementation material before making a capability claim.

Questions, answered

Straightforward answers for visitors evaluating the product.

Which region is our data stored in?+

Whichever region the server is provisioned in. Schoolyi is self-hosted on a single Ubuntu host, and nothing in the software pins or replicates data to a particular region. If your policy requires a named jurisdiction, that is a decision you make when the host is created, and you can verify it directly with your provider rather than taking our word for it.

Test the answer with a representative record and role before making it part of a live term workflow. Capture the expected result and the exception path so the team can verify it after launch.

Is there an automatic daily backup?+

No. A MySQL dump runs before migrations each time the application is updated, and it overwrites the previous one. There is no scheduled daily backup, no off-host copy, and no backup of uploaded files in what ships. A school that needs those must add them.

Treat that boundary as an explicit procurement or deployment decision. Document the responsible owner and any supporting process before rollout.

What is your recovery time objective?+

We do not publish one, because we have not completed a restore drill that would let us stand behind a number. The restore path is a manual MySQL import of the dump. Asking us for an RTO figure we cannot evidence would be worse than telling you it is outstanding.

Record the responsible administrator and verify the control in the target deployment before production data is loaded. Keep the evidence with the school’s procurement or access-review record.

Is there replication or failover?+

No. It is a single server with a single MySQL instance. There is no read replica, no multi-region deployment, no automated failover, and no CDN in front of the application.

Treat that boundary as an explicit procurement or deployment decision. Document the responsible owner and any supporting process before rollout.

Can schools export their own data?+

Yes. Fee, payroll, roster, and activity-log data export as CSV or PDF from the product, the activity log has an NDJSON feed for a SIEM collector, and because you hold the server you also hold direct database access.

Before the first collection cycle, reconcile one paid, partially paid, and overdue student account so the family receipt and finance view agree. Keep any tax, gateway, refund, or accounting boundary as an explicit deployment decision.

Does the shipped backup include uploads?+

No. The pre-update database dump does not include uploaded files, and it stays on the same host. Arrange and test a separate off-host upload backup.

Treat that boundary as an explicit procurement or deployment decision. Document the responsible owner and any supporting process before rollout.

Students walking together across a school campus at sunset

Turn the page into a rollout conversation

We can walk through the workflow with your school’s roles, calendar, data, and first-term priorities.

Already using Schoolyi? Sign in