- Contributing
Contributions are always welcome. Before contributing please read the
code of conduct
and search the issue tracker; your issue may have already been discussed or fixed in main
. To contribute,
fork this repository, commit your
changes, and send a Pull Request.
Note that our code of conduct applies to all platforms and venues related to this project; please follow it in all your interactions with the project and its participants.
Quickstarts are defined by several yaml files. These files are used to render the quickstart content on New Relic's external I/O Catalog and within the internal New Relic I/O Catalog. At this time there isn't any easy way to preview a quickstart as you develop, so we have provided a visual mapping below to explain how each part of the UI is rendered using the quickstart yaml files.
This example is based on the Fastly quickstart which can be found here within the repository and here on the external I/O catalog
please note, the internal catalog follows a very similar UI pattern.
The diagram below explains the installation flow each type of quickstart follows.
- Maintain a strong active voice. Lead sentences with verbs.
- Avoid “Allows you to monitor your uptime”
- Avoid being too formal. Avoid words like
thus
andlastly
, and feel free to usewe
andour
. - In general, we should only lightly touch on what a given technology does. The user is already using Node, so we don’t need to sell them on it exactly. What we need to focus on is the challenges of monitoring that technology and then sell on that.
Check out our doc team's voice and tone guidelines.
When writing about a quickstart the following language rules should be followed:
- Capitalize the term quickstart if the word is at the start of a sentence or header.
"Quickstarts are a great way to get started with New Relic!"
- If the term quickstarts is anywhere else in a sentence, use lower case.
"New Relic offers you a wide range of quickstarts to get you started."
- Quickstarts is always a single word.
"Always use quickstarts, not quick starts."
## Why monitor <QUICKSTART_TECHNOLOGY>
Explain the role and purpose of monitoring your technology. What are some specific difficulties about the technology? What are useful metrics to monitor?
### <QUICKSTART_TECHNOLOGY> quickstart highlights
Describe the specific features of your quickstart. Mentions things such as dashboard visuals, alerts, and the type of instrumentation. We recommend the following format:
Quick intro sentence:
- First highlight
- Second highlight
- Third highlight
### New Relic + <QUICKSTART_TECHNOLOGY> (Optional)
Describe how New Relic's capabilities can assist in monitoring your technology outside of what is included in the quickstart. Mention capabilies such as errors inbox, transaction traces, etc.
Review our comprehensive Developer Guide to get starting building your quickstart!
We encourage all contributors to actively engage in the creation and maintenance of quickstarts. Whether you work at New Relic or use New Relic as a customer, the community is open to your expertise!
Step 1
: Review the quickstart Template Config for a definition of how to create a quickstart.Step 2
: Review the documentation for structure and limits you need to consider.Step 3
: Create your quickstart!Step 4
: Submit a PR!Step 5
: Resolve feedback from code reviews.Step 6
: After approval, merge your PR.
When creating a new quickstart or reviewing a PR please keep the following in mind, and refer to the quickstart validation workflow for current validations.
When you submit a PR for a new our existing quickstart the follow workflow is executed.
Step 1
: A new PR is added theTo do
column of the NR1 Community Quickstarts project boardStep 2
: A repo maintainer will review the PR and provided feedback. The PR will move to theIn progress
column.Step 3
: Once a review is complete the PR will move toIn review
column andin-review
label will be applied.Step 4
: When all review feedback is resolved the PR will be merged and moved to theDone
column and areleased
label will be applied.
Before getting started, review the documentation for quickstart structure and limits you need to consider.
You should also review the API limits for dashboards and alerts to help you build your quickstart.
Quickstart authors represent the creator of the quickstart.
You can define multiple author names, but it's recommended to use one of the follow formats.
- company name
- company name + author name
- author name
See the docs for more details on
installPlans
. You can view all the availableinstallPlans
in the Install directory.
- The Ordering of
installPlans
is important as it sets the order of installation in the guided install flow for a user. - Every quick start that should be "installable" will require a destination URL within the install configuration if you want use the guided install flow.
If you need to create a new
installPlan
for a quickstart consider the following best practices.
- When creating a new
installPlan
you can refer to existing plans in the install directory for guidance. - The install plan
id
is user defined. You'll need to set that value in the configuration file. - In case of a third party install plan, the install plan
id
should be prefixed withthird-party-
. - All third party install plans should be store in thethird-party directory
- The configuration file name should be
install.yml
. - keep the install plan
description
succinct as it's informational only.
See the docs for more details on
description
andsummary
.
- Use the proper YAML formatting
|
for URLdescription
andsummary
. - Please review the YAML cheat sheet for more details.
- Descriptions shouldn't have
H1
#
headers, and allH1
#
headers will be rendered toH2
##
by default. - Use only 1
H2
##
as your top header. - Use
H3
###
only throughout the rest of your description. As the markdown only supports up toH3
###
.
description: |
a description of the quickstart.
summary: |
a summary of the quickstart.
See the docs for more details on
documentation
- The first
documentation URL
listed in the documentation configuration should be the primary doc reference. - The see installation docs buttons will always link to the primary
documentation URL
. - Every quick start that should be "installable" needs a
documentation URL
and aninstallPlan
configuration if you want use the guided install flow. - Use the proper YAML formatting
|
for the URL description - Use the proper YAML formatting
>-
for documentation URL references. - Please review the YAML cheat sheet for more details.
documentation:
- name: Name of documentation
description: |
Description of documentation
url: >-
https://docs.newrelic.com/docs/url/
See the docs for more details on
levels
- All quickstarts will be set to
Community
level by default unless specified differently by theAuthor
. - Levels can only be modified by New Relic employees.
- If you have questions on how to increase the level of support please file an issue
- The shield icon is only applied to those quickstarts with
Support Level
New Relic ORSupport Level
Verified.
See the docs for more details on
dashboards
- Dashboard images are
optional
but highly recommended to preview the visual functionality of a dashboard. - File name should be
quickstart_name01
,quickstart_name02
, etc - Dashboards images should be stored in the quickstart's dashboard directory. ex:
/quickstart_name01/dashboards
. - Must be in
.png
,.jpg
,.jpeg
or.svg
format - Each image file must be less than
4MB
in size - There should be no more than
6
dashboard images per dashboard - For best results use aspect ratio: 3:2
- For best results use 800 px (width)
- For best results use 1600 px (height)
See the docs for more details on
dashboards
- These images are
optional
and should contain images you want to display within a markdown widget on your Dashboard. - File name should be
quickstart_name01
,quickstart_name02
, etc - These images should be stored in the quickstart's images directory. ex:
/quickstart_name01/images
. - Must be in
.png
,.jpg
,.jpeg
or.svg
format - Each image file must be less than
4MB
in size - There should be no more than
6
dashboard images per dashboard - See our Python quickstart for examples:
- What this looks like in the dashboard.json
- What the dashboard looks like in New Relic
See the docs for more details on
logos
If you don't have a logo for your quickstart, you can use a generic new relic logo.
- Logo files should go in the root quickstart directory,
/quickstarts_name01
- Logos are
required
and are used in both the Public Catalog and in New Relic One. .png
or.jpeg
or.svg
format- Max 1
- Aspect ratio: 1:1
- 250px (width) x 100px (height)
See the docs for more details on
keywords
When adding keywords to a quickstart the following format should be used. Keywords are used in UI navigation, filters and labels within the New Relic One I/O Catalog and the External I/O Catalog.
keywords:
- a keyword
- another keyword
- yet another keyword
Keywords are strictly defined and you should provide a standard set of keywords in your quickstart from the list below. If you submit a keyword that is not defined in this list below, it will be reviewed for use after you submit a PR.
the
featured
keyword is used to feature quickstarts. It can only be set by a New Relic employee.
- apm
- automation
- cms
- containers
- content management system
- database
- golang
- infrastructure
- java
- kubernetes
- language agent
- load balancer
- messaging
- mobile
- .net
- networking
- node.js
- os
- operating system
- open source monitoring
- php
- python
- queue
- ruby
- synthetics
- testing
- tracing
- windows
Feature requests should be submitted in the Issue tracker, with a description of the expected behavior & use case, where they’ll remain closed until sufficient interest, e.g. 👍 reactions, has been shown by the community. Before submitting an Issue, please search for similar ones in the closed issues.
- Ensure that all new commits follow the Conventional Commit syntax.
- Provide a short description of the changes and screenshots of any visual changes.
- Ensure that all status checks are passing.
- You may merge the Pull Request in once you have the sign-off of one other developer, or if you do not have permission to do that, you may request the reviewer to merge it for you.
- Once your PR is merged, changes should be reflected both in the Public Catalog and in New Relic One I/O within
4 hours
Please help the maintainers by leveraging the following conventional commit standards in your pull request title and commit messages.
- for minor changes / additions / corrections to content.
- for minor changes / additions / corrections to images.
- for minor non-functional changes / additions to github actions, github templates, package or config updates, etc
git commit -m "chore: adjusting config and content"
- for minor functional corrections to code.
git commit -m "fix: typo and prop error in the code of conduct"
- for major functional changes or additions to code.
git commit -m "feat(media): creating a video landing page"
Keep in mind that when you submit your Pull Request, you'll need to sign the CLA via the click-through using CLA-Assistant. If you'd like to execute our corporate CLA, or if you have any questions, please drop us an email at [email protected].
For more information about CLAs, please check out Alex Russell’s excellent post, “Why Do I Need to Sign This?”.
We host an internal help Slack channel. You can contact the teams supporting quickstarts and I/O with any questions here.
to be updated