Skip to content

KainosSoftwareLtd/TechRadar

 
 

Repository files navigation

Tech Radar

Introduction

A platform to allow teams to gather thoughts and views on technologies (to enable community technology management) within your organisation.

  • Add technologies that you are interested in and associate with categories and projects
  • Get your users to comment on the technologies
  • Vote on whether they think they should be adopted, trialed or avoided.
  • Users with the correct permissions can then set the 'official' status with a rationale for each technology

The implementation is extremely flexible with all values (e.g. status values) changable in the data and via the user interface.

Main documentation is located here -> http://gpimblott.github.io/TechRadar/

It is hosted on Heroku, and developed using Node.js, Passport, Bootstrap and PostgreSQL.
It consists of two layers:

  1. Web Layers
  2. API REST Services

The web application calls the API REST services using ajax.

Getting Started

Prerequisites

For local development:

  • Install Node.js
  • Install PostgreSQL, and set up a separate database

Configuration

Below are some details on environment variables (most are optional for local development):

COOKIE_KEY - The secret key to use for cookie encryption (uses an insecure value if not defined)

GOOGLE_ID - Google Analytics tracking code. GA is turned off if not defined

To enable Azure AD sign-in (for SSO), set the following environment variables:

AZURE_CLIENT_ID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxx
AZURE_CLIENT_SECRET=xxxxxxxxxxxxxxxxxxxxxxxxx
AZURE_RETURN_URL=https://xxxxxxxxxxx.com/auth/openid/return
AZURE_IDENTITY_METADATA=https://login.microsoftonline.com/xxxxxx/.well-known/openid-configuration

To learn more about the above values, click here.

Additional Azure AD settings can be found in configAzureAD.js.

Installation

  1. Define the following environment variables; either by creating a process.env in the root directory or by defining standard environment variables on your machine.
DATABASE_URL=postgres://<db-username-here>:<db-password-here>@localhost:5432/<db-name-here>
SSLMODE=false
AZURE_CLIENT_ID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxx
AZURE_CLIENT_SECRET=xxxxxxxxxxxxxxxxxxxxxxxxx
AZURE_RETURN_URL=https://xxxxxxxxxxx.com/auth/openid/return
AZURE_IDENTITY_METADATA=https://login.microsoftonline.com/xxxxxx/.well-known/openid-configuration
  1. Run node database/runMigrations.js up to create all the required tables
  2. Run node database/dbtestdata.js to add test data
  3. Run node server.js
  4. Navigate to http://localhost:8090/
  5. Unless you have properly set up the Azure environment variables (to login with SSO), you can login with a registered user (see the dbtestdata script, e.g. admin; letmein)

About

Community technology management and decision making tool

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 78.8%
  • EJS 20.3%
  • Other 0.9%