npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

zoapp-backend

v0.24.11

Published

Zoapp Backend

Downloads

41

Readme

zoapp-backend

Build
Status Codacy
Badge GitHub
license npm
version

JavaScript ES7 framework to build cool backend applications.

Getting started

Prerequisites

First of all, make sure you have Node 8.x and Yarn installed.

You will also need MariaDB 10.2 or mysql 5.7.

Usage

TODO: write this section

Contributing

Please, see the CONTRIBUTING file.

Versioning/Releases

This project adheres to Semantic Versioning 2.0.0. The different versions of this project can be found here: https://github.com/Zoapp/backend/releases. In short, the version number is made of three digits, separated with a dot: x.y.z:

  • x is the number on the left and represents the MAJOR version number. This number should be increased (by one) when a backward incompatible change is added in the project, hence this number does not often change. When you update this number, both the MINOR and PATCH numbers should be reset to 0;
  • y (middle number) represents the MINOR version number. This number should be increased (by one) every time new features are added to the project. When you update this number, the PATCH number should be reset to 0;
  • z (right number) represents the PATCH version number. This number should be increased (by one) every time bug fixes are added to the project. If you have both new features and bug fixes, update the MINOR version.

Release Process (How to create a new release/version?)

:warning: Important: please keep the CHANGELOG file up to date before creating a new release.

In order to create a new release, you can use npm version . Assuming we are at version 0.3.2 and we want to release 0.3.3. Locally, in the master branch, you can run the following command:

$ npm version patch

This command performs the following tasks:

  • bump (update) the version number in package.json
  • create a new commit
  • create a git tag

You can use npm version minor to release 0.4.0 from 0.3.1 (it bumps the second number and resets the last number). You can also use npm version major to release 1.0.0 from 0.3.1. See the previous section about semantic versioning.

Then, you can push to the repository:

$ git push origin master --tag

The tag will be pushed to GitHub and Travis CI will trigger the automatic release process setup on this project (see: .travis.yml).

How to create "development" releases?

Sometimes, you want to create a new release because this project is a dependency of another project you are working on and you want to try the changes you have just made. In that case, it is not recommended to release a new version because you are likely working in a (feature) branch and you should always release new versions from the master branch.

Instead, you can publish a "dev" package locally as described below:

  1. update the version in package.json without commiting it, it is only used to create a unique package, so you can bump the patch number (z in x.y.z)

  2. create the "dev" package:

    $ yarn distribute:dev

That's it! You have a .tgz package in the dist/ folder (e.g., zrmc-v0.7.1.tgz). Now you can add this package into your other project by running:

$ yarn add file:/path/to/your/backend/dist/zrmc-v0.7.1.tgz

When you are satisfied with the current state of your feature branch, undo the package.json version change and merge the branch into the master branch. Next, you can go to your master branch, getting the latest commits from GitHub (git pull) and follow the procedure "Release Process (How to create a new release/version?)" to release a "production" package.

In your other project, you can re-add your dependency with yarn but that time, you can directly use its name:

$ yarn add zrmc

Configuration

There is a default configuration that lies in src/defaultAppConfig.js. This default configuration can be overriden by passing a config object to the createZoapp function. It also can be overriden with environment variables like the following : To override global.database.host, inject the following env variable : ZOAPP__GLOBAL__DATABASE__HOST.

As a consequence, use _ rather than camelCase in config keys.

Config sources & priorities

  1. Environment vars starting with ZOAPP_
  2. Config in createZoapp(config, ...)
  3. Fallback to ./src/defaultAppConfig.js

Contributor Code of Conduct

Please note that this project is released with a Contributor Code of Conduct. By participating in this project you agree to abide by its terms. See CODE_OF_CONDUCT file.

License

zoapp-backend is released under the MIT License. See the bundled LICENSE file for details.