# šØ NityaV1 š - Permanent Web Deployment Made Easy
<br>
_.--""--._
.' `.
/ O O \
| \ ^^ / |
\ `----' /
`. _______ .'
//_____\\
(( ____ ))
`-----'
**Tagline:** Effortlessly deploy your web apps to the Arweave permaweb.
<br>
[](https://www.npmjs.com/package/nitya)
[](https://github.com/Arpitpassi/NityaV1/blob/main/LICENSE)
[](https://www.javascript.com/)
[](https://expressjs.com/)
[](https://redis.io/)
[](https://aws.amazon.com/)
<br>
---
## š Feature Highlights āØ
* **Seamless Wallet Integration:** Connect your Arweave (Wander) or Ethereum/Polygon wallet for easy deployment.
* **Simplified Deployment Process:** Deploy your application with intuitive commands.
* **Automatic Deployment (Optional):** Set up automatic deployments on every git commit.
* **Pool-Based Deployments (for large files):** Leverage sponsor pools to deploy large projects efficiently. Minimizes AR funding requirements.
* **ARNS Support:** Deploy to your own custom ARNS domain.
* **Cross-Platform Compatibility:** Works seamlessly across various operating systems.
* **Detailed Documentation and Support:** Comprehensive guides and resources available.
<br>
---
## š ļø Tech Stack š¦
| Technology | Badge |
|-----------------|-----------------------------------------------------------------------|
| Node.js | [](https://nodejs.org/) |
| Express.js | [](https://expressjs.com/) |
| Redis | [](https://redis.io/) |
| Arweave | [](https://www.arweave.org/) |
| AWS | [](https://aws.amazon.com/) |
| Other Libraries | [](https://github.com/Arpitpassi/NityaV1/blob/main/package.json) |
<br>
---
## š Quick Start Guide ā”
1. **Installation:**
```bash
npm install nitya@1.1.4
```
2. **Initialization:**
```bash
npx nitya init --project-name "my-project" --build "npm run build" --deploy-folder "dist"
```
3. **Deployment:**
```bash
npm run build-and-deploy
```
<br>
---
## š Detailed Usage š
**(See detailed steps in the `Step-by-Step Setup and Deployment` section below)**
<br>
---
## šļø Project Structure š
NityaV1/ āāā bin/ ā āāā nitya.js ā āāā perma-deploy.js ā āāā perma-init.js ā āāā perma-begin.cjs āāā website/ ā āāā src/ ā āāā index.js āāā package.json
<br>
---
## šÆ API Documentation š
| Method | Endpoint | Description | Request Body | Response Body |
|-------------|-----------------------|---------------------------------------------------|----------------|----------------|
| `POST` | `/upload` | Uploads a zipped project folder to Arweave. | `formData` | `{manifestId}` |
| `GET` | `/status/:manifestId` | Retrieves the deployment status. | | `{status}` |
| `GET` | `/arns` | Retrieves available ARNS processes. | | `[{processId, name}]`|
**Example using `axios`:**
```javascript
const axios = require('axios');
axios.post('/upload', formData, {
headers: {
'Content-Type': 'multipart/form-data'
}
})
.then(response => {
console.log('Deployment successful:', response.data.manifestId);
})
.catch(error => {
console.error('Deployment failed:', error);
});
Configuration Options
| Option | Description | Default Value |
|---|---|---|
project-name |
Name of the project | Current directory name |
build |
Build command | npm run build |
install |
Install command | npm install |
branch |
Git branch to deploy | main |
deploy-folder |
Folder containing built assets | dist |
auto-deploy |
Enable automatic deployment on git commits | false |
ant-process |
ANT process ID (for ARNS) | |
arns |
ARNS name (for ARNS) | |
undername |
ARNS undername (for ARNS) | |
sponsor-wallet-address |
Sponsor wallet address (for pool deployments) |
Screenshots/Demo
(Include screenshots/gifs here showcasing the NityaV1 interface and deployment process.)
Contributing Guidelines
- Fork the repository.
- Create a new branch.
- Make your changes.
- Test your changes thoroughly.
- Submit a pull request.
License and Acknowledgments
This project is licensed under the MIT License. We thank the Arweave and AR.IO communities for their support.
Contributors
(Add contributor avatars and links here)
Support and Contact
Frequently Asked Questions (FAQ)
Frequently Asked Questions (FAQ)
Q: What is Arweave?
A: Arweave is a decentralized storage network that allows you to permanently store data on the blockchain.
Q: How does NityaV1 work with Arweave?
A: NityaV1 simplifies the process of deploying your web application to Arweave's permanent storage, handling the technical complexities for you.
Q: Do I need to pay for using NityaV1?
A: NityaV1 itself is free to use. However, you will need to pay for Arweave storage fees (AR tokens) to store your application's data. Pool deployments minimize the AR required, but you still need AR tokens for direct uploads of large projects.
Q: What if I encounter an error during deployment?
A: Please refer to the Troubleshooting section of this README or contact us for assistance.
Roadmap
- Implement support for more wallet types.
- Add more advanced deployment options.
- Improve error handling and logging.
- Expand documentation and tutorials.
- Initial Release