Bridgetown is a next-generation, progressive site generator & fullstack framework, powered by Ruby


Keywords
blog-engine, bridgetown, documentation-tool, esbuild, jamstack, ruby, static-site-generator
License
MIT
Install
gem install bridgetown -v 0.21.5

Documentation

Bridgetown

Bridgetown is a next-generation, progressive site generator & fullstack framework, powered by Ruby. Bridgetown takes your content, API data, and frontend assets; renders templates in Markdown, Liquid, ERB, and many other formats; and exports a complete website ready to be served by fast CDNs like Render or traditional web servers like Caddy or Nginx.

Build Status Gem Version Licensed MIT Join the Discord Chat PRs welcome!


Special Thanks to Our GitHub Sponsors! 🙏 🎉

Say howdy 👋 to our growing list of past & present sponsors of Bridgetown on GitHub! You too can join this list and sponsor Bridgetown.

pilotcph andrewmcodes miatrinity marcoroth mtomov
@cabgfx @andrewmcodes @miatrinity @marcoroth_ @mtomov
Website Website Website
johnchambers johnchambers pascalwengerter DRBragg jasoncharnes
@johnchambers @wout @pascalwengerter @DRBragg @jasoncharnes
Website Website Website Website
leastbad asaaki scoutapm-sponsorships adrianvalenz bpo
@leastbad @asaaki @scoutapm-sponsorships @adrianvalenz @bpo
Website Website Website
williamkennedy eclectic-coding nbkkb7x jr180180 existentialmutt
@williamkennedy @eclectic-coding @nbkkb7x @jr180180 @existentialmutt
Website Website Website Website
MikeRogers0 jespr jc00ke matoni109 rootnoob
@MikeRogers0 @jespr @jc00ke @matoni109 @rootnoob
Website Website
collindonnell AbuMareBear luctus pascallaliberte
@collindonnell @AbuMareBear @luctus @pascallaliberte @johlym
Website Website Website Website
subsevenx coreyaus joelhawksley onurozer oleingemann
@subsevenx @coreyaus @joelhawksley @onurozer @oleingemann
Website Website Website Website
renuo maxveldink fuzzygroup monfresh posiczko
@renuo @maxveldink @fuzzygroup @monfresh @posiczko
Website Website Website Website Website
skvk Brem-LLC ttilberg swilgosz karloscarweber
@skvk @Brem-LLC @ttilberg @swilgosz @karloscarweber
Website Website Website Website
You Next?

Commercial Support

Bridgetown development is spearheaded by Portland-based web studio Whitefusion. Contact us if you need commercial support for your Bridgetown content strategy, site design, or deployment. Also providing commercial support: Radioactive Toy based in the UK.

Star History

Star History Chart


Start Here

Get Up to Speed

  • Explore the Folder Structure of a Bridgetown website
  • Start adding content to your site in the form of Resources
  • Learn how Front Matter works for adding metadata to resources
  • Add extra information to your site with Data Files
  • Customize the Permalinks your resources are generated with
  • Use Template Engines like Liquid, ERB, and Serbea to author sophisticated template designs
  • Extend with Custom Plugins to generate and manipulate content specific to your site
  • Discover how to add Frontend Assets using esbuild or Webpack for a modern Javascript & CSS build pipeline

Testing Locally

If you'd like to hack away on Bridgetown directly, you'll need to clone this repo and ensure the test suite passes. Note that this is a "monorepo", meaning that multiple Rubygem codebases are stored within a single repo.

$ git clone git@github.com:bridgetownrb/bridgetown.git
$ cd bridgetown
$ bundle # install development gems
$ bundle exec rake # run the full test suite

After making changes in bridgetown-core, if you want to run a single unit test, you can use the command:

$ script/test test/test_foo.rb

If you are only updating a Cucumber .feature file, you can use the command:

$ script/cucumber features/foo.feature

Both script/test and script/cucumber can be run without arguments to run its entire respective suite.

To switch one of your website repos to using the local gem, add the local gem path to the site's Gemfile as follows:

gem "bridgetown-core", path: "/path/to/bridgetown/bridgetown-core"

Need help?

If you don't find the answer to your problem in our docs, ask the community for help.

Code of Conduct

In order to have a more open and welcoming community, Bridgetown adheres to a code of conduct adapted from the Contributor Covenant.

Please adhere to this code of conduct in any interactions you have in the Bridgetown community. It is strictly enforced on all official Bridgetown repositories, websites, and resources. If you encounter someone violating these terms, please let one of our core team members know and we will address it as soon as possible.

Contributors

Bridgetown is built by:

jaredcwhite jaredmoody andrewmcodes ParamagicDev MikeRogers0
@jaredcwhite @jaredmoody @andrewmcodes @ParamagicDev @MikeRogers0
Portland, OR Portland, OR Wilmington, NC Providence, RI Ny-Ålesund, Svalbard
wout codemargaret julianrubisch ianbayne ayushn
@wout @codemargaret @julianrubisch @ianbayne @ayushn21
Brighton, UK Portland, OR Vienna, Austria Tokyo, Japan London, UK
pascalwengerter marketerly juanvqz katafrakt
@bkmgit @pascalwengerter @marketerly @juanvqz @katafrakt
Lisbon, Portugal Tripoli, Libya Oaxaca, México Wrocław, PL
erikyuzwa eclectic-coding collindonnell juhat
@erikyuzwa @eclectic-coding @collindonnell @juhat @debashis-biswal
Calgary, AB North Carolina, US Portland, OR Budapest, Hungary
nachoal deivid-rodriguez Eric-Guo jacobherrington
@nachoal @deivid-rodriguez @Eric-Guo @jacobherrington @fpsvogel
CDMX, México Madrid, Spain Shanghai, China Fayetteville, AR Lexington, KY
vvveebs rickychilcott tommasongr tombruijn svoop
@vvveebs @rickychilcott @tommasongr @tombruijn @svoop
London, UK Ohio, US Amsterdam, The Netherlands Milan, IT Europe
michaelherold joemasilotti ikass jw81 jw81
@michaelherold @joemasilotti @ikass @jw81 @MSILycanthropy
Omaha, NE Portland, OR Latvia Kansas City, MO Kansas City, MO
You Next?
Anywhere

Interested in joining the Bridgetown Core Team? Send a DM to Jared in Discord and let's chat!

License

The gem is available as open source under the terms of the MIT LICENSE file.