You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+130-7Lines changed: 130 additions & 7 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -4,10 +4,137 @@ This is the repository hosting the code for the future Beman Website.
4
4
5
5
We aim to replace the content from the [existing Beman website](https://www.bemanproject.org) by deploying the website generated from current repository.
6
6
7
-
This website is built using [Docusaurus](https://docusaurus.io/), a modern static website generator.
7
+
<!-- TODO: Remove this after the website deployment switch. -->
8
+
> Note: https://bemanproject.github.io/website/ is used a temporary domain while we boostrap the new website infrastructure.
9
+
10
+
This website is built using [Docusaurus](https://docusaurus.io/), a modern static website generator.
8
11
Documentation is written in MDX format.
9
12
Building and deploying it requires Node and NPM.
10
13
14
+
## Add a blog post
15
+
16
+
1. Repository setup: `create a local clone` or `open in Codespaces`.
17
+
18
+
2. Create a directory having an `index.md` file using this pattern: `blog/YYYY-MM-DD-tile-of-post/index.md`:
19
+
20
+
Example:
21
+
22
+
```shell
23
+
$ tree blog/2000-10-30-my-blog-example/
24
+
blog/2000-10-30-my-blog-example/
25
+
├── images
26
+
│ └── beman_logo.png # images are stored in ./images/
27
+
└── index.md # actual blog post content
28
+
29
+
2 directories, 2 files
30
+
```
31
+
32
+
3. Add your full Markdown blog post content inside the `index.md` file.
33
+
34
+
Example
35
+
```shell
36
+
$ cat blog/2000-10-30-my-blog-example/index.md
37
+
---
38
+
slug: my-blog-example-slug # Slug example. Remove this comment if using this template.
39
+
authors: [neatudarius] # Authors list with entrie from blog/authors.yml. Remove this comment if using this template.
40
+
tags: ["cpp26", "beman-docs"] # Blog post valid tags from blog/tags.yml. Remove this comment if using this template.
41
+
---
42
+
43
+
# My Blog Example
44
+
45
+
This is my blog example.
46
+
47
+
Here I can write Markdown content.
48
+
[...]
49
+
```
50
+
51
+
<details>
52
+
<summary> Add the author if not already present in blog/authors.yml </summary>
53
+
54
+
If this is your first time writing a blog post, you have to add yourself as an author in the `blog/authors.yml` file. Add a new entry using the following format:
55
+
56
+
```shell
57
+
<AuthorTag>: # Your author tag, this is what you will use in the header section for a log.
58
+
name: # Your Real Name.
59
+
title: # Your title, how do you want to be recognized by other people.
60
+
url: # Your Github profile page
61
+
image_url: # A url for your profile image (for Github profile image: go to your profile, click on your image and open it in a new tab, copy the link).
62
+
page: true# If an author page should be generated for you.
63
+
socials: # [optional] Include your socials (like your Github, X, Linkedin etc)
64
+
github: <yourId># [optional] Add GitHub page.
65
+
linkedin: <yourId># [optional] Add LinkedIn page.
66
+
x: <yourId># [optional] Add X page.
67
+
```
68
+
69
+
</details>
70
+
71
+
72
+
4. Open a `DRAFT PR` and `wait` up to one minute for a preview deployment of your blog post.
73
+
74
+
* Draft PR example: [Add blog post: My Blog Example #54](https://github.com/bemanproject/website/pull/54/).
75
+
76
+
* Click on the `Deploy Preview` URL (format `https://deploy-preview-${PR NUMBER}--bemanproject.netlify.app/`).
* Fix the error, commit and push the changes. Wait for new deployment.
98
+
99
+
> If you need to browse through more recent CI preview deployments logs use https://app.netlify.com/sites/bemanproject/deploys/. Note: netlify provides a single a single CI preview deployment for each PR - latest commit, but stores logs for multiple ones.
100
+
101
+
</details>
102
+
103
+
<details>
104
+
<summary> [DEBUG] Inspect local deployment error logs. </summary>
105
+
106
+
* On local setup, run `make` (see [Local development](#local-development)) and check if there is any error in the console - example:
107
+
108
+
```shell
109
+
$ make
110
+
...
111
+
[INFO] Starting the development server...
112
+
...
113
+
[ERROR] Error: Processing of blog source file path=2000-10-30-my-blog-example/index.md failed.
114
+
at doProcessBlogSourceFile (/Users/dariusn/dev/dn/git/Beman/website/node_modules/@docusaurus/plugin-content-blog/lib/blogUtils.js:268:19)
115
+
at async Promise.all (index 0)
116
+
... 10 lines matching cause stack trace ...
117
+
at async file:///Users/dariusn/dev/dn/git/Beman/website/node_modules/@docusaurus/core/bin/docusaurus.mjs:44:3 {
118
+
[cause]: Error: Blog author with key "neatudarius" not found in the authors map file.
119
+
Valid author keys are:
120
+
- JeffGarland
121
+
- dabrahams
122
+
- DavidSankel
123
+
```
124
+
125
+
* Fix the error, re-deploy the local website.
126
+
127
+
* Commit and push the changes. Wait for a new CI preview deployment.
128
+
129
+
</details>
130
+
131
+
5. After you got `a succesful CI preview deployment`, update the PR to be ready for review and add [@leads](https://github.com/orgs/bemanproject/teams/leads) /[@core-reviewers](https://github.com/orgs/bemanproject/teams/core-reviewers).
132
+
133
+
6. Apply the review feedback. Get approval. Merge the PR.
134
+
135
+
<!-- TODO: Replace with https://www.bemanproject.org/ after the website deployment switch. -->
136
+
7. The updates are automatically deployed to the production website after a few minutes - check https://bemanproject.github.io/website/.
137
+
11
138
## Local development
12
139
13
140
### Install dependencies
@@ -71,7 +198,7 @@ $ npm install -g yarn
71
198
72
199
</details>
73
200
74
-
## Start local sever
201
+
### Start local sever
75
202
76
203
To start a local development server, run:
77
204
@@ -84,14 +211,10 @@ If everything is properly installed, the command should open a browser window o
84
211
Most changes are reflected live without having to restart the server.
85
212
86
213
87
-
## Generate static content for GitHub Pages deployment
214
+
### Generate static content for GitHub Pages deployment
88
215
89
216
To generate static from the project that can be served using any static contents hosting service (like `gh-pages`).
Copy file name to clipboardExpand all lines: blog/2024-10-30-about-beman/index.md
+3-2Lines changed: 3 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,10 +1,11 @@
1
1
---
2
2
slug: about-beman
3
-
title: About Beman
4
3
authors: [dabrahams]
5
4
tags: [beman]
6
5
---
7
6
7
+
# About Beman
8
+
8
9

9
10
10
11
I met Beman Dawes when I attended my first C++ committee meeting in 1997. I wasn’t even a committee member at that time; I showed up at the meeting because I was trying to get exception safety into the C++ standard and Andrew Koenig had made it clear that arguing for it over email wasn’t going to cut it; I needed to show my face.
@@ -17,4 +18,4 @@ Beman started by asking me to join the other members in the center of the room a
17
18
18
19
I left that meeting with the realization that it was possible to work together in a way I had never experienced in my regular job, driven by consensus, and that this spirit both raised the level of discourse, and produced better results, than what I had seen before. It put the lie to the disparaging phrase “designed by committee.” So when Beman proposed that we start the Boost Libraries project, I was immediately on board. His idea for Boost would blossom into a unique community of collaborative library designers because of the example he set.
19
20
20
-
As we grew Boost over the years, so grew our friendship, and when Beman passed away suddenly in 2020, it was a great loss to me personally, and, I think, to the world of programming. Beman never sought the spotlight, and I always wondered what would become of his contribution, which was surely underappreciated. That’s why I was so thrilled to hear that a modern C++ libraries project was being launched in his name. May it continue to demonstrate Beman’s commitment to community and excellence.
21
+
As we grew Boost over the years, so grew our friendship, and when Beman passed away suddenly in 2020, it was a great loss to me personally, and, I think, to the world of programming. Beman never sought the spotlight, and I always wondered what would become of his contribution, which was surely underappreciated. That’s why I was so thrilled to hear that a modern C++ libraries project was being launched in his name. May it continue to demonstrate Beman’s commitment to community and excellence.
0 commit comments