Data Nexus Vault is a flexible tool that allows you to convert your device into a free, online database. You can turn it on or off anytime and interact with it using a web-based dashboard or a Python client.
- User Registration and Authentication: Secure user registration, email verification, and login functionality.
- Password Management: Password reset via email-based token verification.
- Data Storage: Store user-specific data in MongoDB collections.
- Data Retrieval: Retrieve user data using API keys.
- app.js: Main server file with all routes and functionalities.
- public: Contains HTML files for the web-based user interface.
- test.py: Python script to interact with the server through the CLI.
- README.md: Project documentation.
-
Clone the repository:
git clone https://github.com/your-username/data-nexus-vault.git cd data-nexus-vault
-
Install Node.js dependencies:
npm install
-
Install Python dependencies:
pip install requests
Create a .env
file in the root directory and include the following:
JWT_SECRET=your_secret_key
MONGODB_URI=your_mongodb_connection_string
EMAIL_APP_PASSWORD=your_email_password
Run the Node.js server:
node app.js
Visit http://localhost:5000
in your browser to access the dashboard.
Use the Python client (test.py
) for CLI-based interaction with the backend.
Run the Python client:
python test.py
- User Registration:
POST /auth/register
- Email Verification:
GET /auth/verify/:token
- Login:
POST /auth/login
- Password Reset Request:
POST /auth/reset-password-request
- Password Reset:
POST /auth/reset-password
- Retrieve User Data:
GET /retrieve-user-data
Feel free to contribute by opening issues or submitting pull requests.
This project is licensed under the MIT License.