GitXplorerGitXplorer
b

ip-bootstrap

public
7 stars
4 forks
0 issues

Commits

List of commits on branch master.
Unverified
5633322fd16e170edbe554d243c2d6c6cb22a64e

2 vs 3 syntax flake

bbollwyvl committed 10 years ago
Unverified
31e940a20b9ec78e84a0c8d857647408b92be393

no, really removing udnerscore.string

bbollwyvl committed 10 years ago
Unverified
a6dcfbe15e812a3a3a82ab4575dbf333e3307101

removing underscore string dependency

bbollwyvl committed 10 years ago
Unverified
0a3bb224365c10a915736668a1de43c9b3996a48

right, need flake8

bbollwyvl committed 10 years ago
Unverified
d3ba86090dac73bae57721dc2732d9037301b617

reorganizing tests

bbollwyvl committed 10 years ago
Unverified
eaa6c0b49bd43bcd88c745ca450ca0677d074b7a

use notebook_test directly

bbollwyvl committed 10 years ago

README

The README file for this repository.

IPython Bootstrap Widgets

Build Status

The standard IPython Notebok widgets are enough to get the job done for most quick layouts. If you are building richer applications, it's pretty nice to have access to all of the lovely Twitter Bootstrap baseline CSS and components. You could hack in some additional features with add_class, but this is cumbersome for one-off widgets, and limiting for more complex ones.

This library extends existing widgets, like enhanced versions of Button, while adding new containers, typographic elements and layouts. See the roadmap to get an idea of what is done and what is left to do.

Installation/Development

While still in development, the best way to try this out would be:

pip install -e git+https://github.com/bollwyvl/ip-bootstrap.git#egg=IPythonBootstrap

Usage Example

from ipbs.widgets import Panel, Label, Button, Icon
from ipbs.bootstrap import Context
from ipbs.icons import FontAwesome
fa = FontAwesome()

fro = Button(body=[Icon(fa.empire * 2), Label("Fro")], context=Context.danger)
boz = Button(body=[Icon(fa.rebel * 2), Label("Boz")], context=Context.primary)
Panel(
    title="Frobnosticator",
    body=[fro, boz],
    footer="Millions and millions of frobs bozzed",
    context=Context.success
)

example panel

Check the example notebooks in the docs, or on nbviewer.

Testing

The test suite is small, but growing. To run the tests, use:

python setup.py nosetests

This will run the browser tests, and refresh the screenshots in docs/img.

Note that the automated browser tests requires CasperJS, therefore PhantomJS. These are most easily installed with npm, which is now included with NodeJS.

Roadmap

not neccessarily in order!

See something else that makes sense to add? Suggest a change!

  • CSS
    • [X] Grid
    • [ ] Table
    • [ ] Forms
    • [X] Button
    • Typography
      • [X] Lead
      • [X] Transform 3.2?
      • [X] Alignment 3.2?
  • Components
    • [ ] Glyphs (Glyphicons)
      • needed?
    • [ ] Input Group
    • [ ] Navbar
    • [ ] Badges
    • [ ] Alert
    • [ ] Wells
    • [X] Button Group
    • [X] Button Toolbar
    • [X] Panel
  • JavaScript
    • [ ] Tooltip
    • [ ] Popover
    • [ ] Alert
    • Button
      • [ ] Single Toggle
      • [ ] Checkbox
      • [ ] Radio
    • [ ] Carousel
    • [ ] Affix
  • Third-Party