This project is a fullstack application built with a Svelte frontend and a Node.js backend.
- Framework: Svelte
- Runtime: Node.js
- bcrypt: Used for hashing user passwords.
- crypto: Used to generate session secret.
- dotenv: Used for environmental variables.
- express: Web framework for Node.js, used to build web applications and APIs.
- express-rate-limit: Middleware to limit repeated requests to server endpoints.
- express-session: Middleware for managing user sessions.
- mongodb: simple MongoDB setup.
- resend: used for email verification and password resets.
- socket.io: used to toggle dark/light mode for all connected users
- validator: used for Validating and sanitizing strings.
- Clone the repository:
git clone <repository-url>
- Install dependencies:
npm install
- Set up environment variables:
- Create a
.envfile in the root directory and add necessary environment variables.
- Create a
- Set up the database:
npm run database-create
- Start the development server:
npm run dev