Skip to content

The repo manages Espy's daily music mailing system, delivering aggregated reviews from sites like Pitchfork and The Guardian. It includes personalized album suggestions based on user moods, organized with Google's PaLM API, and presented in readable text using RegEx.

Notifications You must be signed in to change notification settings

thankyoufortherecongnitionchair/espy_backend

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 

Repository files navigation

Espy-Backend

It's a daily mailing list that sends users reviews scraped from across the internet, including popular websites like Pitchfork, Consequence of Sound, Guardian, etc. The Mail also contains albums suggested based on user moods, all arranged and compiled by Google's PaLM API and then parsed and converted to readable text using RegEx.

Table of Contents

Introduction

Welcome to the Espy project! This Node.js server serves as the backend for Espy, a mailing list. This Repo Contains the logic for the mailing system used for Espy. It's a daily mailing list that sends users reviews scraped from across the internet, including popular websites like Pitchfork, Consequence of Sound, Guardian, etc. The Mail also contains albums suggested based on user moods, all arranged and compiled by Google's PaLM API and then parsed and converted to readable text using RegEx. Palm API was also trained by me to make the outputs relevant and spread across the web, while also making the outputs as precise as possible to be the same every time a new answer is generated. This was extremely challenging and tuning the AI Model to answer with the same format but different contents was incredibly tough.

Features

  • Feature 1: Scrping the internet for review content using the very popular Puppeteer Node Package,
  • Feature 2: LLM generated mood-based album recommendation, sent to users daily,
  • Feature 3: secure mailing using serverless Firebase database, which removes the need to manage a complicated server. Instant mails are sent out almost effortlessly through the help of (backend as a service).
  • Feature 4: Regular expressions used to parse LLM outputs into HTML templates. an incredibly large amount of tuning done to the LLM model.

Getting Started

Follow these steps to get the project up and running on your local machine.

Prerequisites

Ensure you have the following software installed on your machine:

  • [Node.js]
  • [npm]
  • An editor such as VSCODE or any other
  • a valid mailing id, authorized by the SMTP provider such as Gmail
  • LLM credentials from PALM (google free LLM)

Installation

  1. Clone the repository

Configuration

  1. run npm i to install the several dependencies
  2. generate Palm API credentials and replace them with your .env file
  3. create a Firebase document named subscribers and attach it to your frontend of choice, just make sure emails can be read into arrays in this code
  4. once all has been setup, execute node index.js in cmd to enter the entry point. observe outputs in terminals and user mails respecively.

About

The repo manages Espy's daily music mailing system, delivering aggregated reviews from sites like Pitchfork and The Guardian. It includes personalized album suggestions based on user moods, organized with Google's PaLM API, and presented in readable text using RegEx.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published