A static Jekyll site for the Blue Button 2.0 API splash page: https://bluebutton.cms.gov.
See below for instructions to install locally and make changes to the code.
NOTE: Internal software engineers or other interested parties should follow the documentation for running a Dockerized local development enviornment. For more information see the Dockerized Setup section.
We've moved the CSS for this application and our Sandbox application into a consolidated Blue Button 2.0 API CSS repository so that we can more easily keep things consistent and deploy changes more quickly.
You'll need to clone/download the BlueButton CSS repository to get started. If you're using a terminal on a Mac/Linux machine, navigate into the bluebutton-site-static
repository and then run the following command:
git clone git@github.com:CMSgov/bluebutton-css.git
If you need to make CSS changes, make them within this directory and commit them to that repository. These changes will be ignored by the git status of the bluebutton-site-static
project, but you will see any CSS changes take effect locally.
For more instructions on how to make changes to this css, view the readme inside of the bluebutton-css
directory.
It is assumed that you have the following installed on your local machine:
To startup the Docker containerized BB2 server, run the following command:
docker-compose up -d
Alternatively, to also monitor the web server logging:
docker-compose up -d
docker-compose logs -f | grep web
press Ctrl C will stop monitor logging.
For static site development, open the following in your browser to view the changes being developed: http://localhost:4000
After making changes, you may need to refresh your browser a few times for them to show up. You may also need to restart the web service using the following command:
docker-compose restart web
To cleanup/remove the setup run the following:
docker-compose down
docker rmi bluebutton-site-static_web
We recommend using Docker, but if this is a barrier, you can set up your local environment manually.
- Jekyll currently using 4.2.0
- chruby or rbenv or rvm to install versioned ruby - as mentioned in Jekyll installation guide. Currently using ruby version 3.1.2
$ gem install bundler
<—install Gem bundler$ bundle install
<—install Gem bundles
Jekyll builds the CSS and HTML pages. Run bundle exec jekyll serve
from the project root for a local build. By default, the site will run in http://localhost:4000/
. You can also run bundle exec jekyll build
to compile the site files into the _site
directory.
When running bundle exec jekyll serve
, if you get an error including cannot load such file -- webrick (LoadError)
, run bundle add webrick && bundle install
to resolve it.
Make changes on a new branch and create pull requests to merge them into the master branch when ready.
When creating a new branch, use the naming convention [your-github-username]/[jira-ticket-number]-[description]
. For example, mrengy/BB2-1511-layout-narrow-browser
.
You'll need to use a Github Personal Access Token instead of a password in order to push changes.
For information about deploying to the static site, please referernce the following document in confluence: HOW-TO Static Site Updates.
The _codebook
directory and the corresponding Jekyll plugin are used to create the variables resources. Example: Claim Medicare Non Utilization Days Count. Although these URLs show little to no usage from analytics, they are used as URIs and are integral to the Beneficiary FHIR Data (BFD) endpoint responses Changing the URIs requires retiring all of the BFD v1 and v2 APIs and releasing a new v3 with different URIs. Any additions or changes to these URIs should involve the BFD team.
Partially adjudicated claims data (FISS and MCS) sourced from the RDA API has its own data dictionary published as a spreadsheet.
A CSV file exported from the spreadsheet and stored in the _data
directory and its
corresponding Jekyll plugin are used to create the variables resources. Example:
Billing Type Code. The plugin is similar to the one for
codebooks but uses Jekyll's built-in support for parsing CSV data rather than parsing XML files.
As with the codebook, any additions or changes to these URIs should involve the BFD team.