npm package: @itznotabug/appexpress
Description: An `express.js` like framework for Appwrite Functions, enabling super-easy navigation!
Author: @itznotabug
Latest version: 1.8.0

# AppExpress <img src="rocket.png" width="30" style="vertical-align: middle;"/>

![GitHub stars](https://img.shields.io/github/stars/ItzNotABug/appexpress?style=flat)
![GitHub forks](https://img.shields.io/github/forks/ItzNotABug/appexpress?style=flat)
![GitHub issues](https://img.shields.io/github/issues/ItzNotABug/appexpress)
![GitHub pull requests](https://img.shields.io/github/issues-pr/ItzNotABug/appexpress)
![GitHub license](https://img.shields.io/github/license/ItzNotABug/appexpress)
![GitHub Release](https://img.shields.io/github/v/release/ItzNotABug/appexpress)
![Source CI](https://img.shields.io/github/actions/workflow/status/ItzNotABug/appexpress/source.yaml?label=source-build)
![Functions CI](https://img.shields.io/github/actions/workflow/status/ItzNotABug/appexpress/function.yaml?label=function-build)
![NPM Downloads](https://img.shields.io/npm/dm/@itznotabug/appexpress)
![Node.js](https://img.shields.io/badge/Node.js-brightgreen?style=flat&logo=node.js&logoColor=white)
![Appwrite](https://img.shields.io/badge/Appwrite-FD366E?style=flat&logo=appwrite&logoColor=white)

**AppExpress** is a lightweight framework, inspired by `express.js` and meticulously designed for Appwrite Functions. It
simplifies creating server-like functionalities through an intuitive API that simplifies routing, middleware
integration, and more.

> [!NOTE]
> **This package is compatible with Appwrite server version 1.6.x.**

### Documentation

For installation instructions and additional resources, please visit
the [Wiki Page](https://github.com/ItzNotABug/appexpress/wiki).

### Integrations

Checkout the [appexpress-essentials](https://github.com/itznotabug/appexpress-essentials) repository for middlewares,
view-engines and more.

### Live Action Demo

Discover AppExpress in action through a demo:

- [AppExpress](https://appexpress.appwrite.global)
- [All AppExpress Routes](https://appexpress.appwrite.global/routes)

### How to Contribute

Your contributions are valued, whether it's reporting issues or suggesting enhancements!

- #### Reporting Issues

  Encounter a bug or have a suggestion? Please file it via
  the [issue tracker](https://github.com/ItzNotABug/appexpress/issues).

- #### Submitting Pull Requests

  Want to make contributions? Here’s how you can do so effectively:

    1. **Fork the Repository & Create a Branch**
        - Fork the repo and start from a new branch.
        - Name your branch appropriately:
            - Bug fixes: `fix-issueNumber-description` (e.g., `fix-11-remove-excess-forward-slashes`)
            - Feature additions: `feat-issueNumber-description` (e.g., `feat-09-add-view-engine-support`)
            - Documentation tweaks: Clearly state the nature of your updates.

    2. **Develop & Test**
        - Implement your changes and ensure code quality by running `pnpm lint`.
        - Resolve any formatting issues with `pnpm format`.
        - For new features or refactoring, add and run tests using `pnpm build && pnpm tests`.

    3. **Open a Pull Request**
        - Ensure you're assigned to the issue before proceeding to PR.

### Support the Project

Give the project a ⭐️ to show your support!