Skip to content

codingtenshi/website

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

AsyncAPI Banner and Logo


All Contributors

Netlify Status

Overview

This repository contains the sources of AsyncAPI website:

Requirements

Use the following tools to set up the project:

Usage

Install dependencies

To install all dependencies, run this command:

npm install

Develop

Launch the development server with the hot reloading functionality that allows any change in files to be immediately visible in the browser. Use this command:

npm run dev

You can access the live development server at localhost:3000.

Compose a new blog post

To bootstrap a new post, run this command:

npm run write:blog

Follow the interactive prompt to generate a post with pre-filled front matter.

Spin up Gitpod codespace

In order to prepare and spin up a Gitpod dev environment for our project, we configured our workspace through a .gitpod.yml file.

To spin up a Gitpod codespace, go to http://gitpod.io/#https://github.com/asyncapi/website.

Build

To build a production-ready website, run the following command:

npm run build

Generated files of the website go to the .next folder.

JSON Schema definitions

All AsyncAPI JSON Schema definition files are being served within the /definitions/<file> path. The content is being served from GH, in particular from https://github.com/asyncapi/spec-json-schemas/tree/master/schemas. This is possible thanks to the following:

  1. A Netlify Rewrite rule located in the netlify.toml file, which acts as proxy for all requests to the /definitions/<file> path, serving the content from GH without having an HTTP redirect.
  2. A Netlify Edge Function that modifies the Content-Type header of the rewrite response to become application/schema+json. This lets tooling, such as Hyperjump, to fetch the schemas directly from their URL.

Project structure

This repository has the following structure:

  ├── .github                     # Definitions of GitHub workflows, pull request and issue templates
  ├── components                  # Various generic components such as "Button", "Figure", etc.
  ├── config                      # Transformed static data to display on the pages such as blog posts etc.
  ├── context                     # Various React's contexts used in website
  ├── css                         # Various CSS files
  ├── lib                         # Various JS code for preparing static data to render in pages
  ├── pages                       # Website's pages source. It includes raw markdown files and React page templates.
  │    ├── about                  # Raw blog for /about page
  │    ├── blog                   # Blog posts
  │    └── docs                   # Blog for /docs/* pages
  ├── public                      # Data for site metadata and static blog such as images
  ├── scripts                     # Scripts used in the build and dev processes
  ├── next.config.js              # Next.js configuration file
  ├── netlify                     # Code that runs on Netlify
  │    ├── edge-functions         # Netlify Edge-Functions code
  ├── postcss.config.js           # PostCSS configuration file
  └── tailwind.config.js          # TailwindCSS configuration file

Contributors ✨

Thanks goes to these wonderful people (emoji key):

Fran Méndez
Fran Méndez

💻 📖 🐛 🎨 🚧 🚇 🤔 👀 📝
Lukasz Gornicki
Lukasz Gornicki

💻 📖 🐛 🎨 🚧 🚇 🤔 👀 📝
Maciej Urbańczyk
Maciej Urbańczyk

💻 📖 🐛 🎨 🚧 🚇 🤔 👀 📝
Alejandra Quetzalli
Alejandra Quetzalli

📖 👀 📢
Aayush Kumar Sahu
Aayush Kumar Sahu

💻 🐛 🎨
David Boyne
David Boyne

💻 🎨
Jesse Menning
Jesse Menning

📝
Dimitrios Dedoussis
Dimitrios Dedoussis

📝
Jonas Lagoni
Jonas Lagoni

📝 💻 👀
Sergio Moya
Sergio Moya

💻 📝 👀
Bodo Graumann
Bodo Graumann

📖
Damilola Randolph
Damilola Randolph

💻
Barbanio González
Barbanio González

📝 🤔
Hargun Kaur
Hargun Kaur

💻
Chris Eich
Chris Eich

👀
Simone Fumagalli
Simone Fumagalli

📖
Missy Turco
Missy Turco

💻 🎨 🤔 👀
Ritik Rawal
Ritik Rawal

💻
Akshat Nema
Akshat Nema

💻
David Pereira
David Pereira

💻 📖
Debajyoti Halder
Debajyoti Halder

💻
Juan A.
Juan A.

💻
Muhammad Rafly Andrianza
Muhammad Rafly Andrianza

📖
Harish
Harish

💻
Paul Goldsmith
Paul Goldsmith

💻 🐛
Tabah Baridule
Tabah Baridule

📖
Karuna Tata
Karuna Tata

️️️️♿️
Joseph Mawa
Joseph Mawa

👀
Viacheslav Turovskyi
Viacheslav Turovskyi

📖 💻
Helen Kosova
Helen Kosova

📖
V Thulisile Sibanda
V Thulisile Sibanda

📖
Manav Desai
Manav Desai

📖
Mohd Toukir Khan
Mohd Toukir Khan

📖
Anisat Akinbani
Anisat Akinbani

📖

This project follows the all-contributors specification. Contributions of any kind welcome!

About

AsyncAPI specification website

Resources

License

Code of conduct

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 98.5%
  • TypeScript 1.1%
  • Other 0.4%