All Projects → apache → apisix-website

apache / apisix-website

Licence: Apache-2.0 license
Apache APISIX Website

Programming Languages

typescript
32286 projects
javascript
184084 projects - #8 most used programming language
SCSS
7915 projects
CSS
56736 projects
GLSL
2045 projects
Dockerfile
14818 projects

Projects that are alternatives of or similar to apisix-website

Apisix
The Cloud-Native API Gateway
Stars: ✭ 7,920 (+9677.78%)
Mutual labels:  api-management, luajit, cloud-native, apisix
Apioak
Full Lifecycle Management API Gateway.
Stars: ✭ 335 (+313.58%)
Mutual labels:  luajit, cloud-native, service-mesh
Motan Openresty
A cross-language RPC framework for rapid development of high performance distributed services based on OpenResty.
Stars: ✭ 117 (+44.44%)
Mutual labels:  luajit, cloud-native, service-mesh
Kong
🦍 The Cloud-Native API Gateway
Stars: ✭ 30,838 (+37971.6%)
Mutual labels:  api-management, luajit, cloud-native
Coolstore Microservices
A full-stack .NET microservices build on Dapr and Tye
Stars: ✭ 1,903 (+2249.38%)
Mutual labels:  cloud-native, service-mesh
Krakend Ce
KrakenD Community Edition. Make your binary of KrakenD API Gateway
Stars: ✭ 245 (+202.47%)
Mutual labels:  cloud-native, service-mesh
Microgateway
Security and management for microservices, with rich functionalities of the CA API Gateway family
Stars: ✭ 35 (-56.79%)
Mutual labels:  api-management, service-mesh
Ambassador
open source Kubernetes-native API gateway for microservices built on the Envoy Proxy
Stars: ✭ 3,583 (+4323.46%)
Mutual labels:  api-management, cloud-native
Kubernetes Handbook
Kubernetes中文指南/云原生应用架构实践手册 - https://jimmysong.io/kubernetes-handbook
Stars: ✭ 9,420 (+11529.63%)
Mutual labels:  cloud-native, service-mesh
Gloo
The Feature-rich, Kubernetes-native, Next-Generation API Gateway Built on Envoy
Stars: ✭ 3,219 (+3874.07%)
Mutual labels:  api-management, cloud-native
Istio
Connect, secure, control, and observe services.
Stars: ✭ 28,970 (+35665.43%)
Mutual labels:  api-management, service-mesh
Rainbond
Cloud-native and easy-to-use application management platform | 云原生且易用的应用管理平台
Stars: ✭ 2,871 (+3444.44%)
Mutual labels:  cloud-native, service-mesh
Kuma
🐻 The Universal Service Mesh. CNCF Sandbox Project.
Stars: ✭ 2,516 (+3006.17%)
Mutual labels:  cloud-native, service-mesh
Api Umbrella
Open source API management platform
Stars: ✭ 1,735 (+2041.98%)
Mutual labels:  api-management, luajit
Apisix Docker
the docker for Apache APISIX
Stars: ✭ 119 (+46.91%)
Mutual labels:  api-management, cloud-native
meshery-adapter-library
Library of common functionality for Meshery Adapters
Stars: ✭ 20 (-75.31%)
Mutual labels:  cloud-native, service-mesh
Linkerd
Old repo for Linkerd 1.x. See the linkerd2 repo for Linkerd 2.x.
Stars: ✭ 5,382 (+6544.44%)
Mutual labels:  cloud-native, service-mesh
Linkerd2
Ultralight, security-first service mesh for Kubernetes. Main repo for Linkerd 2.x.
Stars: ✭ 7,887 (+9637.04%)
Mutual labels:  cloud-native, service-mesh
service-mesh-performance
Standardizing Service Mesh Value Measurement
Stars: ✭ 234 (+188.89%)
Mutual labels:  cloud-native, service-mesh
meshery
Meshery, the cloud native manager
Stars: ✭ 1,587 (+1859.26%)
Mutual labels:  cloud-native, service-mesh

Apache APISIX® Website

The website of Apache APISIX®

A cloud-native microservices API Gateway


Getting Started

If you want to write a blog or fix some blog-related issues, please read Apache APISIX Blog Contributing Guide first.

Pre-requisites

First, you need to install Git.

Then you should fork this repo, and clone your fork:

# clone your fork repo
git clone [email protected]:${your GitHub name}/apisix-website.git

# add this repo as upstream
git remote add upstream https://github.com/apache/apisix-website.git

# default dir should be apisix-website
cd apisix-website

Getting started in a Dev Container

If you are using VS Code, Docker, and Remote - Containers plugin, you can use this to get started quickly.

No, but want to try this way? Please read Developing inside a Container#Installation.

Then, start VS Code, run the Remote-Containers: Open Folder in Container... command.

Tip: For details on how to do this, see the documentation Developing inside a Container#Quick Start.

After the initialization, you can skip the preparation part of the commands below and read the rest directly.

Getting started in the conventional way

First, you need to install Node.js, Yarn.

Tip: Since the installation method may change, we recommend that you check the installation method on the corresponding official website. If you encounter any problems, please feel free to create an issue.

Then you can read the commands below.

Commands

When you find that some commands do not run, or cannot be found, look at the package.json file.

This may be because the project is being updated quickly, but the corresponding developer did not find the time to update the corresponding documentation.

Preparation

Except for the following commands that you need to run after downloading the project for the first time, you can try running them again when you encounter any problems.

# 1. Install deps
yarn

# 2. Prepare necessary data
yarn prepare-data

# Tip.
# The `yarn prepare-data` command contains the following three commands
# If necessary, you can run any of the following commands individually
yarn sync-doc # Sync all project documents
yarn generate-repos-info # Generate repository information for each project
yarn generate-picked-posts # Generate frontmatter information for featured blogs

If you get a 403 error Rate Limit Exceeded from GitHub, that means you have hit the GitHub API rate limit. the project needs your personal access token to unlimit it.

If you don't already have one, create one, and run below command in your terminal (no scope to your personal data is needed)

export GITHUB_TOKEN=${your token}

Previewing documents, Developing

When you modify a document, blog, or page code, the preview in development mode is the fastest.

# Start docs part
yarn start:doc

# Tip.
# in dev, only English docs will be built
# it's a feature of docusaurus
# if you want to specify the locale,
# for example, Chinese, your should run
yarn start:doc --locale zh

# Start English Blog
yarn start:blog:en

# Start Chinese Blog
yarn start:blog:zh

# Start general docs, other pages part
yarn start:website

Building

When you want to build or preview a site that looks the same as it does online, run the following commands.

# Since the local environment is slightly different from the online one,
# you must add the environment variable `preview`
preview=true yarn build
# or
yarn build:preview

# The above commands only build the site,
# to preview it locally you need the following commands
yarn serve

# You can also build and preview each part individually,
# just like in development mode
preview=true yarn build:doc && yarn serve:doc
preview=true yarn build:blog:en && yarn serve:blog:en
preview=true yarn build:blog:zh && yarn serve:blog:zh
preview=true yarn build:website && yarn serve:website

Next, you can modify the documentation or code, commit it and push it to GitHub when you're done. If you're not familiar with this, you can read GitHub flow first.

Advance Guide

If you only want to modify the *.md files, the above guide may be sufficient.

But if you need to develop, please read the guide below.

Project Structure

Omitted some documents that may not be important.

apisix-website
├── .github
│   └── workflows # for GitHub CI, with steps to actually build the site
├── .husky # git hooks, currently only pre-commit is used
├── scripts # scripts to help build the site
├── blog
│   ├── en
│   └── zh
├── config
├── doc
└── website
    ├── articles
    ├── docs
    │   └── general # https://apisix.apache.org/docs/general/join
    ├── i18n
    │   └── zh # chinese content
    │       ├── docusaurus-plugin-content-blog # blog
    │       ├── docusaurus-plugin-content-docs # general
    │       └── docusaurus-theme-classic # translations of navbar and footer
    ├── src
    │   ├── clientModules # docusaurus feature
    │   ├── hooks # react hooks
    │   ├── pages
    │   ├── shaders
    │   └── theme # swizzled any Docs/Blog component
    ├── static
    └── docusaurus.config.js

Acknowledge

Special thanks to Docusaurus.

License

Apache License 2.0

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].