A racket program based on jekyll-slack.
- Create a (probably private) repository.
- Add your archives in
archives/
.- Make sure the names sort in chronological order. A simple way to do so is to
use
from-YYYY-MM-DD-to-YYYY-MM-DD.zip
as the name.
- Make sure the names sort in chronological order. A simple way to do so is to
use
- Copy
pages.yml
to.github/workflows/pages.yml
and modify thefolder
to push togh-pages
.
The site will be built on pushes to main
.
You'll need racket 8.0+.
raco pkg install slack-archive-viewer
(you may want--deps search-auto
)- Add your archives in a directory (e.g.,
archives
).- Make sure the names sort in chronological order. A simple way to do so is to
use
from-YYYY-MM-DD-to-YYYY-MM-DD.zip
as the name.
- Make sure the names sort in chronological order. A simple way to do so is to
use
- Configure the build metadata and privacy lists (see
slack-config-demo.rkt
andprivacy-list-demo.rkt
). - Run
racket -l slack-archive-viewer <your-archive-dir>
The site will be built into _site
unless you specify base-url
in
slack-config.rkt
, in which case the site is built into a matching directory
(sans leading slash).
To view the generated site:
- If your site was built into
_site
(nobase-url
), you can run a web server in the_site
directory (e.g.,python3 -m http.server -d _site
) and navigate tolocalhost:XXXX
in a browser. - If your site was built into a
base-url
directory, you can run a web server from the build directory (e.g.,python3 -m http.server
) and navigate tolocalhost:XXXX/base-url
in a browser.
Todo:
- Support file comment messages
- Pages deploy
- Merge subsequent archives chronologically
- Threads
- Fix triple-backtick markdown (Slack might be getting rid of newlines around triple-backticks)
- HTML decode (Slack HTML encodes < and >, even in code blocks, in the text of messages. This is wrong, but too bad for us?)
- Support attachments (related to bot messages)
- Support messages from bots (there are several "kinds")