App Index
In addition to the Sharp App Templates there's a number of Sharp Apps to illustrate the various features available and to showcase the different kind of Web Apps that can easily be developed. The source code for each app is available either individually from github.com/sharp-apps or published as Gist Desktop Apps.
App | URL Scheme | Command line (Win/macOS/Linux) |
---|---|---|
Spirals | app://spirals | $ x open spirals |
Redis | app://redis | $ x open redis |
Rockwind | app://rockwind | $ x open rockwind |
Plugins | app://plugins | $ x open plugins |
Chat | app://chat | $ x open chat |
Blog | app://blog | $ x open blog |
Win32 | app://win32 | $ x open win32 |
ServiceStack Studio | app://studio | $ x open studio |
SharpData | app://sharpdata?mix=northwind.sharpdata | $ x open sharpdata mix northwind.sharpdata |
SharpData | app://sharpdata?mix=chinook.sharpdata | $ x open sharpdata mix chinook.sharpdata |
As SharpData is a generic RDBMS UI it needs to mix in Gists containing the DB info and/or .sqlite db if using SQLite
app URL Schemes
To open Sharp Apps with the app://
URL Scheme install the app dotnet tool:
$ dotnet tool install -g app
$ app -version
If on macOS/Linux you can use the cross-platform x dotnet tool to open Sharp Apps in your Default Browser:
$ dotnet tool install -g x
$ x open spirals
app local aliases
Where ever you can use a Gist Id, you can assign a local user-friendly alias to use instead such as referencing Gist Desktop Apps, e.g. we can assign the redis gist app to use our preferred alias:
$ app alias local-redis 6de7993333b457445793f51f6f520ea8
That we can open via command-line:
$ app open local-redis
Or URL Scheme:
app://local-redis
Or if we want to run our own modified copy of the Redis Desktop App, we can mix the Gist files to our local directory:
$ app mix local-redis
Make the changes we want, then run our local copy by running app
(or x
) without arguments:
$ app
Other alias command include:
View all local aliases
$ app alias
View single alias
$ app alias db
Remove a local alias
$ app unalias db
Private Sharp Apps
Alternatively Sharp Apps can be published to a GitHub repo (public or private) and run with:
$ app open <user>/<repo>
Or link to it with its custom URL Scheme:
app://<user>/repo
If it's in a private repo they'll need to either provide an AccessToken in the GITHUB_TOKEN
Environment variable or using the -token
argument:
app://<user>/repo?token=<token>
Command Line:
$ app open <user>/<repo> -token <token>
Private Gist Desktop Apps
The token
can also be used to run Gist Desktop Apps published to private gists:
app://<gist-id>?token=<token>
Publishing Gist Desktop Apps
Publishing a Gist Desktop App just involves uploading the Sharp App's static folder to a Gist which can be done with the publish
command along
with the GitHub AccessToken containing gist write permissions for the App's static files to be published to:
$ x publish -token <token>
The first time it's run it will publish the files in the current directory to a new Gist and save the Gist Id to a local .publish
file so
the next time the above publish
command is run it will update the same gist.