| CARVIEW |
Select Language
HTTP/2 302
server: nginx
date: Tue, 23 Dec 2025 19:24:48 GMT
content-type: text/plain; charset=utf-8
content-length: 0
x-archive-redirect-reason: found capture at 20090812081252
location: https://web.archive.org/web/20090812081252/https://github.com/thoughtbot/report_card
server-timing: captures_list;dur=0.638078, exclusion.robots;dur=0.063139, exclusion.robots.policy;dur=0.049536, esindex;dur=0.009582, cdx.remote;dur=6.377102, LoadShardBlock;dur=255.522231, PetaboxLoader3.datanode;dur=196.939312, PetaboxLoader3.resolve;dur=38.370824
x-app-server: wwwb-app210-dc8
x-ts: 302
x-tr: 288
server-timing: TR;dur=0,Tw;dur=0,Tc;dur=0
set-cookie: wb-p-SERVER=wwwb-app210; path=/
x-location: All
x-as: 14061
x-rl: 0
x-na: 0
x-page-cache: MISS
server-timing: MISS
x-nid: DigitalOcean
referrer-policy: no-referrer-when-downgrade
permissions-policy: interest-cohort=()
HTTP/2 301
server: nginx
date: Tue, 23 Dec 2025 19:24:49 GMT
content-type: text/html; charset=utf-8
content-length: 118
x-archive-orig-server: nginx/0.6.31
x-archive-orig-date: Wed, 12 Aug 2009 08:12:51 GMT
x-archive-orig-connection: close
x-archive-orig-status: 301 Moved Permanently
location: https://web.archive.org/web/20090812081252/https://github.com/thoughtbot/report_card/tree/master
x-archive-orig-x-runtime: 23ms
x-archive-orig-cache-control: no-cache
x-archive-orig-content-length: 118
cache-control: max-age=1800
memento-datetime: Wed, 12 Aug 2009 08:12:52 GMT
link: ; rel="original", ; rel="timemap"; type="application/link-format", ; rel="timegate"
content-security-policy: default-src 'self' 'unsafe-eval' 'unsafe-inline' data: blob: archive.org web.archive.org web-static.archive.org wayback-api.archive.org athena.archive.org analytics.archive.org pragma.archivelab.org wwwb-events.archive.org
x-archive-src: 52_11_20090811182134_crawl101.gpg-c/52_11_20090812081157_crawl101.arc.gz
server-timing: captures_list;dur=0.555342, exclusion.robots;dur=0.018790, exclusion.robots.policy;dur=0.009039, esindex;dur=0.011665, cdx.remote;dur=6.199646, LoadShardBlock;dur=99.581885, PetaboxLoader3.datanode;dur=90.270592, PetaboxLoader3.resolve;dur=53.183521, load_resource;dur=121.074402
x-app-server: wwwb-app210-dc8
x-ts: 301
x-tr: 256
server-timing: TR;dur=0,Tw;dur=0,Tc;dur=0
x-location: All
x-as: 14061
x-rl: 0
x-na: 0
x-page-cache: MISS
server-timing: MISS
x-nid: DigitalOcean
referrer-policy: no-referrer-when-downgrade
permissions-policy: interest-cohort=()
HTTP/2 200
server: nginx
date: Tue, 23 Dec 2025 19:24:49 GMT
content-type: text/html; charset=utf-8
x-archive-orig-server: nginx/0.6.31
x-archive-orig-date: Wed, 12 Aug 2009 08:12:52 GMT
x-archive-orig-connection: close
x-archive-orig-status: 200 OK
x-archive-orig-x-runtime: 154ms
x-archive-orig-etag: "c80519ba03ffe4e5690490b9d7f0794c"
x-archive-orig-cache-control: private, max-age=0, must-revalidate
x-archive-orig-content-length: 26571
x-archive-guessed-content-type: text/html
x-archive-guessed-charset: utf-8
memento-datetime: Wed, 12 Aug 2009 08:12:52 GMT
link: ; rel="original", ; rel="timemap"; type="application/link-format", ; rel="timegate"
content-security-policy: default-src 'self' 'unsafe-eval' 'unsafe-inline' data: blob: archive.org web.archive.org web-static.archive.org wayback-api.archive.org athena.archive.org analytics.archive.org pragma.archivelab.org wwwb-events.archive.org
x-archive-src: 52_11_20090811182134_crawl101.gpg-c/52_11_20090812081157_crawl101.arc.gz
server-timing: captures_list;dur=0.507241, exclusion.robots;dur=0.017769, exclusion.robots.policy;dur=0.007567, esindex;dur=0.010049, cdx.remote;dur=6.796137, LoadShardBlock;dur=82.769028, PetaboxLoader3.datanode;dur=90.113902, load_resource;dur=15.937172
x-app-server: wwwb-app210-dc8
x-ts: 200
x-tr: 169
server-timing: TR;dur=0,Tw;dur=0,Tc;dur=0
x-location: All
x-as: 14061
x-rl: 0
x-na: 0
x-page-cache: MISS
server-timing: MISS
x-nid: DigitalOcean
referrer-policy: no-referrer-when-downgrade
permissions-policy: interest-cohort=()
content-encoding: gzip
thoughtbot's report_card at master - GitHub
This repository is private.
All pages are served over SSL and all pushing and pulling is done over SSH.
No one may fork, clone, or view it unless they are added as a member.
Every repository with this icon (
) is private.
Every repository with this icon (
This repository is public.
Anyone may fork, clone, or view it.
Every repository with this icon (
) is public.
Every repository with this icon (
| Description: | metrics and CI are for A students. edit |
| Homepage: | https://metrics.thoughtbot.com edit |
| Public Clone URL: |
git://github.com/thoughtbot/report_card.git
Give this clone URL to anyone.
git clone git://github.com/thoughtbot/report_card.git
|
| Your Clone URL: |
Use this clone URL yourself.
git clone git@github.com:thoughtbot/report_card.git
|
Nick Quaranto (author)
Wed Jul 22 12:46:39 -0700 2009
| name | age | message | |
|---|---|---|---|
| |
.gitignore | Mon Jul 20 14:37:31 -0700 2009 | Ignoring integrity too [Nick Quaranto] |
| |
LICENSE | Wed Jul 22 12:46:39 -0700 2009 | Fixing license file and removing jeweler for now [Nick Quaranto] |
| |
README.textile | Wed Jul 22 12:38:24 -0700 2009 | Adding some info on the test suite [Nick Quaranto] |
| |
Rakefile | Wed Jul 22 12:46:39 -0700 2009 | Fixing license file and removing jeweler for now [Nick Quaranto] |
| |
cucumber.yml | Wed Jul 22 12:34:47 -0700 2009 | Adding cucumber.yml since we're not using rake ... [Nick Quaranto] |
| |
features/ | Wed Jul 22 11:13:48 -0700 2009 | Running the integration test through cucumber s... [Nick Quaranto] |
| |
lib/ | Sun Jul 12 20:22:53 -0700 2009 | Let's not do that. [Nick Quaranto] |
| |
template/ | Mon Jul 13 04:57:36 -0700 2009 | Making project links relative and advertising a... [Nick Quaranto] |
| |
test/ | Wed Jul 22 11:13:48 -0700 2009 | Running the integration test through cucumber s... [Nick Quaranto] |
report_card
Automatic building and reporting to campfire of metrics with metric_fu through integrity.
Features
- Generates metric_fu sites for each project and ties them together on one page
- Notifies campfire of metric stats given that they have changed since the last run
Requirements
- integrity v0.1.10
- metric_fu
- tinder
- your favorite webserver
Usage
Run: rake grade
Note: It’s probably best to do this on a cron job.
If you’re running private projects, make sure to configure your webserver to block
others from looking at your results. If you’re using Apache to host your report_card
site, here’s what your VirtualHost could look like:
<VirtualHost *:80>
ServerName metrics.thoughtbot.com
DocumentRoot /home/ci/report_card/_site
<DirectoryMatch /home\/ci\/report_card\/_site\/(archive|private|scores)>
AuthName "Metrics"
AuthUserFile /home/ci/.htpasswd
AuthGroupFile /dev/null
AuthType basic
require valid-user
</DirectoryMatch>
</VirtualHost>
Setup
Have a config.yml file in your report_card directory with the following info:
# This is the path to integrity's config.yml file. integrity_config: /home/ci/integrity/config.yml # Where you want the site to be placed that metric_fu creates site: /home/ci/report_card/_site # A regular expression for project names you wish to ignore # You need to surround this with quotes since YAML is picky ignore: '[^shoulda]|1\.9' # The location of your site, for campfire reporting url: https://metrics.thoughtbot.com # Set to true if you would like to skip notifying campfire when metrics have changed skip_notification: false
Testing
Run the test suite with rake.
There’s a cucumber integration test that is run with cucumber. This isn’t exactly fast since it:
- Sets up integrity
- Adds projects into integrity
- Clones them from github
- Builds the project’s tests
- Runs metric_fu on the project’s tests
- Generates the report_card site.
However, it should all pass and work. If not, open up an issue!
Thanks
To thoughtbot for supporting this project.
This feature is coming soon. Sit tight!











