The source code for the SSO Tools platform. https://sso.tools
Go to file
Will Webberley c3fafe61e1
All checks were successful
ci/woodpecker/push/woodpecker Pipeline was successful
Add status indicator to footer
2024-12-07 22:34:40 +00:00
api Add taskfile to simplify local running [skip ci] 2024-12-07 22:07:58 +00:00
helpers removed un-needed files 2024-05-25 23:30:44 +01:00
idp Minor build updates [skip ci] 2024-12-07 22:11:03 +00:00
web Add status indicator to footer 2024-12-07 22:34:40 +00:00
.gitignore Updated gitignore 2024-10-05 09:56:02 +01:00
.woodpecker.yml Minor build updates [skip ci] 2024-12-07 22:11:03 +00:00
LICENSE Updated policies 2022-05-05 14:05:56 +00:00
README.md Minor build updates [skip ci] 2024-12-07 22:11:03 +00:00
Taskfile.yml Add taskfile to simplify local running [skip ci] 2024-12-07 22:07:58 +00:00

SSO Tools

This is a monorepo containing the code for the web front-end, web API, and IDP service for the SSO Tools web application platform.

Contents

Run locally in development mode

To run the app locally, first ensure you have the needed software installed:

  • Python ^3.12
  • Node.js (we recommend v22.x)
  • Docker (we use this for the Mongo database)
    • It can be installed via the Docker website or your package manager
    • Ensure the Docker service is running
  • Taskfile (convenience tool for running tasks)
    • This can be installed using brew install go-task

To begin, clone this repository to your computer:

git clone https://git.wilw.dev/wilw/sso-tools.git

Next, use task to initialise the project:

task init

There is an envfile in both the api/ and idp/ directories. You can edit these as needed (though the defaults should allow you to at least launch the app).

Finally, you can start the API, IdP service, and web UI by running:

task

Note: this command also starts the MongoDB database on port 27017. If the DB is already running, you'll see errors reported, but the API and web will still be launched.

You can now navigate to http://localhost:3800 to start using the main webapp. The IdP service is available at http://localhost:6001.

If you pull updates from the repository in the future (e.g. with git pull) you may need to ensure your dependencies are up-to-date before starting the app again. This can be done with:

task install-deps

Deploy to a production environment

This is currently not publicly documented, but can easily be achieved.

I recommend reading the .woodpecker.yml file to understand how the components are built and transferred. When running the API and IdP service, take note of the envfile in each of the directories to understand how the settings can be modified for production use.

Contributions

Contributions to the core project are certainly welcomed. Please get in touch for an invitation to join this repository.