Code Monkey home page Code Monkey logo

naarad's Introduction

Contributors Forks Stargazers Issues MIT License Wiki


image

Naarad

Self-hosted ntfy server, delivering notifications to KGPians
Website · Request Feature / Report Bug

Table of Contents

About The Project

Narada (Sanskrit: नारद, IAST: Nārada), or Narada Muni, is a sage-divinity, famous in Hindu traditions as a travelling musician and storyteller, who carries news and enlightening wisdom (source). Our naarad serves news (notices) to the KGP community. It is a self-hosted ntfy.sh instance with custom configuration. It is protected by heimdall, allowing access only to KGPians.
Following are the features enabled in this ntfy instance (refer server.yml):

  • Message Caching
  • Attachments
  • User based authentication
  • Keep Alive
  • Web Interface
  • Webpush notifications
  • Logging
  • Login/Signup
  • iOS Push Notifications
  • Rate Limiting

Custom User Registration

To make the user registration process as seamless as possible we have implemented a custom logic (frontend & backend). The frontend is hosted via github pages with the url - https://naarad-signup.metakgp.org, mapped to https://naarad.metakgp.org/signup. The logic is as follows:

  • User must be authenticated via heimdall
  • Now the magic happens in the backend and registers the user with:
    • username: Taken from their institute email
    • password: Auto generated
  • The credentials are sent to their institute email

Tip

To understand the full process of accessing the service, refer Subscription Instruction guide.

(back to top)

Getting Started

To set up a local instance of the application, follow the steps below.

Prerequisites

The following dependencies are required to be installed for the project to function properly:

(back to top)

Deployment

Now that the environment has been set up and configured to properly compile and run the project, the next step is to install and configure the project locally on your system.

  1. Clone the repository
    git clone https://github.com/metakgp/naarad.git
  2. Copy .env.example as .env and fill in the required values
  3. Build the docker container
    sudo docker compose build
  4. Start the container
    sudo docker compose up -d
  5. The project will be locally deployed at http://localhost:8000/

(back to top)

Contact

📫 Metakgp - Metakgp's slack invite Metakgp's email metakgp's Facebook metakgp's LinkedIn metakgp's Twitter metakgp's Instagram

Maintainer(s)

The currently active maintainer(s) of this project.

Creator(s)

Honoring the original creator(s) and ideator(s) of this project.

(back to top)

Additional documentation

(back to top)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.