diff --git a/src/App.js b/src/App.js
index 7608ffc..19a2677 100644
--- a/src/App.js
+++ b/src/App.js
@@ -3,12 +3,13 @@ import styled, { createGlobalStyle } from 'styled-components'
import { useDeferredState } from './hooks/state'
import { CardHolder } from './components/Card'
import GithubCard from './components/GithubCard'
+import DomainCard from './components/DomainCard'
+import HomebrewCard from './components/HomebrewCard'
import TwitterCard from './components/TwitterCard'
+import SlackCard from './components/SlackCard'
import NpmCard from './components/NpmCard'
import JsOrgCard from './components/JsOrgCard'
-import HomebrewCard from './components/HomebrewCard'
import PypiCard from './components/PypiCard'
-import DomainCard from './components/DomainCard'
import './App.css'
const GlobalStyle = createGlobalStyle`
@@ -45,9 +46,10 @@ export default function App() {
Result for {query}
-
+
+
diff --git a/src/components/SlackCard.js b/src/components/SlackCard.js
new file mode 100644
index 0000000..c054303
--- /dev/null
+++ b/src/components/SlackCard.js
@@ -0,0 +1,18 @@
+import React from 'react'
+import { Card, CardTitle, DedicatedAvailability } from './Card'
+import { FaSlack } from 'react-icons/fa'
+
+export default function SlackCard({ name }) {
+ return (
+
+ Slack
+ }
+ />
+
+ )
+}
diff --git a/src/services/slack.js b/src/services/slack.js
new file mode 100644
index 0000000..cb23e31
--- /dev/null
+++ b/src/services/slack.js
@@ -0,0 +1,31 @@
+const fetch = require('isomorphic-unfetch')
+
+async function getAvailability(name) {
+ try {
+ const response = await fetch(
+ `https://${encodeURIComponent(name)}.slack.com`
+ )
+ return response.status !== 200
+ } catch (err) {
+ if (err.code === 'ENOTFOUND') {
+ return true
+ } else {
+ throw new Error(err.message)
+ }
+ }
+}
+
+module.exports = async (req, res) => {
+ const name = req.query.name
+
+ if (!name) {
+ return res.status(400).json({ error: 'no query given' })
+ }
+
+ try {
+ const availability = await getAvailability(name)
+ res.json({ availability })
+ } catch (err) {
+ res.status(400).json({ error: err.message })
+ }
+}