stay in touch
Smart Cities, Technology's Boundaries + Surveillance Capitalism

Smart Cities, Boundaries of Tech + Surveillance Capitalism

Twitter Github Buy Cluster Buy cheaper with crypto

Smart Cities, Boundaries of Tech + Surveillance Capitalism

How does the technology that we use impact our day-to-day lives and the worlds that we live within


Cluster is the best way to make your Notion documentation beautiful. It's simple and straight-forward to setup and updating content is a breeze.

Gallery table block


To install Cluster you will need the following:

  • A computer
  • An internet connection
  • A Notion account
  • A Super account

Install Cluster

In your terminal, cd into any directory and run the install command:


Once the command has been run you’ll be able to purchase Cluster and start building your new site straight away on

🤘🏻 You're on the right track, keep it up.

Getting Started

To use Cluster, all you need to do is copy and paste the following code into your Super site settings.

<!-- Meta Descriptions -->
<meta name="description" content="SEO DESCRIPTION HERE">
<meta property="og:description" content="SEO DESCRIPTION HERE">
<!--- Theme stylesheet - Do edit or remove -->
<link rel="stylesheet" href=""/>
<!-- Insert any additional styles below -->

Customising Cluster's colours

To use add your own brand colour to Cluster, all you need to do is copy and paste the following code into your Super site CSS settings.

:root {
	--color-primary: #HEXCODEHERE !important;

⚠️ Please note: this is only an example notice

Embed Codepens

Environment Variables

Cluster has built-in support for loading environment variables into the browser and Functions. Loading environment variables into Node.js requires a small code snippet.

In development, Cluster will load environment variables from a file named .env.development. For builds, it will load from .env.production.

.env file could look like:


To load these into Node.js, add the following code snippet to the top of your cluster-config.js file:

require("dotenv").config({  path: `.env.${process.env.NODE_ENV}`,})

This loads process.env.CLUSTER_API_URL and process.env.API_KEY for use in cluster-*.js files and functions.

For example, when configuring a plugin in cluster-config.js:

	path: `.env.${process.env.NODE_ENV}`,

module.exports = {  
	plugins: [    
			resolve: `cluster`,      
			options: {        
				apiKey: process.env.API_KEY,      

Accessing Environment Variables in the browser.

By default, environment variables are only available in Node.js code and are not available in the browser as some variables should be kept secret and not exposed to anyone visiting the site.

To expose a variable in the browser, you must preface its name with CLUSTER_. So CLUSTER_API_URL will be available in browser code but API_KEY will not.

Variables are set when JavaScript is compiled so when the development server is started or you build your site.

import React, { useState, useEffect } from "react"
function App() {
  const [data, setData] = useState()
  useEffect(async () => {
    const result = await fetch(
    ).then(res => res.json())
  return (
      { => (
        <li key={}>
          <a href={user.url}>{}</a>
export default App

Add .env* files to .gitignore

Environment variable files should not be committed to Git as they often contain secrets which are not safe to add to Git. Instead, add .env.* to your .gitignore file and setup the environment variables manually locally.

Alright, what's next 🥳 Check out our design system example Let's go →