This is an automated email from the ASF dual-hosted git repository.

mmerli pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/pulsar.git


The following commit(s) were added to refs/heads/master by this push:
     new 6b6bc52  Added powered-by page (#5018)
6b6bc52 is described below

commit 6b6bc529cfe890aa4dfa8d9a67e2d8f00a46643e
Author: Matteo Merli <[email protected]>
AuthorDate: Sun Aug 25 08:44:35 2019 -0700

    Added powered-by page (#5018)
    
    * Added powered-by page
    
    * Renamed to Yahoo! JAPAN
    
    * Added Kafkaesque
---
 site2/website/core/Footer.js         |   2 +
 site2/website/data/users.js          | 132 +++++++++++++++++++++++++++++++++++
 site2/website/pages/en/powered-by.js |  51 ++++++++++++++
 site2/website/static/css/custom.css  |  39 ++++++++++-
 4 files changed, 221 insertions(+), 3 deletions(-)

diff --git a/site2/website/core/Footer.js b/site2/website/core/Footer.js
index 4b574b7..4d4353b 100644
--- a/site2/website/core/Footer.js
+++ b/site2/website/core/Footer.js
@@ -122,6 +122,7 @@ class Footer extends React.Component {
     const issuesUrl = 'https://github.com/apache/pulsar/issues'
     const resourcesUrl = this.pageUrl('resources', this.props.language)
     const teamUrl = this.pageUrl('team', this.props.language)
+    const poweredByUrl = this.pageUrl('powered-by', this.props.language)
     const contributingUrl = this.pageUrl('contributing', this.props.language)
 
     const communityMenuJs = `
@@ -140,6 +141,7 @@ class Footer extends React.Component {
             '<li>&nbsp;</li>' +
             '<li><a href="${resourcesUrl}">Resources</a></li>' +
             '<li><a href="${teamUrl}">Team</a></li>' +
+            '<li><a href="${poweredByUrl}">Powered By</a></li>' +
           '</ul>' +
         '</div>' +
         '</li>';
diff --git a/site2/website/data/users.js b/site2/website/data/users.js
new file mode 100644
index 0000000..c734bc3
--- /dev/null
+++ b/site2/website/data/users.js
@@ -0,0 +1,132 @@
+module.exports = [
+    {
+        name: 'Narvar',
+        url: 'https://corp.narvar.com/',
+        logo: 
'https://corp.narvar.com/wp-content/themes/narvarinc/dist/images/narvar-logo.svg',
+    },
+    {
+        name: 'Giggso',
+        url: 'https://giggso.com/',
+        logo: 
'https://pbs.twimg.com/profile_banners/4179602009/1470596851/600x200'
+    },
+    {
+        name: 'STICorp',
+        url: 'https://www.sticorp.com.br/',
+        logo: 
'https://www.sticorp.com.br/wp-content/uploads/2015/09/logo-horizontal.png',
+    },
+    {
+        name: 'Verizon Media',
+        url: 'https://www.verizonmedia.com/',
+        logo: 
'https://upload.wikimedia.org/wikipedia/commons/thumb/0/09/Verizon_Media_2019_logo.svg/1200px-Verizon_Media_2019_logo.svg.png'
+    },
+    {
+        name: 'Yahoo! JAPAN',
+        url: 'https://www.yahoo.co.jp/',
+        logo: 'https://s.yimg.jp/images/top/sp2/cmn/logo-170307.png'
+    },
+    {
+        name: 'Zhaopin',
+        url: 'https://www.zhaopin.com/',
+        logo: 
'https://fecdn5.zhaopin.cn/www/assets/zhaopin.4659478df1ec9a2e6ed76997a64884f6.png'
+    },
+    {
+        name: 'Onde',
+        url: 'https://onde.app/',
+        logo: 
'https://pbs.twimg.com/profile_images/1142024893229346818/JlCmThRZ_200x200.png',
+    },
+    {
+        name: 'Overstock',
+        url: 'https://www.overstock.com/',
+        logo: 'https://ak1.ostkcdn.com/img/mxc/OSTK_MAIN_LOGO_20181127KCH.jpg'
+    },
+    {
+        name: 'Ndustrial.io',
+        url: 'https://www.ndustrial.io/',
+        logo: 
'https://images.squarespace-cdn.com/content/v1/56df41f2f699bb94c7a2c6fc/1552657060081-WX86GJXHX7UK81RGE6YU/ke17ZwdGBToddI8pDm48kKCofG1A85AnHnyK5g0bGkJZw-zPPgdn4jUwVcJE1ZvWQUxwkmyExglNqGp0IvTJZUJFbgE-7XRK3dMEBRBhUpzRPjxD400fzchYtVcY_asIzZyz67rHxPkx39rBmDbrxrXjNbFEDrPRRKbjQDhrWWQ/ndustrial.png'
+    },
+    {
+        name: 'Nutanix',
+        url: 'https://www.nutanix.com/',
+        logo: 'https://www.zuora.com/wp-content/uploads/2017/05/nutanix.png'
+    },
+    {
+        name: 'The Hut Group',
+        url: 'https://www.thg.com',
+        logo: 
'https://s3-eu-west-1.amazonaws.com/thehutgroup-uploads-test/app/uploads/2016/10/THG.jpg'
+    },
+    {
+        name: 'ProxyClick',
+        url: 'https://www.proxyclick.com/',
+        logo: 
'https://www.proxyclick.com/hubfs/assets/images/logo-positive.svg'
+    },
+    {
+        name: 'Toast',
+        url: 'https://toasttab.com',
+        logo: 'https://cdn2.hubspot.net/hubfs/412971/toast-restaurant-pos.png'
+    },
+    {
+        name: 'Quantel AI',
+        url: 'http://quantel.ai/',
+        logo: 'http://quantel.ai/wp-content/uploads/2019/02/Quantel.png'
+    },
+    {
+        name: 'Streamlio',
+        url: 'https://streaml.io/',
+        logo: 'https://streaml.io/media/logo/Streamlio-Logo.svg'
+    },
+    {
+        name: 'Stream Native',
+        url: 'https://streamnative.io/',
+        logo: 'https://streamnative.io/images/logo.png'
+    },
+    {
+        name: 'EMQ',
+        url: 'https://www.emqx.io/',
+        logo: 'https://www.emqx.io/static/img/logo.svg'
+    },
+    {
+        name: 'Tencent',
+        url: 'https://www.tencent.com',
+        logo: 
'http://pluspng.com/img-png/tencent-png-tencent-logo-logotype-emblem-2-7537.png'
+    },
+    {
+        name: 'Comcast',
+        url: 'https://corporate.comcast.com/',
+        logo: 
'https://corporate.comcast.com/resources/corporate/assets/images/svg/logo-desktop.svg'
+    },
+    {
+        name: 'China Mobile',
+        url: 'https://www.chinamobileltd.com/',
+        logo: 'https://www.chinamobileltd.com/en/images/global/logo.svg'
+    },
+    {
+        name: 'VipKid',
+        url: 'https://t.vipkid.com.cn/',
+        logo: 
'https://s.vipkidstatic.com/fe-static/teacher/mkt-pc/img/e74f189.svg'
+    },
+    {
+        name: 'IoTium',
+        url: 'https://www.iotium.io/',
+        logo: 
'https://www.iotium.io/site/wp-content/uploads/2018/04/IoTium-logo.jpg'
+    },
+    {
+        name: 'One Click Retail',
+        url: 'https://oneclickretail.com/',
+        logo: 
'https://oneclickretail.com/wp-content/uploads/2018/08/colored_logo-1.png'
+    },
+    {
+        name: 'Tuya',
+        url: 'https://en.tuya.com/',
+        logo: 'https://static1.tuyaus.com/static/portal_intl/img/e25eefa.png'
+    },
+    {
+        name: 'China Telecom',
+        url: 'https://www.chinatelecom-h.com/',
+        logo: 'https://www.chinatelecom-h.com/en/images/global/logo.png'
+    },
+    {
+        name: 'Kafkaesque',
+        url: 'https://kafkaesque.io/', 
+        logo: 
'https://kafkaesque.io/wp-content/uploads/2019/04/color_logo_with_background.svg'
+    },
+].sort((a, b) => (a.name > b.name) ? 1 : -1);
diff --git a/site2/website/pages/en/powered-by.js 
b/site2/website/pages/en/powered-by.js
new file mode 100644
index 0000000..4326a3f
--- /dev/null
+++ b/site2/website/pages/en/powered-by.js
@@ -0,0 +1,51 @@
+
+
+const React = require('react');
+
+const CompLibrary = require('../../core/CompLibrary.js');
+const Container = CompLibrary.Container;
+const MarkdownBlock = CompLibrary.MarkdownBlock; /* Used to read markdown */
+const GridBlock = CompLibrary.GridBlock;
+
+const CWD = process.cwd();
+
+const translate = require('../../server/translate.js').translate;
+
+const siteConfig = require(`${CWD}/siteConfig.js`);
+const users = require(`${CWD}/data/users.js`)
+
+class Users extends React.Component {
+  render() {
+    let language = this.props.language || '';
+
+
+    return (
+      <div className="docMainWrapper wrapper">
+        <Container className="mainContainer documentContainer postContainer">
+          <div className="post">
+            <header className="postHeader">
+              <h1><translate>Companies using or contributing to Apache 
Pulsar</translate></h1>
+              <hr />
+            </header>
+
+            <div class="logo-wrapper">
+                {
+
+                    users.map(
+                  c => (
+                    <div class="logo-box">
+                         <a href={c.url} title={c.name} target="_blank">
+                            <img src={c.logo} alt={c.name} 
class={c.logo.endsWith('.svg') ? 'logo-svg' : ''} />
+                        </a>
+                    </div>
+                  )
+                )}
+              </div>
+          </div>
+        </Container>
+      </div>
+    );
+  }
+}
+
+module.exports = Users;
diff --git a/site2/website/static/css/custom.css 
b/site2/website/static/css/custom.css
index 5a74501..14290c4 100644
--- a/site2/website/static/css/custom.css
+++ b/site2/website/static/css/custom.css
@@ -38,9 +38,9 @@
   color: #188fff;
 }
 
-.navigationSlider .slidingNav ul li.siteNavGroupActive a, 
-.navigationSlider .slidingNav ul li.siteNavItemActive a, 
-.navigationSlider .slidingNav ul li a:focus, 
+.navigationSlider .slidingNav ul li.siteNavGroupActive a,
+.navigationSlider .slidingNav ul li.siteNavItemActive a,
+.navigationSlider .slidingNav ul li a:focus,
 .navigationSlider .slidingNav ul li a:hover {
   background: white;
   color: #188fff;
@@ -99,3 +99,36 @@
 }
 
 
+.logo-wrapper {
+  display: grid;
+  grid-template-columns: 250px 250px 250px 250px;
+  grid-gap: 30px;
+  /* background-color: #fff; */
+  /* color: #444; */
+  /* border: dashed red 1px; */
+  /* align-items: center; */
+  justify-content: center;
+}
+
+.logo-box {
+  /* background-color: #fafafa; */
+  /* color: #fff; */
+  border-radius: 5px;
+  padding: 20px;
+  font-size: 150%;
+  /* border: dashed blue 1px; */
+  height: 120px;
+  display: flex;
+  align-items: center;
+  justify-content: center;
+
+}
+
+.logo-box img {
+  max-height: 80px;
+  /* border: dashed green 1px; */
+}
+
+.logo-svg {
+  min-width: 200px;
+}

Reply via email to