Documentation

Quickstart

Let’s get you started with CloudSeed in less than 5 minutes.

CloudSeed Tech Stack

The Code

The CloudSeed codebase is hosted from a private git repo. When you purchase a license we’ll add you to the repo.

The codebase is split into 3 primary sections:

  • [Backend] App (FSharp + .NET): The core application logic
    • App.Tests (xUnit): The testing suite for App
  • [Frontend] Web (Svelte / Sveltekit): A thin UI client that demonstrates interfacing with App APIs
  • Database (Postgres): A container for running a live, local DB for development and testing.

Each service aims to be simple and modular so it’s easy to swap out individual components.

Running CloudSeed

Once you’ve downloaded CloudSeed from the repo, we can run it locally.

Each service is containerized individually. We can utilize docker-compose to orchestrate them together.

If you’re using VS Code, there are built in launch configurations and tasks you can use:

  • Run: Task launch-compose

We can also run docker-compose manually:

  • From root: docker-compose down --remove-orphans && docker-compose build && docker-compose up

If all goes smoothly, you should be able to access each service at:

  • Web - localhost:5000
  • App - localhost:5001
    • Verify via: localhost:5001/sentinels
  • DB - localhost:5002

Testing

  • If using VS Code, Run Tasks:
    • launch-test-compose

Manual commands:

  • From root: sudo docker-compose -f docker-compose.test.yml down --remove-orphans && sudo docker-compose -f docker-compose.test.yml up cloudseed_db_test (this needs to stay running)

  • From root, in new terminal: sudo docker-compose -f docker-compose.test.yml build cloudseed_app_tests && sudo docker-compose -f docker-compose.test.yml up cloudseed_app_tests

More resources

Up and Running with CloudSeed (F# / SvelteKit Boilerplate)