You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

SonarLintIntegration.tsx 4.7KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107
  1. /*
  2. * SonarQube
  3. * Copyright (C) 2009-2019 SonarSource SA
  4. * mailto:info AT sonarsource DOT com
  5. *
  6. * This program is free software; you can redistribute it and/or
  7. * modify it under the terms of the GNU Lesser General Public
  8. * License as published by the Free Software Foundation; either
  9. * version 3 of the License, or (at your option) any later version.
  10. *
  11. * This program is distributed in the hope that it will be useful,
  12. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  13. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
  14. * Lesser General Public License for more details.
  15. *
  16. * You should have received a copy of the GNU Lesser General Public License
  17. * along with this program; if not, write to the Free Software Foundation,
  18. * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
  19. */
  20. import * as React from 'react';
  21. import Helmet from 'react-helmet';
  22. import SQPageContainer from './components/SQPageContainer';
  23. import SQStartUsing from './components/SQStartUsing';
  24. import SQTopNav from './components/SQTopNav';
  25. import { isLoggedIn } from '../../../helpers/users';
  26. import { getBaseUrl } from '../../../helpers/urls';
  27. import './style.css';
  28. export default function SonarLintIntegration() {
  29. return (
  30. <SQPageContainer>
  31. {({ currentUser }) => (
  32. <div className="page page-limited sc-page">
  33. <Helmet title="Enhance SonarCloud experience with SonarLint | SonarCloud">
  34. <meta
  35. content="SonarLint connected teams are efficient, consistent and get more value. Connect SonarCloud with SonarLint and share consistent rulesets and analysis settings in everyone’s IDE."
  36. name="description"
  37. />
  38. </Helmet>
  39. <SQTopNav />
  40. <div className="sc-child-header">
  41. <img
  42. alt=""
  43. height="34"
  44. src={`${getBaseUrl()}/images/sonarcloud/sonarlint-integration.svg`}
  45. />
  46. <h1 className="sc-child-title">SonarLint integration</h1>
  47. <p className="sc-child-lead">
  48. SonarCloud can be extended with{' '}
  49. <a className="sc-child-lead-link" href="https://www.sonarlint.org/">
  50. SonarLint
  51. </a>{' '}
  52. to provide developers maximum insight <br />
  53. in their IDEs on code quality and make sure they do not introduce new issues.
  54. </p>
  55. <img
  56. alt=""
  57. height="147"
  58. src={`${getBaseUrl()}/images/sonarcloud/sl-notif.png`}
  59. srcSet={`${getBaseUrl()}/images/sonarcloud/sl-notif.png 1x, ${getBaseUrl()}/images/sonarcloud/sl-notif@2x.png 2x`}
  60. width="450"
  61. />
  62. </div>
  63. <ul className="sc-features-list">
  64. <li className="sc-feature sc-child-feature">
  65. <h3 className="sc-feature-title">Get instant feedback</h3>
  66. <p className="sc-feature-description">
  67. SonarLint will provide developers with instant feedback in their IDEs as they are
  68. writing code, like with a spell checker. SonarLint also shows already existing
  69. issues in the code and enables developers to differentiate what issues they
  70. introduced.
  71. </p>
  72. </li>
  73. <li className="sc-feature sc-child-feature">
  74. <h3 className="sc-feature-title">Share quality profiles</h3>
  75. <p className="sc-feature-description">
  76. Teams will share the ruleset used to check quality on the project. This means that
  77. not only everyone in the team uses the same rules but it also means that if you
  78. update this ruleset, everybody will use immediately the updated one.
  79. </p>
  80. </li>
  81. <li className="sc-feature sc-child-feature">
  82. <h3 className="sc-feature-title">Share configuration</h3>
  83. <p className="sc-feature-description">
  84. Project configuration such as exclusions, parameters and false positives get
  85. conveyed to the IDE as they get defined, enabling the team get exactly the same view
  86. on the project they are working on.
  87. </p>
  88. </li>
  89. <li className="sc-feature sc-child-feature">
  90. <h3 className="sc-feature-title">Event notification</h3>
  91. <p className="sc-feature-description">
  92. Developers will get notified directly in their IDEs when the Quality Gate of their
  93. project fails or when they have introduced an issue that has been picked by
  94. SonarCloud.
  95. </p>
  96. </li>
  97. </ul>
  98. {!isLoggedIn(currentUser) && <SQStartUsing />}
  99. </div>
  100. )}
  101. </SQPageContainer>
  102. );
  103. }