Big Bang Universe
This universe is intended as a map to explore the Big Bang Ecosystem. It is modeled after the Cloud Native Computing Foundation (CNCF) landscape and based on the same open source code.
Current Version
Interactive Version
Please see universe.bigbang.dso.mil.
New Entries
Thank you for your interest in improving the Big Bang Universe! If you know of software that supports Big Bang, we'd love to add it to the Universe.
Please let us know about potential additions by filing an issue in GitLab. If you'd like to contribute directly, please make a merge request.
Logos
The following rules will produce the most readable and attractive logos:
- We require SVGs, as they are smaller, display correctly at any scale, and work on all modern browsers. If you only have the logo in another vector format, please convert it. SVG Requirements can be found in Proper SVGs below.
Pure SVGs are required. SVGs containing embedded PNGs will be rejected because they do not scale seamlessly.
- When multiple variants exist, use one with the text above or below the logo, rather than one with the text to the side.
- Don't use reversed logos (i.e., with a non-white, non-transparent background color).
- Logos must include the company, product or project name (please choose the name in English if there are multiple translations).
- Match the item name to the name shown in the logo. So an Acme Rocket logo that shows "Rocket" should have the item name "Rocket", while if the logo shows "Acme Rocket", the item name should be "Acme Rocket". Otherwise, logos looks out of place when you sort alphabetically.
- Google images is often the best way to find a good version of the logo (but ensure it's the up-to-date version). Search for myproduct logo filetype:svg but substitute your project or product name for
myproduct
. - You can either upload an SVG to the
hosted_logos
directory or put a URL as the value, and it will be fetched.
Proper SVGs
No embedded fonts
SVGs need to not rely on external fonts so that they will render correctly in any web browser, whether or not the correct fonts are installed. If you have the original AI file, here are the steps in Illustrator to create a proper SVG:
- Open file in Inkscape
- Select all text
- With the text selected, go to Path > Object to Path in the top menu
- Save the SVG file
No embedded images
Embedded images will not scale seamlessly. These will need to be converted to vectors
- Open file in Inkscape
- Select image
- With the image selected, go to Path > Trace Bitmap in the top menu
- From the Trace Bitmap menu, select Multicolor
- Set Detection mode to Colors
- Select 256 scans, smooth, stack, and remove background
- Click Apply at the bottom of the Trace Bitmap menu
- Press Ctrl+Shift+L to open the Layers and Objects tool
- Select the Layer starting with "image"
- Click the trash can to delete the layer
- Save the image as an SVG file
Corrections
Please open a merge request with edits to landscape.yml. The file processed_landscape.yml is generated and so should never be edited directly.
If you don't like a project description, edit it in GitHub. If your project isn't showing the license correctly, you may need to paste the unmodified text of the license into a LICENSE file at the root of your project in GitHub, in order for GitHub to serve the license information correctly.
External Data
The canonical source for all data is landscape.yml. We download data for projects and companies from the following sources:
- Project info from GitHub
- CII Best Practices Badge data
We do not pull data from Crunchbase. Instead we manually add the company information using the
organization
fields.
The update server enhances the source data with the fetched data and saves the result in processed_landscape.yml. The app loads a JSON representation of processed_landscape.yml to display data.
If you are building the universe locally, you will need a Github API key with no permissions. Set the environmental variable GITHUB_KEY
to the API key generated by Github.
In this universe, we purposely do not pull twitter data. The data pulled is the last tweet date for each item. This data goes stale quickly and is not useful for the final universe. As a result, builds will show errors about fetching twitter data and cards will have a blank
Latest Tweet
field. This is normal.
Best Practices Badge
As explained at https://bestpractices.coreinfrastructure.org/:
The Linux Foundation (LF) Core Infrastructure Initiative (CII) Best Practices badge is a way for Free/Libre and Open Source Software (FLOSS) projects to show that they follow best practices. Projects can voluntarily self-certify, at no cost, by using this web application to explain how they follow each best practice. The CII Best Practices Badge is inspired by the many badges available to projects on GitHub. Consumers of the badge can quickly assess which FLOSS projects are following best practices and as a result are more likely to produce higher-quality secure software.
The interactive universe displays the status (or non-existence) of a badge for each open-source project. There's also a feature not available through the filter bar to see all items with and without badges.
License
Everything is under the Apache License, Version 2.0, except for project and product logos, which are generally copyrighted by the company that created them, and are simply cached here for reliability. The trail map, static universe, serverless universe, and landscape.yml file are alternatively available under the Creative Commons Attribution 4.0 license.
Formats
The Big Bang Universe is available in these formats:
Installation
You can install and run locally with the install directions. It's not necessary to install locally if you just want to edit landscape.yml.
Vulnerability reporting
Please open a confidential issue or, for sensitive information, email help@dsop.io.
Adjusting the Universe View
The setting.yml describes the key elements of a universe big picture. It specifies where to put each section.
All these elements should have top
, left
, width
and height
properties to
position them. rows
and cols
specify how much columns or rows we expect in a
given horizontal or vertical section.
When we see that those elements can not fit the sections, we need to either increase the width of all the horizontal sections, or increase height and amount of rows in a single horizontal section and adjust the position of sections below.
Publication
This repo is automatically mirrored to code.il2.dso.mil and run through the Padawan pipeline for final publication.