This repository serves as a template for Pinterest's open source projects. It contains the canonical copies of common files for licensing, contribution, etc.
ADOPTERS.md
- list of project adoptersCODE_OF_CONDUCT.md
- code of conductCONTRIBUTING.md
- contributing guideLICENSE
- our standard Apache 2.0 licenseSECURITY.md
- security policy
In addition to including the LICENSE
file in the root of your
repository, you should also add the following comment header to all of your
project's source files (using the current year in place of [yyyy]
):
Copyright [yyyy]-present, Pinterest, Inc.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
For the purposes of licensing, all significant project files are considered "source files". However, it doesn't make sense to add license headers to files such as:
- Short information text files (
README
, etc.) - Test data that would become malformed with the addition of the license text
Large projects may also use a shorter per-file copyright header, such as:
/**
* Copyright [yyyy]-present, Pinterest, Inc.
*
* This source code is licensed under the Apache License, Version 2.0
* found in the LICENSE file in the root directory of this source tree.
*/
Lastly, please ensure that the LICENSE
file is included as part of all
release packages and distribution archives, including things like JAR files.
You can also include an ADOPTERS.md
file to list people and
organizations who are using the project. This can be a good way to demonstrate
a project's popularity.
In general, it's best for adopters to add themselves to the list via a Pull Request, but project maintainers can also add to the list on their behalf if they receive permission.
You can also add links to sites such as AppSight and StackShare if you think the information there is accurate.
It's helpful to add a CONTRIBUTING.md
file to help
potential contributors understand how the project works. This is a good place
to describe the contribution process, style guide, and testing requirements.
The template provided here is a good starting point, but definitely customize
it for your project. Check out elixir-thrift/CONTRIBUTING.md
as an example.
You should include a copy of CODE_OF_CONDUCT.md
in the
root of your project.
Adding an issue template to .github/ISSUE_TEMPLATE.md
directory is a good idea
to reduce the number of non-actionable issues the project receives.