Skip to content

Commit 1adaf6f

Browse files
infrastructure for website with Jekyll and GitHub pages
0 parents  commit 1adaf6f

File tree

6 files changed

+156
-0
lines changed

6 files changed

+156
-0
lines changed

.gitignore

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
# This .gitignore is appropriate for repositories deployed to GitHub Pages and using
2+
# a Gemfile as specified at https://github.com/github/pages-gem#conventional
3+
4+
# Basic Jekyll gitignores (synchronize to Jekyll.gitignore)
5+
_site/
6+
.sass-cache/
7+
.jekyll-cache/
8+
.jekyll-metadata
9+
10+
# Additional Ruby/bundler ignore for when you run: bundle install
11+
/vendor
12+
13+
# Specific ignore for GitHub Pages
14+
# GitHub Pages will always use its own deployed version of pages-gem
15+
# This means GitHub Pages will NOT use your Gemfile.lock and therefore it is
16+
# counterproductive to check this file into the repository.
17+
# Details at https://github.com/github/pages-gem/issues/768
18+
Gemfile.lock

404.html

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
---
2+
permalink: /404.html
3+
layout: default
4+
---
5+
6+
<style type="text/css" media="screen">
7+
.container {
8+
margin: 10px auto;
9+
max-width: 600px;
10+
text-align: center;
11+
}
12+
h1 {
13+
margin: 30px 0;
14+
font-size: 4em;
15+
line-height: 1;
16+
letter-spacing: -1px;
17+
}
18+
</style>
19+
20+
<div class="container">
21+
<h1>404</h1>
22+
23+
<p><strong>Page not found :(</strong></p>
24+
<p>The requested page could not be found.</p>
25+
</div>

Gemfile

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
source "https://rubygems.org"
2+
# Hello! This is where you manage which Jekyll version is used to run.
3+
# When you want to use a different version, change it below, save the
4+
# file and run `bundle install`. Run Jekyll with `bundle exec`, like so:
5+
#
6+
# bundle exec jekyll serve
7+
#
8+
# This will help ensure the proper Jekyll version is running.
9+
# Happy Jekylling!
10+
#gem "jekyll", "~> 4.3.4"
11+
# This is the default theme for new Jekyll sites. You may change this to anything you like.
12+
gem "minima", "~> 2.5"
13+
# If you want to use GitHub Pages, remove the "gem "jekyll"" above and
14+
# uncomment the line below. To upgrade, run `bundle update github-pages`.
15+
gem "github-pages", group: :jekyll_plugins
16+
# If you have any plugins, put them here!
17+
#group :jekyll_plugins do
18+
# gem "jekyll-feed", "~> 0.12"
19+
#end
20+
21+
# Windows and JRuby does not include zoneinfo files, so bundle the tzinfo-data gem
22+
# and associated library.
23+
platforms :mingw, :x64_mingw, :mswin, :jruby do
24+
gem "tzinfo", ">= 1", "< 3"
25+
gem "tzinfo-data"
26+
end
27+
28+
# Performance-booster for watching directories on Windows
29+
gem "wdm", "~> 0.1", :platforms => [:mingw, :x64_mingw, :mswin]
30+
31+
# Lock `http_parser.rb` gem to `v0.6.x` on JRuby builds since newer versions of the gem
32+
# do not have a Java counterpart.
33+
gem "http_parser.rb", "~> 0.6.0", :platforms => [:jruby]

Readme.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
This is the repository for the Contract-LIB website.
2+
3+
We use Jekyll for static site generation and GitHub pages for publishing. For more information, see https://docs.github.com/en/pages/setting-up-a-github-pages-site-with-jekyll/about-github-pages-and-jekyll.
4+
5+
The preview it locally, run `bundle install` and `bundle exec jekyll serve` (requires Jekyll, see https://jekyllrb.com/docs/installation/).
6+
Afterwards, the preview can be viewed with a browser under `http://localhost:4000`.

_config.yml

Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
# Welcome to Jekyll!
2+
#
3+
# This config file is meant for settings that affect your whole blog, values
4+
# which you are expected to set up once and rarely edit after that. If you find
5+
# yourself editing this file very often, consider using Jekyll's data files
6+
# feature for the data you need to update frequently.
7+
#
8+
# For technical reasons, this file is *NOT* reloaded automatically when you use
9+
# 'bundle exec jekyll serve'. If you change this file, please restart the server process.
10+
#
11+
# If you need help with YAML syntax, here are some quick references for you:
12+
# https://learn-the-web.algonquindesign.ca/topics/markdown-yaml-cheat-sheet/#yaml
13+
# https://learnxinyminutes.com/docs/yaml/
14+
#
15+
# Site settings
16+
# These are used to personalize your new site. If you look in the HTML files,
17+
# you will see them accessed via {{ site.title }}, {{ site.email }}, and so on.
18+
# You can create any custom variable you would like, and they will be accessible
19+
# in the templates via {{ site.myvariable }}.
20+
21+
title: Contract-LIB Homepage
22+
23+
description: >- # this means to ignore newlines until "baseurl:"
24+
This is the main page of Contract-LIB.
25+
baseurl: "" # the subpath of your site, e.g. /blog
26+
url: "https://contractlib.github.io" # the base hostname & protocol for your site, e.g. http://example.com
27+
github_username: Contract-LIB
28+
29+
# Build settings
30+
theme: minima
31+
#plugins:
32+
# - jekyll-feed
33+
34+
# Exclude from processing.
35+
# The following items will not be processed, by default.
36+
# Any item listed under the `exclude:` key here will be automatically added to
37+
# the internal "default list".
38+
#
39+
# Excluded items can be processed by explicitly listing the directories or
40+
# their entries' file path in the `include:` list.
41+
#
42+
# exclude:
43+
# - .sass-cache/
44+
# - .jekyll-cache/
45+
# - gemfiles/
46+
# - Gemfile
47+
# - Gemfile.lock
48+
# - node_modules/
49+
# - vendor/bundle/
50+
# - vendor/cache/
51+
# - vendor/gems/
52+
# - vendor/ruby/
53+
54+
exclude:
55+
- Readme.md

index.md

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
---
2+
layout: default
3+
---
4+
5+
# About Contract-LIB
6+
7+
Contract-LIB is a language that allows to declare abstractions and define contracts based on them in an abstract way independently of the concrete programming language. It builds on SMT-LIB and adds two new commands `declare-abstractions` and `define-contract`.
8+
9+
Contract-LIB is not intended to be written directly by humans. Instead, we provide various tools to translate from and to different front-end languages, such as the Java Modeling Language (JML), Dafny, and VeriFast.
10+
11+
Currently, we the following tools are available:
12+
* An ANTLR4 grammar based on the SMT-LIB grammar (version 2.6), and tools traversing the AST, creating nodes, ... (for implementing custom importers/exporters).
13+
* Various tools for exporting to or importing from front-end languages:
14+
* Contract-LIB to the Java Modeling Language (JML)
15+
* Contract-LIB to VeriFast
16+
* ...
17+
18+
# Publications
19+
For more information, we refer to our ISoLa 2024 paper: <https://doi.org/10.1007/978-3-031-75380-0_6>

0 commit comments

Comments
 (0)