1.0.1 • Published 10 months ago

dynamooseauth v1.0.1

Weekly downloads
-
License
ISC
Repository
-
Last release
10 months ago

dynamooseauth

The dynamooseauth module provides easy-to-integrate user authentication for Node.js applications using DynamoDB with Dynamoose and Express. It supports basic operations like user registration and login with password hashing provided by bcryptjs.

Features

  • User Registration: Secure registration process with hashed passwords.
  • User Login: Authentication with password verification.
  • Easy Integration: Designed to be integrated with minimal setup.

Installation

Install dynamooseauth using npm:

npm install dynamooseauth

Or using yarn:

yarn add dynamooseauth

Usage

Below is an example of how to integrate the dynamooseauth module into an Express application.

Setup

First, ensure that your project has Express installed. Then, you can include the authentication routes provided by dynamooseauth:

const express = require('express');
const authRoutes = require('dynamooseauth');

const app = express();
app.use(express.json());
app.use('/api/users', authRoutes);

const PORT = process.env.PORT || 3000;
app.listen(PORT, () => {
    console.log(`Server running on port ${PORT}`);
});

API Endpoints

dynamooseauth provides the following endpoints:

  • POST /api/users/register: Register a new user.
    • Body: { "name": "username", "password": "password123" }
  • POST /api/users/login: Authenticate a user and log in.
    • Body: { "name": "username", "password": "password123" }

Configuration

Make sure to configure DynamoDB appropriately, especially when deploying to production. For local development, the dynamoose setup assumes DynamoDB is running at http://localhost:7000.

Contributions

Contributions are welcome! Please fork the repository and submit pull requests with any enhancements. Ensure you follow the existing code style and add unit tests for any new or changed functionality.

License

dynamooseauth is ISC licensed.

### Additional Notes

- **Code Snippets**: Code examples are key for users to understand how to use the module. Ensure that any provided code snippets are tested and working.
- **Configuration Details**: Include additional configuration details specific to your module, especially around environment settings and dependencies.
- **Contributing Guidelines**: If your project is open to contributions, detail the process for contributing, including coding standards, testing protocols, and how to submit pull requests.
- **Contact Information**: Optionally, provide a way for users to reach out with more questions or support needs, such as an email address or a link to GitHub issues.

This template should give your users all the information they need to get started using your module effectively and contribute to its development.
1.0.1

10 months ago

1.0.0

10 months ago