https://github.com/simorega/ultrapad
A simplified and user friendly online notepad with tons of cool features and a cutting edge design
https://github.com/simorega/ultrapad
electronjs java mongodb notes notes-application pwa react reactjs spring-boot
Last synced: 9 days ago
JSON representation
A simplified and user friendly online notepad with tons of cool features and a cutting edge design
- Host: GitHub
- URL: https://github.com/simorega/ultrapad
- Owner: SimoRega
- Created: 2024-08-20T07:24:24.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2025-01-16T11:09:42.000Z (about 1 year ago)
- Last Synced: 2025-06-07T22:41:26.946Z (9 months ago)
- Topics: electronjs, java, mongodb, notes, notes-application, pwa, react, reactjs, spring-boot
- Language: JavaScript
- Homepage:
- Size: 30.3 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# UltraPad
## Descrizione
UltraPad è un'applicazione web progettata per offrire un'esperienza avanzata nella gestione di note, checklist, diari e documenti. Ideale per studenti, lavoratori e utenti casuali, la piattaforma consente di creare, visualizzare, modificare e condividere note in qualsiasi momento e da qualsiasi dispositivo.
L'obiettivo principale è fornire uno strumento moderno, semplice da usare, con funzionalità di condivisione avanzate e il supporto per modifiche collaborative.
## Funzionalità
Gestione delle note personalizzate:
- Appunti semplici.
- Checklist.
- Diario.
Lettura e modifica di file:
- Supporto per caricamento e modifica di documenti direttamente nell'app.
Account personali:
- Registrazione e login sicuro tramite email e password.
- Supporto OAuth2 (es. Google, Facebook, ecc.).
Condivisione:
- Condividi le note con altri utenti registrati.
- Sincronizzazione tra dispositivi.
PWA ready (in futuro):
- Accesso offline e installazione su dispositivi mobili.
Sicurezza:
- Autenticazione basata su JWT (JSON Web Tokens).
- Autorizzazione per limitare l'accesso alle risorse.
## Stack Tecnologico
Frontend
- Linguaggio: JavaScript (ES6+)
- Framework: React.js
- Stato globale: Redux Toolkit
- Chiamate API: Axios
- UI Design:
- Tailwind CSS: Per uno stile modulare e moderno.
- Quill.js: Per l'editor avanzato di testo.
Backend
- Linguaggio: Java
- Framework: Spring Boot
- Autenticazione e Sicurezza:
- Spring Security con JWT.
- OAuth2 per login tramite provider esterni.
- Database: MongoDB: Database NoSQL flessibile e scalabile.
- Build Tool: Maven
Integrazioni e Altre Tecnologie
- Service Worker e PWA: Workbox (futuro sviluppo).
- Test:
- Backend: JUnit e Mockito per test unitari e di integrazione.
- Frontend: Jest e React Testing Library per test sui componenti React.
- End-to-End (E2E): Cypress.
## Requisiti di sistema
- Backend:
- Java 17 o superiore.
- Maven 3.8+.
- MongoDB Community Server.
- Frontend:
- Node.js 16+.
- npm o yarn.
## Roadmap
- Configurazione base di Spring Boot con MongoDB.
- Autenticazione JWT e OAuth2.
- Frontend React con Redux Toolkit.
- Supporto PWA (Workbox).
- Implementazione offline-first (IndexedDB).
- Condivisione avanzata tra utenti.
## Contributi
Contributi, bug report e suggerimenti sono i benvenuti! Per contribuire:
Fai un fork del repository.
Crea un branch per la tua feature/bugfix:
git checkout -b feature/nome-feature
Invia una pull request.