Skip to content
This repository has been archived by the owner on Sep 2, 2021. It is now read-only.
/ brackets-registry Public archive

A registry system for hosting Brackets extensions powered by node.js

License

Notifications You must be signed in to change notification settings

adobe/brackets-registry

Repository files navigation

Brackets Extension Registry Build Status

A node.js-powered registry for Brackets extensions.

Note: If you discovered any issue with the extension registry or have an idea for improvement, please file a bug in the brackets issue tracker.

Setup

  1. npm install

  2. Create a config folder at the top level. (This will be ignored by git.)

  3. In the config folder, put your SSL cert or create a self-signed cert. The key should be in certificate.key and the cert should be in certificate.cert.

  4. Register a GitHub API client app. The callback URL must match the hostname of your server. For testing, you could enter https://localhost:4040/auth/github/callback.

  5. Also in the config folder, create a config.json file that contains:

    • sessionSecret - key to use for session hashing (required)
    • githubClientId - client id for registered GitHub app (required)
    • githubClientSecret - client secret for registered GitHub app (required)
    • hostname - hostname of the server, defaults to localhost
    • securePort - port to run HTTPS on, defaults to 4040
    • redirectPort - port to run HTTP on, just redirects to securePort, defaults to 4000
    • rss.title - Title used for RSS feed, defaults to ''
    • rss.description - Description used for RSS feed, defaults to ''
    • rss.feedURL - URL used for RSS feed, defaults to '' (this is the URL used in the feed itself, not the URL used for the feed)
    • rss.siteURL - URL used for main site URL in the RSS feed, defaults to '' (see note above, both URLs here are used in the metadata of the feed)
    • admins - a list of "github:username" strings for people that are authorized to administer the packages in the registry
    • aws.accesskey - AWS accesskey is required for saving to S3
    • aws.secretkey - also required for saving to S3
    • s3.bucket - S3 bucket name that is used to store the data
    • sns.topic - If you're using SNS for errors, configure this setting to have the errors sent to SNS
  6. npm start

Debugging REPL

There's an optional REPL available. To set it up:

  1. Add "repl": true to the config.json file.
  2. npm install repl-client -g
  3. npm start
  4. (in another terminal window) rc /tmp/repl/registry.sock

You'll have the Express "app" available as app, and the repository module available as repository.

DropzoneJS

This project uses a slightly modified version of DropzoneJS. If you need to update it, take a look at the dropzone.js file for CHANGED comments.

Glyphicons

This repository also includes the Glyphicons Halflings set that ships with Bootstrap. Thank you to all of the contributors to open source software that we use.