The cloud portion of Nidus
Find a file
2025-11-06 22:59:09 +00:00
arcgis-go@5bc087a120 Update arcgis-go 2025-11-06 22:59:09 +00:00
dberrors Save oauth tokens to the database for use later. 2025-11-06 00:23:58 +00:00
dbinfo Save oauth tokens to the database for use later. 2025-11-06 00:23:58 +00:00
enums Retroactively fix some SQL schema problems 2025-11-05 17:36:32 +00:00
factory Save oauth tokens to the database for use later. 2025-11-06 00:23:58 +00:00
migrations Save oauth tokens to the database for use later. 2025-11-06 00:23:58 +00:00
models Save oauth tokens to the database for use later. 2025-11-06 00:23:58 +00:00
sql Check if we have oauth information, only prompt if its missing 2025-11-06 22:58:18 +00:00
static Add a basic main page with login 2025-11-03 22:13:19 +00:00
templates Check if we have oauth information, only prompt if its missing 2025-11-06 22:58:18 +00:00
.air.toml Air: Don't rebuild for html, don't restart on error 2025-11-05 17:34:51 +00:00
.gitattributes Add a basic main page with login 2025-11-03 22:13:19 +00:00
.gitignore Ignore air's temp building directory 2025-11-05 17:17:21 +00:00
.gitmodules Start using the ArcGIS client to get user data with the token 2025-11-06 22:28:56 +00:00
arcgis.go Check if we have oauth information, only prompt if its missing 2025-11-06 22:58:18 +00:00
auth.go Format all source files. 2025-11-06 22:31:51 +00:00
bobgen.yaml Add generated Bob database integration 2025-11-04 23:11:32 +00:00
database.go Format all source files. 2025-11-06 22:31:51 +00:00
default.nix Add a basic 'hello-world' buildable with Nix 2025-11-03 12:22:06 +00:00
endpoint.go Check if we have oauth information, only prompt if its missing 2025-11-06 22:58:18 +00:00
fileserver.go Format all source files. 2025-11-06 22:31:51 +00:00
flake.lock Add a basic 'hello-world' buildable with Nix 2025-11-03 12:22:06 +00:00
flake.nix Add user sessions and login 2025-11-05 17:15:33 +00:00
go.mod Start using the ArcGIS client to get user data with the token 2025-11-06 22:28:56 +00:00
go.sum Start using the ArcGIS client to get user data with the token 2025-11-06 22:28:56 +00:00
html.go Check if we have oauth information, only prompt if its missing 2025-11-06 22:58:18 +00:00
lefthook.yml Add lefthook configuration for formatting 2025-11-06 22:31:29 +00:00
LICENSE Initial commit 2025-11-03 05:12:02 -07:00
main.go Save oauth tokens to the database for use later. 2025-11-06 00:23:58 +00:00
README.md Update readme with air instructions 2025-11-05 17:17:03 +00:00
response.go Format all source files. 2025-11-06 22:31:51 +00:00

Nidus Sync

This is the software that powers Nidus Cloud Sync.

Building from source

First, you'll need Nix.

Then:

nix develop
go build .

Running

> BASE_URL=https://sync.nidus.cloud ARCGIS_CLIENT_ID=foo ARCGIS_CLIENT_SECRET=bar POSTGRES_DSN='postgresql://?host=/var/run/postgresql&dbname=nidus-sync' ./nidus-sync

Hacking

air

This project uses air for fast compile-and-test loops. You can run it with:

> BASE_URL=https://sync.nidus.cloud ARCGIS_CLIENT_ID=foo ARCGIS_CLIENT_SECRET=bar POSTGRES_DSN='postgresql://?host=/var/run/postgresql&dbname=nidus-sync' air

bob

This uses the bob query framework. You can regenerate the models for bob with:

PSQL_DSN="postgresql://dbname?host=/var/run/postgresql&sslmode=disable" go run github.com/stephenafamo/bob/gen/bobgen-psql@latest"
PSQL_DSN="postgresql://?host=/var/run/postgresql&sslmode=disable&dbname=nidus-sync" go run github.com/stephenafamo/bob/gen/bobgen-psql@latest

This will generate a bunch of files. They're already committed, you only need this if you change the database schema in some way.