Skip to content

Commit

Permalink
Merge pull request #33 from opf/update-docu
Browse files Browse the repository at this point in the history
Update docs to OpenProject use cases
  • Loading branch information
HDinger committed Aug 1, 2023
2 parents c6f000d + 8fcabfe commit 22ae28e
Show file tree
Hide file tree
Showing 14 changed files with 253 additions and 156 deletions.
5 changes: 5 additions & 0 deletions .changeset/mighty-shrimps-tan.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
'@openproject/octicons': patch
---

feat: add octicons styles to angular package
44 changes: 22 additions & 22 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -142,25 +142,25 @@ jobs:
- name: Testing
run: bundle exec rake test

octicons_jekyll:
name: 'gem:octicons_jekyll'
needs: octicons_gem
runs-on: ubuntu-latest
defaults:
run:
working-directory: ./lib/octicons_jekyll
steps:
- uses: actions/checkout@v3
- name: Setup Ruby
uses: ruby/setup-ruby@v1
with:
ruby-version: 2.7
- uses: actions/download-artifact@v3
with:
name: octicons-gem
path: ./lib/octicons_jekyll/vendor/cache
- run: bundle install
- name: Linting
run: bundle exec rake lint
- name: Testing
run: bundle exec rake test
# octicons_jekyll:
# name: 'gem:octicons_jekyll'
# needs: octicons_gem
# runs-on: ubuntu-latest
# defaults:
# run:
# working-directory: ./lib/octicons_jekyll
# steps:
# - uses: actions/checkout@v3
# - name: Setup Ruby
# uses: ruby/setup-ruby@v1
# with:
# ruby-version: 2.7
# - uses: actions/download-artifact@v3
# with:
# name: octicons-gem
# path: ./lib/octicons_jekyll/vendor/cache
# - run: bundle install
# - name: Linting
# run: bundle exec rake lint
# - name: Testing
# run: bundle exec rake test
78 changes: 28 additions & 50 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -1,30 +1,6 @@
# Octicons Contribution Guidelines (Currently GitHub Staff only)

Thank you for your interest in contributing to Octicons! We are currently only accepting submissions from GitHub staff and only include icons that are used in the GitHub UI. If you'd like to submit feedback, a bug, or an idea for improvement, please open a new issue in this repo using the appropriate [issue template](https://github.com/primer/octicons/issues/new/choose).

## Icon request and review process

### 1. Icon review request is made

- Icon review requests are made using the [icon request template](https://github.com/github/primer/issues/new?assignees=&labels=octicon%2C+request%2C+needs+triage&template=02-icon-request.md&title=%5BIcon+request%5D+) in the github/primer repo (visible to GitHub staff only).
- Icons in the Primer Roadmap inbox will be triaged by a maintainer from the Octicons team. Maintainers should reply with a comment on the issue and then move the issue to Primer Teams Backlog.

### 2. Working on icons

- If an icon recommendation can be made async, we will discuss it in #primer-octicons or directly in the issue.
- Icon review requests require a working session, we will send an invitation.
- Once an icon has been assigned, it's up to assigned designer to be responsible for communicating the icon's status and drive the work forward.

### 3. Icon design, review, and communication

- Once design has been started on an icon, the request issue will be moved to the **Design in Progress** column of the Primer Teams Backlog.
- Designers should design the icon in Figma and when ready for review, use the [Octicons Push plugin](https://www.figma.com/community/plugin/825432045044458754/Octicons-Push) to create a PR
- After a PR is created link to the PR in the icon request issue. PRs need approval from the icon requestor (stakeholder) and at least one designer on the octicons maintainer team.

### 4. Icon request completed
- When an icon request PR has been approved, communicate that in the issue.
- After the Octicons release, the new icons that were added will have their request issues moved to the **Done** column
# Octicons Contribution Guidelines

Thank you for your interest in contributing to Octicons! If you'd like to submit feedback, a bug, or an idea for improvement, please open a new issue in this repo using the appropriate [issue template](https://github.com/opf/openproject-octicons/issues/new/choose).

## Adding or updating an icon

Expand All @@ -34,23 +10,23 @@ Follow these steps to add or update an icon.

```shell
# Clone the repository
git clone https://github.com/primer/octicons
git clone https://github.com/opf/openproject-octicons

# Navigate to the newly cloned directory
cd octicons
cd openproject-octicons
```

If you don't have [`write`](https://help.github.com/en/github/getting-started-with-github/access-permissions-on-github) access to the [primer/octicons](https://github.com/primer/octicons) repository, instead of cloning the repository directly, you'll need to [fork](http://help.github.com/fork-a-repo/) the project, clone your fork, and configure the remotes:
If you don't have [`write`](https://help.github.com/en/github/getting-started-with-github/access-permissions-on-github) access to the [opf/openproject-octicons](https://github.com/opf/openproject-octicons) repository, instead of cloning the repository directly, you'll need to [fork](http://help.github.com/fork-a-repo/) the project, clone your fork, and configure the remotes:

```shell
# Clone your fork of the repository
git clone https://github.com/<your-username>/octicons
git clone https://github.com/<your-username>/openproject-octicons

# Navigate to the newly cloned directory
cd octicons
cd openproject-octicons

# Assign the original repo to a remote called "upstream"
git remote add upstream https://github.com/primer/octicons
git remote add upstream https://github.com/opf/openproject-octicons
```

### 2. Create a new feature branch
Expand All @@ -70,38 +46,40 @@ git checkout -b <branch-name>
}
```

### 5. Commit and push changes
### 5. Create and push a changeset
For release dependent Pull Requests, add a changeset file to your Pull Request. These files are needed for the release process managed by [Changesets](https://github.com/changesets/changesets#readme).

1. Install (if you have not done before)
```shell
git add .
git commit -m <message>
git push
npm install @changesets/cli && npx changeset init
```

### 6. Create a pull request

Use GitHub to [create a pull request](https://help.github.com/en/desktop/contributing-to-projects/creating-a-pull-request) for your branch. In your pull request description, be sure to mention where the icon will be used and any relevant timeline information.

If everything looks good, a maintainer will approve and merge the pull request when appropriate. After the pull request is merged, your icon will be available in the next Octicons release.
2. Create a changeset
```shell
npx changeset
```

## Releasing changes
3. Select version type (patch, minor, major)
4. Type a message explaining your changes (equivalent to release notes)

Once submitted changes have been agreed upon, these instructions will guide maintainers through releasing changes.

Releases are managed by 🦋 [Changesets](https://github.com/atlassian/changesets#documentation) which is a great tool for managing major/minor/patch bumps and changelogs. More info can be found in our [how we work docs](https://github.com/github/design-infrastructure/blob/main/how-we-work/engineering/changesets.md#using-changesets-to-prepare-and-publish-a-release).
### 6. Commit and push changes

We have the [changeset-bot comment on new pull requests](https://github.com/changesets/bot#readme) asking contributors or maintainers to add a changeset file, which will become the markdown supported changelog entry for the change.
```shell
git add .
git commit -m <message>
git push
```

When creating the changeset always commit into the working branch (pull request branch), not `main`.
### 7. Create a pull request

When a pull request is approved merge it into the `main` branch. The changeset action will then create a Release pull request that includes this new pull request.
Use GitHub to [create a pull request](https://help.github.com/en/desktop/contributing-to-projects/creating-a-pull-request) for your branch. In your pull request description, be sure to mention where the icon will be used and any relevant timeline information.

Once maintainers have agreed and are satisfied with the release. Merge the Release pull request. Changesets will then publish a new GitHub release to the repository with the changelog and new version number. A second action will be triggered by this release and publish the new versions to npm and rubygems.
If everything looks good, a maintainer will approve and merge the pull request when appropriate. After the pull request is merged, your icon will be available in the next Octicons release.

🎉 Congratulations! The new release has been published.

## Other contributions

When contributing to Octicons outside of adding a new icon or release-dependent contribution, be sure to add the `skip-changeset` label to the pull request. This will allow for the pull request to skip the changeset check and have the ability to be merged into the main branch.
When contributing to Octicons outside of adding a new icon or release-dependent contribution, you don't have to add a _Changeset_ file.

Examples of other contributions include adding documentation or improving a GitHub Actions workflows.
30 changes: 14 additions & 16 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,9 @@
![octicons cover dark](https://user-images.githubusercontent.com/54012/138925203-80e1afa1-ba54-4731-9525-3c41186663f9.png#gh-dark-mode-only)
<br>
<br>
<h1 align="center">Primer Octicons</h1>
<h1 align="center">OpenProject's Primer Octicons</h1>

<p align="center">Octicons are a set of SVG icons built by GitHub for GitHub.</p>
<p align="center">Octicons are a set of SVG icons built by GitHub forked by OpenProject for OpenProject</p>

<p align="center">
<a aria-label="build status" href="https://github.com/opf/openproject-octicons/actions/workflows/ci.yml">
Expand All @@ -23,35 +23,33 @@ This repository contains several libraries. Each of them is in the `lib/` folder

The octicons node.js library is the main JavaScript library. With [a JavaScript API](/lib/octicons_node/README.md) that can be used in a variety of applications.

| Package | Version |
| ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------- |
| **[@peonproject/openproject-octicons](/lib/octicons_node)** <br />Node.js package with JavaScript API | [![npm version](https://img.shields.io/npm/v/@openproject/openproject-octicons.svg)](https://www.npmjs.org/package/@opf/openproject-octicons) |
| **[@openprojectf/openproject-octicons-react](/lib/octicons_react)** <br />React Octicons components | [![npm version](https://img.shields.io/npm/v/@openproject/openproject-octicons-react.svg)](https://www.npmjs.org/package/@opf/openproject-octicons-react) |
| **[@primer/styled-octicons](/lib/octicons_styled)** <br />React Octicons components with Styled System props | [![npm version](https://img.shields.io/npm/v/@primer/styled-octicons.svg)](https://www.npmjs.org/package/@primer/styled-octicons) |
| Package | Version |
|-----------------------------------------------------------------------------------------------| ------------------------------------------------------------------------------------------------------------------------------- |
| **[@openproject/octicons-angular](/lib/octicons_node)** <br />Node.js package with JavaScript API | [![npm version](https://img.shields.io/npm/v/@openproject/octicons-angular.svg)](https://www.npmjs.com/package/@openproject/octicons-angular) |


### Ruby

| Package | Version |
| ----------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- |
| **[octicons](/lib/octicons_gem)** <br />Ruby gem with Ruby API | [![Gem version](https://img.shields.io/gem/v/octicons.svg)](https://rubygems.org/gems/octicons) |
| [octicons_helper](/lib/octicons_helper)<br />Rails helper for using octicons | [![Gem version](https://img.shields.io/gem/v/octicons_helper.svg)](https://rubygems.org/gems/octicons_helper) |
| [jekyll-octicons](/lib/octicons_jekyll)<br />Jekyll plugin for using octicons | [![Gem version](https://img.shields.io/gem/v/jekyll-octicons.svg)](https://rubygems.org/gems/jekyll-octicons) |
| Package | Version |
| ----------------------------------------------------------------------------- |---------------------------------------------------------------------------------------------------------------------------------------|
| **[openproject-octicons](/lib/octicons_gem)** <br />Ruby gem with Ruby API | [![Gem version](https://img.shields.io/gem/v/openproject-octicons.svg)](https://rubygems.org/gems/openproject-octicons) |
| [openproject-octicons_helper](/lib/octicons_helper)<br />Rails helper for using octicons | [![Gem version](https://img.shields.io/gem/v/openproject-octicons_helper.svg)](https://rubygems.org/gems/openproject-octicons_helper) |


## Contributing

### Feedback, ideas, and bug reports

If you found a bug, have feedback about our Octicon Library, or an idea on how to improve it, please open a new issue in this repo using the appropriate [issue template](https://github.com/opf/openproject-octicons/issues/new/choose).

### Request an Icon Review (GitHub staff only)

To request an icon review for inclusion in the Octicons Library, open an issue using the [icon review request](https://github.com/github/primer/issues/new?assignees=&labels=octicon%2C+request%2C+needs+triage&template=03-icon-request.md&title=%5BIcon+request%5D+) template in github/primer.

### Adding or updating an icon

Read through our [contributing guide](./CONTRIBUTING.md#adding-or-updating-icons) if you want to add or update icons.

## Release

Read through our [release guide](./RELEASE.md) if you want to release a new version.

## License

(c) GitHub, Inc.
Expand Down
11 changes: 11 additions & 0 deletions RELEASE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
# Releasing changes

Releases are managed by 🦋 [_Changesets_](https://github.com/atlassian/changesets#documentation) which is a great tool for managing major/minor/patch bumps and changelogs.

When creating the changeset, always commit into the working branch (pull request branch), not `main`.

When a pull request is approved, merge it into the `main` branch. The changeset action will then create a Release pull request that includes this new pull request. This Release pull request will be updated automatically when new `.changeset` files are commited to the `main` branch. So **do not** override the Release pull request manually.

Once all changes are merged to `main`, you can also merge the Release pull request. _Changesets_ will then publish a new GitHub release to the repository with the changelog and new version number. A second action will be triggered by this release and publish the new versions to npm and rubygems.

🎉 Congratulations! The new release has been published.
36 changes: 0 additions & 36 deletions add-octicon-checklist.md

This file was deleted.

Loading

0 comments on commit 22ae28e

Please sign in to comment.