Skip to content

Commit 06fe585

Browse files
committed
Initial commit with project documentation and website
0 parents  commit 06fe585

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

47 files changed

+2789
-0
lines changed

.github/workflows/github-pages.yml

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
name: Build and deploy Jekyll site to GitHub Pages
2+
3+
on:
4+
push:
5+
branches:
6+
- main
7+
8+
jobs:
9+
github-pages:
10+
runs-on: ubuntu-latest
11+
steps:
12+
- uses: actions/checkout@v3
13+
14+
- name: Setup Ruby
15+
uses: ruby/setup-ruby@v1
16+
with:
17+
ruby-version: '3.2'
18+
bundler-cache: true
19+
20+
- name: Build site
21+
run: bundle exec jekyll build
22+
23+
- name: Deploy
24+
uses: peaceiris/actions-gh-pages@v3
25+
with:
26+
github_token: ${{ secrets.GITHUB_TOKEN }}
27+
publish_dir: ./_site

.gitignore

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
# Jekyll build output
2+
_site/
3+
.sass-cache/
4+
.jekyll-cache/
5+
.jekyll-metadata
6+
7+
# Bundler files
8+
.bundle/
9+
vendor/
10+
11+
# Environment normalization
12+
.DS_Store
13+
.env
14+
.env.local
15+
.env.development.local
16+
.env.test.local
17+
.env.production.local
18+
19+
# Editor directories and files
20+
.idea/
21+
.vscode/
22+
*.swp
23+
*.swo
24+
*~
25+
26+
# OS generated files
27+
.DS_Store?
28+
._*
29+
.Spotlight-V100
30+
.Trashes
31+
ehthumbs.db
32+
Thumbs.db
33+
34+
# Original grant application
35+
Grant Application.md
36+
37+
# Budget information
38+
timeline/budget.md
39+
40+
# Getting Started document
41+
docs/getting-started.md

404.md

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
---
2+
layout: default
3+
title: Page Not Found
4+
permalink: /404.html
5+
nav_exclude: true
6+
search_exclude: true
7+
---
8+
9+
# Page Not Found
10+
11+
Sorry, the page you were looking for does not exist.
12+
13+
[Go to Home Page]({{ site.baseurl }}/)

CNAME

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
# This is a placeholder for a custom domain.
2+
# Uncomment and replace with your actual domain when ready to use a custom domain:
3+
# docs.osse-project.org

CODE_OF_CONDUCT.md

Lines changed: 132 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,132 @@
1+
# Contributor Covenant Code of Conduct
2+
3+
## Our Pledge
4+
5+
We as members, contributors, and leaders pledge to make participation in our
6+
community a harassment-free experience for everyone, regardless of age, body
7+
size, visible or invisible disability, ethnicity, sex characteristics, gender
8+
identity and expression, level of experience, education, socio-economic status,
9+
nationality, personal appearance, race, caste, color, religion, or sexual
10+
identity and orientation.
11+
12+
We pledge to act and interact in ways that contribute to an open, welcoming,
13+
diverse, inclusive, and healthy community.
14+
15+
## Our Standards
16+
17+
Examples of behavior that contributes to a positive environment for our
18+
community include:
19+
20+
* Demonstrating empathy and kindness toward other people
21+
* Being respectful of differing opinions, viewpoints, and experiences
22+
* Giving and gracefully accepting constructive feedback
23+
* Accepting responsibility and apologizing to those affected by our mistakes,
24+
and learning from the experience
25+
* Focusing on what is best not just for us as individuals, but for the overall
26+
community
27+
28+
Examples of unacceptable behavior include:
29+
30+
* The use of sexualized language or imagery, and sexual attention or advances of
31+
any kind
32+
* Trolling, insulting or derogatory comments, and personal or political attacks
33+
* Public or private harassment
34+
* Publishing others' private information, such as a physical or email address,
35+
without their explicit permission
36+
* Other conduct which could reasonably be considered inappropriate in a
37+
professional setting
38+
39+
## Enforcement Responsibilities
40+
41+
Community leaders are responsible for clarifying and enforcing our standards of
42+
acceptable behavior and will take appropriate and fair corrective action in
43+
response to any behavior that they deem inappropriate, threatening, offensive,
44+
or harmful.
45+
46+
Community leaders have the right and responsibility to remove, edit, or reject
47+
comments, commits, code, wiki edits, issues, and other contributions that are
48+
not aligned to this Code of Conduct, and will communicate reasons for moderation
49+
decisions when appropriate.
50+
51+
## Scope
52+
53+
This Code of Conduct applies within all community spaces, and also applies when
54+
an individual is officially representing the community in public spaces.
55+
Examples of representing our community include using an official email address,
56+
posting via an official social media account, or acting as an appointed
57+
representative at an online or offline event.
58+
59+
## Enforcement
60+
61+
Instances of abusive, harassing, or otherwise unacceptable behavior may be
62+
reported to the community leaders responsible for enforcement at
63+
contact@etherisc.com.
64+
All complaints will be reviewed and investigated promptly and fairly.
65+
66+
All community leaders are obligated to respect the privacy and security of the
67+
reporter of any incident.
68+
69+
## Enforcement Guidelines
70+
71+
Community leaders will follow these Community Impact Guidelines in determining
72+
the consequences for any action they deem in violation of this Code of Conduct:
73+
74+
### 1. Correction
75+
76+
**Community Impact**: Use of inappropriate language or other behavior deemed
77+
unprofessional or unwelcome in the community.
78+
79+
**Consequence**: A private, written warning from community leaders, providing
80+
clarity around the nature of the violation and an explanation of why the
81+
behavior was inappropriate. A public apology may be requested.
82+
83+
### 2. Warning
84+
85+
**Community Impact**: A violation through a single incident or series of
86+
actions.
87+
88+
**Consequence**: A warning with consequences for continued behavior. No
89+
interaction with the people involved, including unsolicited interaction with
90+
those enforcing the Code of Conduct, for a specified period of time. This
91+
includes avoiding interactions in community spaces as well as external channels
92+
like social media. Violating these terms may lead to a temporary or permanent
93+
ban.
94+
95+
### 3. Temporary Ban
96+
97+
**Community Impact**: A serious violation of community standards, including
98+
sustained inappropriate behavior.
99+
100+
**Consequence**: A temporary ban from any sort of interaction or public
101+
communication with the community for a specified period of time. No public or
102+
private interaction with the people involved, including unsolicited interaction
103+
with those enforcing the Code of Conduct, is allowed during this period.
104+
Violating these terms may lead to a permanent ban.
105+
106+
### 4. Permanent Ban
107+
108+
**Community Impact**: Demonstrating a pattern of violation of community
109+
standards, including sustained inappropriate behavior, harassment of an
110+
individual, or aggression toward or disparagement of classes of individuals.
111+
112+
**Consequence**: A permanent ban from any sort of public interaction within the
113+
community.
114+
115+
## Attribution
116+
117+
This Code of Conduct is adapted from the [Contributor Covenant][homepage],
118+
version 2.1, available at
119+
[https://www.contributor-covenant.org/version/2/1/code_of_conduct.html][v2.1].
120+
121+
Community Impact Guidelines were inspired by
122+
[Mozilla's code of conduct enforcement ladder][Mozilla CoC].
123+
124+
For answers to common questions about this code of conduct, see the FAQ at
125+
[https://www.contributor-covenant.org/faq][FAQ]. Translations are available at
126+
[https://www.contributor-covenant.org/translations][translations].
127+
128+
[homepage]: https://www.contributor-covenant.org
129+
[v2.1]: https://www.contributor-covenant.org/version/2/1/code_of_conduct.html
130+
[Mozilla CoC]: https://github.com/mozilla/diversity
131+
[FAQ]: https://www.contributor-covenant.org/faq
132+
[translations]: https://www.contributor-covenant.org/translations

CONTRIBUTING.md

Lines changed: 138 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,138 @@
1+
# Contributing to the Open Source Secure Element (OSSE)
2+
3+
Thank you for your interest in contributing to the Open Source Secure Element project! This document provides guidelines and instructions for contributing to the project.
4+
5+
## Code of Conduct
6+
7+
By participating in this project, you agree to abide by our [Code of Conduct](CODE_OF_CONDUCT.md). Please read it before contributing.
8+
9+
## How Can I Contribute?
10+
11+
There are many ways to contribute to the OSSE project:
12+
13+
### Reporting Bugs
14+
15+
If you find a bug in the project, please create an issue on GitHub with the following information:
16+
17+
- A clear, descriptive title
18+
- A detailed description of the issue
19+
- Steps to reproduce the problem
20+
- Expected behavior
21+
- Actual behavior
22+
- Screenshots or logs (if applicable)
23+
- Environment information (OS, hardware, etc.)
24+
25+
### Suggesting Enhancements
26+
27+
We welcome suggestions for enhancements to the project. To suggest an enhancement:
28+
29+
1. Check if the enhancement has already been suggested
30+
2. Create a new issue with a clear title and detailed description
31+
3. Explain why this enhancement would be useful to most OSSE users
32+
33+
### Documentation
34+
35+
Improvements to documentation are always welcome:
36+
37+
- Fixing typos or clarifying existing documentation
38+
- Adding examples or tutorials
39+
- Translating documentation to other languages
40+
- Adding diagrams or illustrations
41+
42+
### Code Contributions
43+
44+
We welcome code contributions through pull requests:
45+
46+
1. Fork the repository
47+
2. Create a new branch for your feature or bugfix
48+
3. Make your changes
49+
4. Run tests to ensure your changes don't break existing functionality
50+
5. Submit a pull request
51+
52+
## Development Workflow
53+
54+
### Setting Up the Development Environment
55+
56+
1. Clone the repository:
57+
```bash
58+
git clone https://github.com/etherisc/open-source-secure-element.git
59+
cd open-source-secure-element
60+
```
61+
62+
2. Install dependencies:
63+
```bash
64+
# For documentation site
65+
gem install bundler
66+
bundle install
67+
68+
# For firmware development
69+
# (See specific instructions in the firmware directory)
70+
```
71+
72+
3. Run the local development server for documentation:
73+
```bash
74+
bundle exec jekyll serve
75+
```
76+
77+
### Branching Strategy
78+
79+
- `main` - The main development branch
80+
- `release/*` - Release branches
81+
- `feature/*` - Feature branches
82+
- `bugfix/*` - Bug fix branches
83+
84+
### Commit Messages
85+
86+
Please follow these guidelines for commit messages:
87+
88+
- Use the present tense ("Add feature" not "Added feature")
89+
- Use the imperative mood ("Move cursor to..." not "Moves cursor to...")
90+
- Limit the first line to 72 characters or less
91+
- Reference issues and pull requests after the first line
92+
93+
Example:
94+
```
95+
Add ECC secp256k1 support
96+
97+
- Implement key generation for secp256k1
98+
- Add signing and verification functions
99+
- Update documentation
100+
101+
Fixes #123
102+
```
103+
104+
### Pull Request Process
105+
106+
1. Update the README.md or documentation with details of changes if appropriate
107+
2. Update the CHANGELOG.md with details of changes
108+
3. The PR will be merged once it receives approval from maintainers
109+
110+
## Style Guides
111+
112+
### Documentation Style Guide
113+
114+
- Use Markdown for documentation
115+
- Follow the [Google Developer Documentation Style Guide](https://developers.google.com/style)
116+
- Use sentence case for headings
117+
- Use American English spelling
118+
119+
### Code Style Guide
120+
121+
- **C/C++**: Follow the [LLVM Coding Standards](https://llvm.org/docs/CodingStandards.html)
122+
- **Python**: Follow [PEP 8](https://www.python.org/dev/peps/pep-0008/)
123+
- **JavaScript**: Follow [Airbnb JavaScript Style Guide](https://github.com/airbnb/javascript)
124+
- **Hardware Design**: Follow the [OpenTitan Hardware Design Style Guide](https://docs.opentitan.org/doc/contributing/hw_design/)
125+
126+
## License
127+
128+
By contributing to the OSSE project, you agree that your contributions will be licensed under the project's [MIT License](LICENSE).
129+
130+
## Questions?
131+
132+
If you have any questions about contributing, please reach out to us:
133+
134+
- Open an issue with your question
135+
- Join our [Discord server](https://discord.gg/osse)
136+
- Email us at [contact@etherisc.com](mailto:contact@etherisc.com)
137+
138+
Thank you for contributing to the Open Source Secure Element project!

Gemfile

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
source "https://rubygems.org"
2+
3+
gem "jekyll", "~> 4.2.0"
4+
gem "just-the-docs", "~> 0.4.0"
5+
gem "rake", "~> 13.0.6"
6+
7+
# If you have any plugins, put them here!
8+
group :jekyll_plugins do
9+
gem "jekyll-feed", "~> 0.15.1"
10+
gem "jekyll-seo-tag", "~> 2.7.1"
11+
gem "jekyll-remote-theme", "~> 0.4.3"
12+
gem "jekyll-include-cache", "~> 0.2.1"
13+
end
14+
15+
# Specify compatible versions for Ruby 2.7.1
16+
gem "public_suffix", "~> 4.0.6"
17+
gem "addressable", "~> 2.7.0"
18+
19+
# Windows and JRuby does not include zoneinfo files, so bundle the tzinfo-data gem
20+
# and associated library.
21+
platforms :mingw, :x64_mingw, :mswin, :jruby do
22+
gem "tzinfo", ">= 1", "< 3"
23+
gem "tzinfo-data"
24+
end
25+
26+
# Performance-booster for watching directories on Windows
27+
gem "wdm", "~> 0.1.1", :platforms => [:mingw, :x64_mingw, :mswin]
28+
29+
# Lock `http_parser.rb` gem to `v0.6.x` on JRuby builds since newer versions of the gem
30+
# do not have a Java counterpart.
31+
gem "http_parser.rb", "~> 0.6.0", :platforms => [:jruby]

0 commit comments

Comments
 (0)