Welcome to TechRadar!
TechRadar started with a few aims:
- Share experience with technologies across a community
- Record the technologies used on projects
- Promote a common view of technologies across a community
Designed as a simple Web Application it allows the open exchange of views on technologies either by 'voting' on a technology or by entering a comment based detailing your views/experiences.
It allows users to:
- Add technologies that you are interested in and associate with categories and projects
- Users can Comment on the technologies
- Users can 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
- Users can indicate that they have used a technology
The implementation is extremely flexible with all values (e.g. status values) changable in the data and via the management interface.
- Users skills tracking - Each user can indicate that they have used a technology
- Technology version information tracked - comments and projects can be linked to a specific version of a tool
- ADFS integration
- License information for technologies
Planned future features
- Dashboard Enhancements
TechRadar is a Web Application developed using NodeJS, Passport, Bootstrap and PostgreSQL.
It consists of two layers:
- Web Layers
- API REST Services
The web application calls the API REST services using ajax.
Tech Radar is a NodeJS application
- PostgreSQL database (other databases are available and will probably work with small changes to the schema)
The following environment variables can be set
COOKIE_KEY = xxxxxxxxxxx : The secret key to use for cookie encryption - uses an insecure value if not defined
GOOGLE_ID = xxxxxxxxxxx : Google Analytics tracking code. GA is turned off if not defined
To enable Azure AD sign-in, set the following environment variables:
If these are not defined AD integration is turned off
Installation is as follows:
- Provision a node environment and PostgreSQL database
- Define the following environment variables; either by creating a process.env in the root directory or defining standard environment variables
- Deploy code to target environment
database/runMigrations.js upto create all the required tables
database/dbtestdata.jsto create some test data if required
npm testto run unit tests.
node server.js | bunyanto start application
Deploying the code to your preferred NodeJS environment (personally I use OpenShift and Heroku)
Other documentation is located here -> http://gpimblott.github.io/TechRadar/