Skip to content

Commit

Permalink
work in progress
Browse files Browse the repository at this point in the history
  • Loading branch information
icidasset committed Dec 7, 2023
0 parents commit 52c8610
Show file tree
Hide file tree
Showing 56 changed files with 11,712 additions and 0 deletions.
46 changes: 46 additions & 0 deletions .devcontainer/devcontainer.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
{
"name": "js",
//https://containers.dev/templates or use a Dockerfile or Docker Compose file. More info: https://containers.dev/guide/dockerfile
"image": "mcr.microsoft.com/devcontainers/typescript-node",
// https://containers.dev/features
"features": {
"ghcr.io/devcontainers/features/github-cli:1": {
"installDirectlyFromGitHubRelease": true,
"version": "latest"
},
"ghcr.io/devcontainers/features/node:1": {
"nodeGypDependencies": true,
"version": "lts"
}
},

// Use 'forwardPorts' to make a list of ports inside the container available locally.
// "forwardPorts": [],

// Use 'postCreateCommand' to run commands after the container is created.
"postCreateCommand": "pnpm install",

"customizations": {
"codespaces": {
"openFiles": ["readme.md"]
},
"vscode": {
"extensions": [
"dbaeumer.vscode-eslint",
"esbenp.prettier-vscode",
"yoavbls.pretty-ts-errors"
],
"settings": {
"javascript.format.enable": false,
"typescript.format.enable": false,
"editor.formatOnPaste": true,
"editor.formatOnType": true,
"editor.formatOnSave": true,
"editor.defaultFormatter": "esbenp.prettier-vscode",
"javascript.preferences.importModuleSpecifierEnding": "js",
"typescript.preferences.importModuleSpecifierEnding": "auto",
"typescript.enablePromptUseWorkspaceTsdk": true
}
}
}
}
1 change: 1 addition & 0 deletions .github/CODEOWNERS
Validating CODEOWNERS rules …
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
* @hugomrdias
108 changes: 108 additions & 0 deletions .github/CODE_OF_CONDUCT.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,108 @@
# Code of Conduct

**TL;DR Be kind, inclusive, and considerate.**

In the interest of fostering an open, inclusive, and welcoming environment, all
members, contributors, and maintainers interacting within our online community
(including Discord, Discourse, etc.), on affiliated projects and repositories
(including issues, pull requests, and discussions on Github), and/or involved
with associated events pledge to accept and observe the following Code of
Conduct.

As members, contributors, and maintainers, we pledge to make participation in
our projects and community a harassment-free experience, ensuring a safe
environment for all, regardless of background, gender, gender identity and
expression, age, sexual orientation, disability, physical appearance, body size,
race, ethnicity, religion (or lack thereof), or any other dimension of
diversity.

Sexual language and imagery will not be accepted in any way. Be kind to others.
Do not insult or put down people within the community. Behave professionally.
Remember that harassment and sexist, racist, or exclusionary jokes are not
appropriate in any form. Participants violating these rules may be sanctioned or
expelled from the community and related projects.

## Spelling it out

Harassment includes offensive verbal comments or actions related to or involving

- background
- gender
- gender identity and expression
- age
- sexual orientation
- disability
- physical appearance
- body size
- race
- ethnicity
- religion (or lack thereof)
- economic status
- geographic location
- technology choices
- sexual imagery
- deliberate intimidation
- violence and threats of violence
- stalking
- doxing
- inappropriate or unwelcome physical contact in public spaces
- unwelcomed sexual attention
- influencing unacceptable behavior
- any other dimension of diversity

## Our Responsibilities

Maintainers of the community and associated projects are not only subject to the
anti-harassment policy, but also responsible for executing the policy,
moderating related forums, and for taking appropriate and fair corrective action
in response to any instances of unacceptable behavior that breach the policy.

Maintainers have the right to remove and reject comments, threads, commits,
code, documentation, pull requests, issues, and contributions not aligned with
this Code of Conduct.

## Scope

This Code of Conduct applies within all project and community spaces, as well as
in any public spaces where an individual representing the community is involved.
This covers

- Interactions on the Github repository, including discussions, issues, pull
requests, commits, and wikis
- Interactions on any affiliated Discord, Slack, IRC, or related online
communities and forums like Discourse, etc.
- Any official project emails and social media posts
- Individuals representing the community at public events like meetups, talks,
and presentations

## Enforcement

All instances of abusive, harassing, or otherwise unacceptable behavior should
be reported by contacting the project and community maintainers at
[[email protected]][support-email]. All complaints will be reviewed and
investigated and will result in a response that is deemed necessary and
appropriate to the circumstances.

Maintainers of the community and associated projects are obligated to maintain
confidentiality with regard to the reporter of an incident. Further details of
specific enforcement policies may be posted separately.

Anyone asked to stop abusive, harassing, or otherwise unacceptable behavior are
expected to comply immediately and accept the response decided on by the
maintainers of the community and associated projects.

## Need help?

If you are experiencing harassment, witness an incident or have concerns about
content please contact us at [[email protected]][support-email].

## Attribution

This Code of Conduct is adapted from the [Contributor Covenant, v2.1][contributor-cov],
among other sources like [!!con’s Code of Conduct][!!con] and
[Mozilla’s Community Participation Guidelines][mozilla].

[!!con]: https://bangbangcon.com/conduct.html
[contributor-cov]: https://www.contributor-covenant.org/version/2/1/code_of_conduct/
[mozilla]: https://www.mozilla.org/en-US/about/governance/policies/participation/
[support-email]: mailto:[email protected]
134 changes: 134 additions & 0 deletions .github/CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,134 @@
# Contributing to Template

Thank you for helping to improve the project! We are so happy that you are contributing! 💖

You can contribute to the project at any level. Whether you are new to web development or have been at it for ages doesn't matter. We can use your help!

**No contribution is too small, and all contributions are valued.**

This guide will help you to get started. It includes many details, but don't let that turn you away. Consider this a map to help you navigate the process, and please reach out to us with any questions and concerns in the our public [channel] .

## Conduct

Please review our [Code of Conduct] which describes the behavior we expect from all contributors. Please be kind, inclusive, and considerate when interacting with contributors and maintainers.

## Contributing in issues

You can contribute by [opening an issue][issue] to request a feature or report a bug. We also welcome comments on an issue, bug reproductions, and pull requests if you see how to address an issue.

If you are still determining the details of a feature request, you can start with a [discussion][discussions] where we can informally discuss what you have on your mind.

**Anyone can participate in any stage of contribution**. We urge you to
join in the discussion around bugs and comment on pull requests.

### Asking for help

If you have reviewed our [documentation][docs] and still have questions or are having problems, ask for help in the our public [channel] or [start a discussion][discussions].

### Submitting a bug report

We provide a template to give you a starting point when submitting a bug report. Please fill this template in with all relevant information, but feel free to delete any sections that do not apply.

The most important information is describing the problem and how it impacts you. We also invite you to propose a solution, which could be a description of expected behavior.

We very much appreciate it if you could include a [short, self-contained, correct example][sscce] that demonstrates the issue.

## Development

If you have been assigned to fix an issue or develop a new feature, please follow these steps to get started:

- Fork this repository.
- Install dependencies by running `pnpm install`.
- We use [pnpm](https://pnpm.io/) for package management.
- Make sure you have Node LTS installed in your system.
- Optionally run `npx simple-git-hooks` to install git hooks for linting and formatting.
- Implement your changes to files in the `src/` directory and corresponding test files in the `/test` directory.
- Git stage your required changes and commit (see below commit [guidelines](#how-should-i-write-my-commits)).
- Submit PR for review

### Codespaces

This repo has a dev container configuration to enable one click setup of a development environment using Codespaces.

[![Open in GitHub Codespaces](https://github.com/codespaces/badge.svg)][codespaces]

## Pull requests

Pull requests are how we make changes.

Even tiny pull requests to fix typos or improve comments are welcome. Before submitting a significant PR, it is usually best to start by [opening an issue][issue] or [starting a discusssion][discussions]. Taking one of these steps increases the likelihood that your PR will be merged.

All commits must be signed before a pull request will be accepted. See the GitHub [signing commits][signing] and [telling git about your signing key][telling-git] documentation. We recommend generating a new SSH key for signing if you are setting up signing for the first time.

We squash and merge all PRs. Orderly, well-written commits will help us during review, but we don't require a pristine commit history.

### Tests

If your change alters existing code, please run the test suites:

```sh
pnpm run lint
pnpm run test

# node tests can use native watch mode
pnpm test:node -n watch

# browser tests can enable watch
pnpm test:browser --watch
```

If you are adding a new feature, please add tests that prove the code works correctly and reference them when you submit the pull request.

### Opening a pull request

We provide a [pull request template][template] to give you a starting point when creating a pull request. Please fill this template in, but feel free to delete any sections that do not apply or that you are unsure about.

### Discuss and update

You will likely receive feedback or requests for changes to your pull request. Don't be discouraged! Pull request reviews help us all to collaborate and produce better code. Some reviewers may sign off immediately, and others may have more detailed comments and feedback. It's all part of the process of evaluating whether the changes are correct and necessary.

**Once the PR is open, do not rebase the commits.** Add more commits to address feedback. We will squash and merge all contributions, and we may clean up the history recorded in the final commit.

### Merging

The primary goals for a pull request are to improve the codebase and for the contributor to succeed. Some pull requests may not be merged at the end of the day, but that does not indicate failure. If your pull request is not merged, please know that your efforts are appreciated and will have an impact on how we think about the codebase in the long run.

## Release Process

[Release Please](https://github.com/googleapis/release-please) automates CHANGELOG generation, the creation of GitHub releases,
and version bumps for our packages. Release Please does so by parsing your
git history, looking for [Conventional Commit messages](https://www.conventionalcommits.org/),
and creating release PRs.

### What's a Release PR?

Rather than continuously releasing what's landed to our default branch, release-please maintains Release PRs:

These Release PRs are kept up-to-date as additional work is merged. When we're ready to tag a release, we simply merge the release PR.

When the release PR is merged the release job is triggered to create a new tag, a new github release and run other package specific jobs. Only merge ONE release PR at a time and wait for CI to finish before merging another.

Release PRs are created individually for each package in the mono repo.

### How should I write my commits?

Release Please assumes you are using [Conventional Commit messages](https://www.conventionalcommits.org/).

The most important prefixes you should have in mind are:

- `fix:` which represents bug fixes, and correlates to a [SemVer](https://semver.org/)
patch.
- `feat:` which represents a new feature, and correlates to a SemVer minor.
- `feat!:`, or `fix!:`, `refactor!:`, etc., which represent a breaking change
(indicated by the `!`) and will result in a SemVer major.

[channel]: https://discord.gg/zAQBDEq
[codespaces]: https://codespaces.new/fission-codes/stack
[discussions]: https://github.com/fission-codes/stack/discussions
[issue]: https://github.com/fission-codes/stack/issues
[docs]: https://fission-codes.github.io/stack/
[sscce]: http://www.sscce.org/
[signing]: https://docs.github.com/en/authentication/managing-commit-signature-verification/signing-commits
[telling-git]: https://docs.github.com/en/authentication/managing-commit-signature-verification/telling-git-about-your-signing-key
[template]: PULL_REQUEST_TEMPLATE.md
[Code of Conduct]: CODE_OF_CONDUCT.md
24 changes: 24 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
---
name: Bug report
about: Create a report to help us improve
title: '[bug]: '
labels: bug, help wanted
assignees: 'hugomrdias'
---

**Describe the bug**
A clear and concise description of what the bug is.

**To Reproduce**
Steps to reproduce the behavior:

1. Go to '...'
2. Click on '....'
3. Scroll down to '....'
4. See error

**Expected behavior**
A clear and concise description of what you expected to happen.

**Additional context**
Add any other context about the problem here.
19 changes: 19 additions & 0 deletions .github/ISSUE_TEMPLATE/feature_request.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
---
name: Feature request
about: Suggest an idea for this project
title: '[feature]: '
labels: enhancement, help wanted
assignees: 'hugomrdias'
---

**Is your feature request related to a problem? Please describe.**
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]

**Describe the solution you'd like**
A clear and concise description of what you want to happen.

**Describe alternatives you've considered**
A clear and concise description of any alternative solutions or features you've considered.

**Additional context**
Add any other context or screenshots about the feature request here.
18 changes: 18 additions & 0 deletions .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
# Description

Please include a summary of the change and which issue is fixed. Please also include relevant motivation and context. List any dependencies that are required for this change.

## Link to issue

Please add a link to any relevant issues/tickets

## Type of change

Please delete options that are not relevant.

- [ ] Bug fix (non-breaking change that fixes an issue)
- [ ] New feature (non-breaking change that adds functionality)
- [ ] Refactor (non-breaking change that updates existing functionality)
- [ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
- [ ] This change requires a documentation update
- [ ] Comments have been added/updated
17 changes: 17 additions & 0 deletions .github/SECURITY.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
# Security Policy

## Reporting a Vulnerability

The project team welcomes security reports and is committed to providing prompt attention to security issues.

Security issues **SHOULD** be reported privately via [email].

Security issues **SHOULD NOT** be reported via the public GitHub Issue tracker.

## Security advisories

The project team is committed to transparency in the security issue disclosure
process. Security advisories will be published through Github [Security Advisories][sec-advisories].

[email]: mailto:[email protected]
[sec-advisories]: https://github.com/fission-codes/stack/security/advisories
12 changes: 12 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
version: 2
updates:
- package-ecosystem: github-actions
directory: /
open-pull-requests-limit: 5
schedule:
interval: monthly
- package-ecosystem: npm
directory: /
open-pull-requests-limit: 5
schedule:
interval: weekly
7 changes: 7 additions & 0 deletions .github/release-please-config.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
{
"separate-pull-requests": true,
"packages": {
"packages/package1": {},
"packages/package2": {}
}
}
Loading

0 comments on commit 52c8610

Please sign in to comment.