The Project Page for the Troop 151 website.
Are you looking for the public website? Visit it here: http://T151.org/
This website is a static site, built with the eleventy build tool and hosted on GitHub pages.
To get started you will need a GitHub account. Tell Original Mr. Pilko your username at a meeting, and he'll make you a contributor to the website.
Once you are a contributor to the website, you can make requests to edit eny file. To do so:
- Click branches above the code window
- Click New Branch and give it a distinctive name, then click Create New Branch
- In the dropdoen above the Code window, select this branch.
- Click the <> Code button and select Codespaces + to create a new codespace in the branch you just created.
- Edit away. To preview your changes type
npm startin the terninal window. - When you are done, select the Source Control icon on the left side of the Codespaces editor and Commit your changes. You can make multiple Commits as you make incremental changes.
- Once you're ready for the changest to go live, Create a Pull Request. These chnanges will be queued for an admin to approve them before they are integrated into the live site. You'll be notified when they are approved. They will be on the live site a few minutes later.
Once you get all this, take a look at the _notes.md file, or search for 'TODO' in any file. These are the things that need to be done.
We built this website as a static site, so all the files on the server are just simple text files that get sent to a web browser. That means we can use free hosting to manage this site, and don't have to worry about being hacked, which is a good thing. However, hard coding html files is a bit of a pain, so we're using some tools to make this easier:
- Pages on this site are written in a combination of pug and markdown. Using these is a lot easier than hard-coding
htmlfor the pages. - Dynamic content is provided with javascript.
- Stylesheets are compiled using Stylus using the axis framework and jeet grid system.
- Eleventy is a build tool that runs in node.js. You don't have to know too much about Eleventy or node, except that these programs take the raw files above and compile them into a cohesive site.
There is a GitHub Action that automatically deploys the public folder of the master branch to the root of the gh-pages branch.