---
title: 'AppExpress 🚀'
excerpt: 'Simplify routing in Appwrite Functions with an Express-style framework.'
date: 2024-04-26
categories: appwrite, open-source, web
featureImage: '/images/appexpress.webp'

prev:
  text: 'Appwrite + Nginx + SSL on Custom Domains'
  link: '/blog/appwrite-nginx-ssl-on-custom-domains'

next:
  text: 'Moving to VitePress'
  link: '/blog/moving-to-vitepress'
---

The new gen. functions on Appwrite support routes and headers and so many things, enhancing the flexibility and
capabilities for developers. However, routing wasn't straightforward, as it required relying on multiple `if`/`else` or
`switch` statements.

Recognising this, I present to you – **`AppExpress`** (Appwrite + Express.js) for Appwrite Functions. Functions have
always
been a powerful aspect of Appwrite, and with AppExpress, they just got even better.

I've worked enough with Express and hence I feel it's pretty easy & straightforward! So I created AppExpress with the
same API logic.

AppExpress features –

* Middlewares
* Direct Navigation,
* Router based Navigation,
* Minimal DI support,
* and ofc. Optimal Performance

Here's a simple example –

```javascript
// import AppExpress
import AppExpress from '@itznotabug/appexpress';

// create a new instance
const express = new AppExpress();

// create a `get` handler for path `/`
express.get('/', (_, response) => {
    response.send('Welcome to AppExpress!');
});

// attach to the appwrite function entrypoint
export default async (context) => await express.attach(context);
```

Checkout the [**repository**](https://github.com/ItzNotABug/appexpress) for more info. on how to benefit the most out of
_AppExpress_!

Make sure to also check the function directory to see a working example logic. Here's a live action as
well – https://appexpress.appwrite.global.

If you like the project, make sure to ⭐️ it on GitHub!

---

Update: So `AppExpress` was featured on Appwrite's official YouTube channel & was explained by Dennis Ivy, take a look –

<YoutubeViewer videoId="_YMw268j2IU" />