Skip to content

Latest commit

 

History

18 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Newsletter Portal

An AI-powered email newsletter administration system that lets content curators write, format, edit, schedule, and send newsletters. It provides analytics, subscriber segmentation, and recipient unsubscribe workflows.

Directory Structure

  • frontend/: Next.js (React) administration interface and public subscriber pages.
  • backend/: FastAPI (Python) web server containing business logic, database migrations, email dispatch, and LLM integrations.
  • docs/: Detailed project design specs, including schema diagrams, deployment, and API contracts.

Getting Started

Prerequisites

  • Node.js 18+
  • Python 3.10+
  • SQLite or PostgreSQL

Frontend Setup

  1. Change directory to frontend:
    cd frontend
  2. Install dependencies:
    npm install
  3. Set up environment:
    cp .env.local.example .env.local
  4. Start dev server:
    npm run dev

Backend Setup

  1. Change directory to backend:
    cd backend
  2. Create virtual environment:
    python -m venv .venv
    source .venv/bin/activate  # On Windows: .venv\Scripts\activate
  3. Install dependencies:
    pip install -r requirements.txt
  4. Set up environment:
    cp .env.example .env
  5. Run the server:
    python -m uvicorn app.main:app --reload

Mock login

The backend seeds a default admin user on startup if one does not already exist.

  • Email: curator@company.com
  • Password: securepassword123

The frontend login UI currently uses mock authentication and will later be replaced by Microsoft Entra ID.

Detailed Documentation

Refer to files in the docs/ directory:

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages