Skip to content

Latest commit

 

History

History
76 lines (54 loc) · 3.83 KB

CONTRIBUTING.md

File metadata and controls

76 lines (54 loc) · 3.83 KB

Contributing

Things You'll Need

Running Locally

[NOTE]: Unless you have permissions (you probably don't) to the Azure resources referenced in the codebase many things will not work. If you want to run things locally you'll most likely need to create your own Azure resources.

Building Typescript

Currently only the Bluesky portion of the front-end requires Typescript building. Run all npx commands from SeattleCarsInBikeLanes directory.

When making changes

  • npx webpack --watch

Before deploy

  • npx webpack

Secrets List

May or may not be up to date. Do a find all on "GetSecret" to confirm.

  • admin-password: Password to access the admin page (/AdminPage). You can configure this to whatever you want.
  • admin-username: Username to access the admin page (/AdminPage). You can configure this to whatever you want.
  • computervision: Api key for Computer Vision service. Used for extracting tags from uploaded images. Create your own Computer Vision service and enter your key.
  • imgur-access-token: Access token for Imgur API. Used for uploading images to Imgur. Create your own Imgur application using the docs here.
  • imgur-client-id: Client ID for Imgur API. Used for uploading images to Imgur.
  • imgur-client-secret: Client secret for Imgur API. Used for uploading images to Imgur.
  • imgur-refresh-token: Refresh token for Imgur API. Used for uploading images to Imgur.
  • slack-user-id: User ID of Slack member who finalized uploaded messages are sent to.
  • slackbot-token: Legacy Slack bot token used for sending Slackbot messages.
  • social-ridetransit-access-token: Access token for Mastodon server client. Used for posting to https://social.ridetrans.it

Running Profiler in Visual Studio

  1. Ensure VSStandardCollectorService150 (Visual Studio Standard Collector Service 150) service is running
  2. In Program.cs update the AuthorityHost URL to use the tenant ID instead of common
  3. Finally exclude all credential types except for InteractiveBrowserCredentials. That must be specifically included.

Extracting Bluesky Key from Local Client

In console

const openRequest = indexedDB.open('@atproto-oauth-client');
const sessionRequest = openRequest.result.transaction('session').objectStore('session').get('did:plc:penphldurhndgdxxn3ezvmoi');
let privateKey = sessionRequest.result.value.dpopKey.keyPair.privateKey;

Useful Links

Publishing NuGet Packages

  1. dotnet build -c Release
  2. dotnet pack -c Release
  3. dotnet nuget push <path to .nupkg> -k <NuGet API key>