@ztimson/momentum
TypeScript icon, indicating that this package has built-in type declarations

0.15.1 • Public • Published

Logo

Momentum

Server Development Platform

Version Pull Requests Issues



Table of Contents

About

Momentum is a self-hosted server development platform. What does that mean? Think something similar to Firebase but you are in full control of your data & services.

It was developed as a generic server backend for single page applications such as angular, react, svelte or vue. This enables rapid development of the client front-end application or website.

Features include:

  • WIP: Admin Panel
    • Use the web UI to manage server features while you build your front end
    • White labeled so it can use it as a content management system
    • View the source code for real examples of how to use the server API
  • Client Library
    • TypeScript, ESM & UMD compatible client library for native JavaScript environments
  • Authentication
    • Manage users & save user data
    • Custom password strength rules
    • Account validation & reset emails
    • User groups
    • Permissions for all modules
    • Custom permissions
    • Optionally allow public registration
  • Data
    • Generic collection/do`cument database accessible via REST
    • Granular collection & document level permissions
    • Metadata such as created & modified by is tracked
    • Uses MongoDB
  • Email
    • Supports SMTP
    • HTML email templates
    • Send emails using post requests
    • WIP: Handle newsletter subscriptions
    • WIP: Send newsletters via post request
  • File Storage
    • Upload files using file input field
    • Navigate storage via API
    • Automatically track metadata
    • Granular, file level, permissions
  • Static File Server
    • Host your single page application using Momentum for easy hosting
    • Volumize or extend the momentum docker image to include your static website in /app/public
    • Enable the single page application redirects with the environment variable: NOT_FOUND_REDIRECT=TRUE
  • Variables
    • Manage the server through variables which can be changed at runtime
    • Create & use custom variables for your application
    • Granular, variable level, permissions

Built With

Docker MongoDB Node TypeScript

Setup

Production

Prerequisites

Instructions

  1. Optional: Use momentum to host your static site
  2. Download the docker-compose file: curl -o momentum.yaml https://git.zakscode.com/ztimson/momentum/raw/branch/develop/docker-compose.yml
  3. Configure the Environment Variables inside the docker-compose
  4. Start the server with: docker-compose up -f momentum.yaml
  5. Open http://localhost:80

Development

Prerequisites

Instructions

  1. Install the dependencies: npm install
  2. Start MongoDB: docker-compose up db
  3. Start the dev server: npm run start
  4. Open http://localhost:3000

License

Copyright © 2023 Zakary Timson | Available under MIT Licensing

See the license for more information.

Readme

Keywords

Package Sidebar

Install

npm i @ztimson/momentum

Weekly Downloads

16

Version

0.15.1

License

none

Unpacked Size

400 kB

Total Files

36

Last publish

Collaborators

  • ztimson