Skip to content

Latest commit

 

History

1 Commit

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Neighborly Notes

Neighborly Notes is a small "neighborhood notes club" where users can create profiles, meet each other, and keep personal notes.

Features

  • User registration and login with JWT authentication.
  • Password reset via a codeword.
  • Public user profiles with avatars and bios.
  • Private, secret notes for each user.
  • Admin dashboard for user management.

Tech Stack

  • Frontend: Vue 3, Vite, TypeScript, Pinia, Vue Router, Axios, Tailwind CSS
  • Backend: Python 3.12, Flask, SQLAlchemy, Alembic, Pydantic, Gunicorn
  • Database: PostgreSQL 15
  • Containerization: Docker, Docker Compose

Getting Started

Prerequisites

  • Docker and Docker Compose installed on your machine.

Installation

  1. Clone the repository:

    git clone https://github.com/your-username/neighborly-notes.git
    cd neighborly-notes
  2. Create a .env file in the root of the neighborly-notes directory by copying the example file:

    cp .env.example .env

    You can customize the values in this .env file if you wish.

  3. Build and run the application using Docker Compose:

    docker compose up --build

The application will be available at http://localhost:8080.

Test Accounts

The database is seeded with the following test accounts:

  • Admin:
    • Username: caretaker
    • Password: caretaker123
  • Users:
    • Username: alice, Password: alice123
    • Username: bob, Password: bob123

SBOM Generation

This project includes tooling to generate a Software Bill of Materials (SBOM) for both the frontend and backend components using the CycloneDX standard.

The generation process is containerized to ensure consistency. Dedicated Dockerfiles (backend/Dockerfile.sbom and frontend/Dockerfile.sbom) are provided for this purpose.

To generate the SBOM files, run the following commands from the root of the neighborly-notes directory:

Backend SBOM

docker build -t backend-sbom-temp -f ./backend/Dockerfile.sbom ./backend && docker run --rm -v "$(pwd)/sbom:/sbom" backend-sbom-temp

Frontend SBOM

docker build -t frontend-sbom-temp -f ./frontend/Dockerfile.sbom ./frontend && docker run --rm -v "$(pwd)/sbom:/sbom" frontend-sbom-temp

The generated files (backend.cyclonedx.json and frontend.cyclonedx.json) will be placed in the /sbom directory.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages