A clean, powerful, and customizable open-source blog platform — built with performance and developer happiness in mind.
📍 Live site: darmannyar.com
📦 Repository: github.com/Uryzen317/zigma-blog
📝 The project was originally developed under the name Zigma Blog, but launched under the final name Darmannyar during the final stages.
Zigma Blog is crafted with love using the following technologies:
Category | Stack |
---|---|
🌐 Frontend | Next.js, Zustand, React, TypeScript |
🎨 Styling | Tailwind CSS |
🔧 Backend | NestJS, Node.js |
🗃 Database | MongoDB, Redis |
🔄 CI/CD | Ansible |
🛡 Auth | Custom Cookie-Based auth |
This monorepo is split into two main branches:
To run the frontend locally:
npm run start:dev
⚠️ Note for production (CI/CD):
Make sure to renamepublic-env.prod.ts
topublic-env.ts
during the build pipeline.
To run the backend locally:
-
Copy the
.env.example
file to a new.env
file:cp .env.example .env
-
Update the
.env
file with the appropriate environment variables for your local setup. -
Then, run the server:
npm run start:dev
⚠️ Note for production (CI/CD):
Ensure that the.env
file is properly set up on your production environment with the necessary credentials and variables.
This project supports automated deployment using Ansible.
All related configurations and playbooks are located in the ansible
branch.
-
Switch to the Ansible branch:
git checkout ansible
-
Configure your inventory:
- Copy the example file:
cp inventory.ini.example inventory.ini
- Edit
inventory.ini
with your server's IP/hostname and SSH config.
⚠️ Do not commit this file – it's already listed in.gitignore
.
- Copy the example file:
-
Update variable files:
- Open the files in the
vars/
directory and customize them for your environment (e.g., service names, deployment paths, or other settings).
- Open the files in the
-
Run the playbook:
ansible-playbook -i inventory.ini playbooks/deploy.yml
This will:
- Build the app on your local machine
- Upload production files to your server
- Install dependencies
- Restart the service
Everything with one command, under your full control.
This project is licensed under the Apache License 2.0.
See LICENSE for full license text.
Pull requests are welcome!
For major changes, please open an issue first to discuss what you'd like to propose.
Developed by Uyzen317