डेबियन पर सेटअप NFS शेयर
एनएफएस एक नेटवर्क-आधारित फाइल सिस्टम है जो कंप्यूटरों को कंप्यूटर नेटवर्क पर फाइलों तक पहुंचने की अनुमति देता है। यह मार्गदर्शिका बताती है कि आप एनएफ पर फ़ोल्डर्स को कैसे उजागर कर सकते हैं
MySQL में एक शानदार फीचर है जिसे "व्यू" के रूप में जाना जाता है। दृश्य संग्रहीत प्रश्न हैं। अन्यथा लंबी क्वेरी के लिए उन्हें एक उपनाम के रूप में सोचें। इस गाइड में, मैं आपको दिखाऊंगा कि डेटा को अधिक कुशलता से व्यवस्थित करने के लिए विचारों का उपयोग कैसे करें।
डेबियन 7.x पर MySQL स्थापित करना बहुत सीधा है। सबसे पहले, हमें यह सुनिश्चित करने की आवश्यकता है कि हमारे स्रोत निष्पादित करके अपडेट किए गए हैं:
sudo apt-get update
अगला, हम MySQL सर्वर स्थापित कर सकते हैं:
sudo apt-get install -y mysql-server
एक डायलॉग बॉक्स आपको "रूट" उपयोगकर्ता के लिए एक पासवर्ड बनाने के लिए संकेत देगा। सुनिश्चित करें कि आपको यह पासवर्ड याद है।
आइए क्रियान्वयन द्वारा हमारी स्थापना की सुरक्षा को सख्त करें:
sudo mysql_secure_installation
निष्पादन के बाद, आपको संकेतों की एक श्रृंखला के साथ प्रस्तुत किया जाएगा। आपके द्वारा चुने गए प्रत्येक उत्तर को नीचे प्रदर्शित किया जाना चाहिए।
...
Enter current password for root (enter for none):
OK, successfully used password, moving on...
...
Set root password? [Y/n] y
New password:
Re-enter new password:
Password updated successfully!
Reloading privilege tables..
... Success!
...
Remove anonymous users? [Y/n] y
... Success!
...
Disallow root login remotely? [Y/n] y
... Success!
Remove test database and access to it? [Y/n] y
- Dropping test database...
... Success!
...
Reload privilege tables now? [Y/n] y
... Success!
Cleaning up...
इस बिंदु पर, हमारे पास प्रयोग करने के लिए सर्वर पर कोई डेटा नहीं है। इस ट्यूटोरियल के लिए, हम कर्मचारियों के डेटाबेस का उपयोग करेंगे क्योंकि यह MySQL की वेबसाइट से आसानी से और आसानी से उपलब्ध है।
sudo wget https://launchpad.net/test-db/employees-db-1/1.0.6/+download/employees_db-full-1.0.6.tar.bz2
हमें स्थापित करने की आवश्यकता है bzip2
ताकि हम फ़ाइल को निकाल सकें।
sudo apt-get install bzip2
डेटाबेस निकालें। फ़ाइल काफी बड़ी है, इसलिए इसमें कुछ क्षण लग सकते हैं।
sudo bzip2 -dfv employees_db-full-1.0.6.tar.bz2
sudo tar -xf employees_db-full-1.0.6.tar
एक बार फ़ाइल को निकालने के बाद, आपके पास एक फ़ोल्डर होगा जिसका शीर्षक होगा employees_db
। डेटाबेस को स्थापित करने के लिए हमें इस निर्देशिका में नेविगेट करना होगा।
cd employees_db
ls -l
आउटपुट इस तरह दिखेगा:
-rw-r--r--. 1 501 games 752 Mar 30 2009 Changelog
-rw-r--r--. 1 501 games 6460 Oct 9 2008 employees_partitioned2.sql
-rw-r--r--. 1 501 games 7624 Feb 6 2009 employees_partitioned3.sql
-rw-r--r--. 1 501 games 5660 Feb 6 2009 employees_partitioned.sql
-rw-r--r--. 1 501 games 3861 Nov 28 2008 employees.sql
-rw-r--r--. 1 501 games 241 Jul 30 2008 load_departments.dump
-rw-r--r--. 1 501 games 13828291 Mar 30 2009 load_dept_emp.dump
-rw-r--r--. 1 501 games 1043 Jul 30 2008 load_dept_manager.dump
-rw-r--r--. 1 501 games 17422825 Jul 30 2008 load_employees.dump
-rw-r--r--. 1 501 games 115848997 Jul 30 2008 load_salaries.dump
-rw-r--r--. 1 501 games 21265449 Jul 30 2008 load_titles.dump
-rw-r--r--. 1 501 games 3889 Mar 30 2009 objects.sql
-rw-r--r--. 1 501 games 2211 Jul 30 2008 README
-rw-r--r--. 1 501 games 4455 Mar 30 2009 test_employees_md5.sql
-rw-r--r--. 1 501 games 4450 Mar 30 2009 test_employees_sha.sql
MySQL सर्वर से कनेक्ट करने, डेटाबेस बनाने और डेटा आयात करने के लिए निम्न कमांड निष्पादित करें:
sudo mysql -h localhost -u root -p -t < employees.sql
एक प्रॉम्प्ट आपके रूट पासवर्ड के लिए पूछेगा। यह वह पासवर्ड है जिसे आपने चरण एक में सेट किया है।
डेटाबेस काफी बड़ा होने के कारण, डेटा को पूरी तरह से आयात करने में संभवतः 1-3 मिनट से कहीं भी लगेगा। यदि सब कुछ सही ढंग से किया गया था, तो आप निम्न आउटपुट देखेंगे।
+-----------------------------+
| INFO |
+-----------------------------+
| CREATING DATABASE STRUCTURE |
+-----------------------------+
+------------------------+
| INFO |
+------------------------+
| storage engine: InnoDB |
+------------------------+
+---------------------+
| INFO |
+---------------------+
| LOADING departments |
+---------------------+
+-------------------+
| INFO |
+-------------------+
| LOADING employees |
+-------------------+
+------------------+
| INFO |
+------------------+
| LOADING dept_emp |
+------------------+
+----------------------+
| INFO |
+----------------------+
| LOADING dept_manager |
+----------------------+
+----------------+
| INFO |
+----------------+
| LOADING titles |
+----------------+
+------------------+
| INFO |
+------------------+
| LOADING salaries |
+------------------+
अब, हम MySQL में लॉग इन कर सकते हैं और आयातित डेटा देख सकते हैं।
sudo mysql -h localhost -u root -p
रूट पासवर्ड दर्ज करें जिसे आपने पिछले अनुभाग में सेट किया है।
हमारे नए बनाए गए कर्मचारियों के डेटाबेस के लिए डेटाबेस की सूची देखें ।
show databases;
आउटपुट इस तरह दिखेगा:
+--------------------+
| Database |
+--------------------+
| information_schema |
| employees |
| mysql |
| performance_schema |
+--------------------+
4 rows in set (0.01 sec)
चलो कर्मचारियों के डेटाबेस का उपयोग करें।
use employees;
इसके भीतर तालिकाओं की जाँच करें।
show tables;
यह आउटपुट होगा:
+---------------------+
| Tables_in_employees |
+---------------------+
| departments |
| dept_emp |
| dept_manager |
| employees |
| salaries |
| titles |
+---------------------+
6 rows in set (0.01 sec)
इस चरण में, आप दृश्य बनाना और उसका उपयोग करना सीखेंगे। मैंने डेटा के मिलान और संगठन के लिए डेटा के संयोजन के लिए इस चरण को छोटे वर्गों में तोड़ दिया है। यह हमारे परीक्षण डेटा के साथ बातचीत शुरू करने का समय है।
नीचे, मेरे पास एक क्वेरी है जो उन सभी कर्मचारियों को प्रदर्शित करती है जिनके पास सालाना वेतन समान है, या $ 50,000 से अधिक है।
select * from salaries where salary >= 50000;
आउटपुट (छोटा):
+--------+--------+------------+------------+
| emp_no | salary | from_date | to_date |
+--------+--------+------------+------------+
| 10001 | 60117 | 1986-06-26 | 1987-06-26 |
| 10001 | 62102 | 1987-06-26 | 1988-06-25 |
| 10001 | 66074 | 1988-06-25 | 1989-06-25 |
| 10001 | 66596 | 1989-06-25 | 1990-06-25 |
| 10001 | 66961 | 1990-06-25 | 1991-06-25 |
(...)
जैसा कि आप देख सकते हैं, यह केवल कर्मचारी संख्या प्रदर्शित करता है। किसी कर्मचारी को जल्दी पहचानने की कोशिश करने पर यह उपद्रव हो सकता है। सौभाग्य से, हम एक ऐसा दृश्य बना सकते हैं जो काफी लंबी क्वेरी को संग्रहीत करेगा जो डेटा को कई तालिकाओं के साथ खींचकर और मिलान करके कर्मचारी के नाम से मेल कर सकता है। प्रश्न नीचे दिखाया गया है।
select employees.first_name,employees.last_name,employees.emp_no,salaries.salary,salaries.to_date,salaries.from_date from employees, salaries where employees.emp_no = salaries.emp_no;
ध्यान दें कि मैं >= 50000
क्वेरी से कैसे छूट गया हूं । हमारा मान बनने के बाद हम इस मूल्य का उपयोग करेंगे।
दृश्य बनाने के लिए, हम बस create view view_name as
क्वेरी से जुड़ेंगे। इस मामले में, मैं name_salaries नामक एक दृश्य तैयार करूंगा ।
create view named_salaries as select employees.first_name,employees.last_name,employees.emp_no,salaries.salary,salaries.to_date,salaries.from_date from employees, salaries where employees.emp_no = salaries.emp_no;
हम उसी दृश्य से डेटा प्रदर्शित करते हैं, जिस तालिका से हम डेटा प्रदर्शित करते हैं।
select * from named_salaries
यदि दृश्य ठीक से बनाया गया है, तो आप निम्न आउटपुट देखेंगे (डेटा को छोटा कर दिया गया है):
+------------+-----------+--------+--------+------------+------------+
| first_name | last_name | emp_no | salary | to_date | from_date |
+------------+-----------+--------+--------+------------+------------+
| Georgi | Facello | 10001 | 60117 | 1987-06-26 | 1986-06-26 |
| Georgi | Facello | 10001 | 62102 | 1988-06-25 | 1987-06-26 |
| Georgi | Facello | 10001 | 66074 | 1989-06-25 | 1988-06-25 |
| Georgi | Facello | 10001 | 66596 | 1990-06-25 | 1989-06-25 |
| Georgi | Facello | 10001 | 66961 | 1991-06-25 | 1990-06-25 |
| Georgi | Facello | 10001 | 71046 | 8 1992-06-24 | 1991-06-25 |
(...)
चूंकि हम उसी तरह से विचारों के साथ बातचीत कर सकते हैं जिस तरह से हम एक तालिका के साथ बातचीत कर सकते हैं, >= 50000
मूल क्वेरी से लेना और इसे दृश्य पर लागू करना संभव है ।
select * from named_salaries where salary >= 50000;
आउटपुट (छोटा):
+------------+-----------+--------+--------+------------+------------+
| first_name | last_name | emp_no | salary | to_date | from_date |
+------------+-----------+--------+--------+------------+------------+
| Georgi | Facello | 10001 | 60117 | 1987-06-26 | 1986-06-26 |
(...)
| Bezalel | Simmel | 10002 | 65828 | 1997-08-03 | 1996-08-03 |
(...)
| Chirstian | Koblick | 10004 | 50594 | 1992-11-29 | 1991-11-30 |
(...)
| Kyoichi | Maliniak | 10005 | 78228 | 1990-09-12 | 1989-09-12 |
(...)
| Anneke | Preusig | 10006 | 53747 | 1998-08-03 | 1997-08-03 |
(...)
+------------+-----------+--------+--------+------------+------------+
जैसा कि आप देख सकते हैं, क्वेरी ने पारंपरिक तालिका की तरह ही दृश्य का इलाज किया है।
आइए एक अन्य उदाहरण में एक दृश्य का उपयोग करें। नीचे, मेरे पास एक काफी लंबी क्वेरी है जो विभाग के प्रबंधकों, उनके पहले / अंतिम नाम, कर्मचारी संख्या, उनके विभाग के नाम और विभाग के नंबरों को सूचीबद्ध करती है। क्वेरी कई अलग-अलग तालिकाओं के डेटा को एक साथ खींचती है।
select employees.first_name,employees.last_name,employees.emp_no,dept_manager.to_date,dept_manager.from_date,departments.dept_name,departments.dept_no from employees, dept_manager, departments where employees.emp_no = dept_manager.emp_no AND departments.dept_no = dept_manager.dept_no;
आउटपुट (छोटा):
+-------------+--------------+--------+------------+------------+--------------------+---------+
| first_name | last_name | emp_no | to_date | from_date | dept_name | dept_no |
+-------------+--------------+--------+------------+------------+--------------------+---------+
| Tonny | Butterworth | 111692 | 1988-10-17 | 1985-01-01 | Customer Service | d009 |
| Marjo | Giarratana | 111784 | 1992-09-08 | 1988-10-17 | Customer Service | d009 |
| Xiaobin | Spinelli | 111877 | 1996-01-03 | 1992-09-08 | Customer Service | d009 |
| Yuchang | Weedman | 111939 | 9999-01-01 | 1996-01-03 | Customer Service | d009 |
| DeForest | Hagimont | 110511 | 1992-04-25 | 1985-01-01 | Development | d005 |
| Leon | DasSarma | 110567 | 9999-01-01 | 1992-04-25 | Development | d005 |
(...)
जैसा कि आप देख सकते हैं, हर बार विभाग के प्रबंधकों की सूची लाने के लिए उस क्वेरी में टाइप करना कुछ असुविधाजनक होगा। आइए इसे आसान बनाने के लिए एक दृश्य बनाएं। मैं "प्रबंधन" दृश्य को कॉल करने जा रहा हूं।
create view management as select employees.first_name,employees.last_name,employees.emp_no,dept_manager.to_date,dept_manager.from_date,departments.dept_name,departments.dept_no from employees, dept_manager, departments where employees.emp_no = dept_manager.emp_no AND departments.dept_no = dept_manager.dept_no;
अब, हम केवल select * from management;
उसी डेटा को पुनः प्राप्त करने के लिए टाइप कर सकते हैं । बेशक, हम इसके लिए अतिरिक्त पैरामीटर भी लागू कर सकते हैं - एक पारंपरिक तालिका की तरह। उदाहरण के लिए, मान लें कि हम केवल "ग्राहक सेवा" के लिए विभागों के प्रबंधकों को दिखाना चाहते थे।
select * from management where dept_name = 'Customer Service';
आउटपुट:
+------------+-------------+--------+------------+------------+------------------+---------+
| first_name | last_name | emp_no | to_date | from_date | dept_name | dept_no |
+------------+-------------+--------+------------+------------+------------------+---------+
| Tonny | Butterworth | 111692 | 1988-10-17 | 1985-01-01 | Customer Service | d009 |
| Marjo | Giarratana | 111784 | 1992-09-08 | 1988-10-17 | Customer Service | d009 |
| Xiaobin | Spinelli | 111877 | 1996-01-03 | 1992-09-08 | Customer Service | d009 |
| Yuchang | Weedman | 111939 | 9999-01-01 | 1996-01-03 | Customer Service | d009 |
+------------+-------------+--------+------------+------------+------------------+---------+
या शायद हम "ग्राहक सेवा" और "मानव संसाधन" चाहते हैं:
select * from management where dept_name = 'Customer Service' OR dept_name = 'Human Resources';
आउटपुट:
+------------+--------------+--------+------------+------------+------------------+---------+
| first_name | last_name | emp_no | to_date | from_date | dept_name | dept_no |
+------------+--------------+--------+------------+------------+------------------+---------+
| Tonny | Butterworth | 111692 | 1988-10-17 | 1985-01-01 | Customer Service | d009 |
| Marjo | Giarratana | 111784 | 1992-09-08 | 1988-10-17 | Customer Service | d009 |
| Xiaobin | Spinelli | 111877 | 1996-01-03 | 1992-09-08 | Customer Service | d009 |
| Yuchang | Weedman | 111939 | 9999-01-01 | 1996-01-03 | Customer Service | d009 |
| Shirish | Ossenbruggen | 110183 | 1992-03-21 | 1985-01-01 | Human Resources | d003 |
| Karsten | Sigstam | 110228 | 9999-01-01 | 1992-03-21 | Human Resources | d003 |
+------------+--------------+--------+------------+------------+------------------+---------+
किसी दृश्य को हटाना बहुत सीधा है। एक तालिका को हटाने के समान, आप टाइप करेंगे drop view view_name;
। उदाहरण के लिए, यदि हम name_salaries दृश्य को हटाना चाहते हैं, तो कमांड होगी drop view named_salaries;
:।
एनएफएस एक नेटवर्क-आधारित फाइल सिस्टम है जो कंप्यूटरों को कंप्यूटर नेटवर्क पर फाइलों तक पहुंचने की अनुमति देता है। यह मार्गदर्शिका बताती है कि आप एनएफ पर फ़ोल्डर्स को कैसे उजागर कर सकते हैं
यह आलेख आपको सिखाएगा कि डेबियन पर चेरोट जेल कैसे सेट करें। मुझे लगता है कि आप डेबियन 7.x का उपयोग कर रहे हैं यदि आप डेबियन 6 या 8 चला रहे हैं, तो यह काम कर सकता है, बू
परिचय डेबियन पर वीपीएन सर्वर स्थापित करने का एक आसान तरीका PiVPN के साथ है। PiVPN OpenVPN के लिए एक इंस्टॉलर और आवरण है। यह आपके लिए सरल कमांड बनाता है
एक अलग प्रणाली का उपयोग? चूंकि GitHub को Microsoft द्वारा अधिग्रहित किया गया था, काफी कुछ डेवलपर्स ने अपने स्वयं के कोड रिपॉजिटरी को github.co से माइग्रेट करने की योजना बनाई है
PBX इन ए फ्लैश 5 (PIAF5) एक डेबियन 8 आधारित ऑपरेटिंग सिस्टम है जो आपके Vultr VPS को पूर्ण विकसित PBX में बदल देता है। इसके पास निम्नलिखित विशेषताएं हैं, और बहुत कुछ।
एक अलग प्रणाली का उपयोग? ब्रेटली Gzip की तुलना में बेहतर संपीड़न अनुपात के साथ एक नई संपीड़न विधि है। इसका स्रोत कोड सार्वजनिक रूप से Github पर होस्ट किया गया है। थी
परिचय लिनिस एक स्वतंत्र, ओपन-सोर्स सिस्टम ऑडिटिंग टूल है जिसका उपयोग कई सिस्टम एडमिनिस्ट्रेटर द्वारा अखंडता को सत्यापित करने और उनके सिस्टम को सख्त करने के लिए किया जाता है। मैं
एक अलग प्रणाली का उपयोग? Neos एक CMS के साथ एक कंटेंट एप्लीकेशन प्लेटफॉर्म है और इसके मूल में एक एप्लीकेशन फ्रेमवर्क है। यह मार्गदर्शिका आपको बताएगी कि किस तरह से आपको जमाना है
परिचय कैक्टि एक खुला स्रोत निगरानी और रेखांकन उपकरण है जो पूरी तरह से आरआरडी डेटा पर आधारित है। कैक्टि के माध्यम से, आप लगभग किसी भी प्रकार के डेविक की निगरानी कर सकते हैं
एक अलग प्रणाली का उपयोग? InvoicePlane एक स्वतंत्र और खुला स्रोत चालान आवेदन है। इसका स्रोत कोड इस Github भंडार पर पाया जा सकता है। यह गाइड
एक अलग प्रणाली का उपयोग? रीडर सेल्फ 3.5 एक सरल और लचीला, मुफ्त और खुला स्रोत है, स्वयं-होस्ट आरएसएस रीडर और Google रीडर विकल्प है। पाठक सेल
एक अलग प्रणाली का उपयोग? बुकस्टैक जानकारी को व्यवस्थित और संग्रहीत करने के लिए एक सरल, स्व-होस्टेड, आसानी से उपयोग होने वाला प्लेटफॉर्म है। बुकस्टैक पूरी तरह से स्वतंत्र और खुला है
परिचय FFmpeg वीडियो और ऑडियो एन्कोडिंग / डिकोडिंग के लिए एक ओपन सोर्स कमांड लाइन टूल है। इसकी मुख्य विशेषताएं उच्च गति, गुणवत्ता और छोटी फिल्म हैं
एक अलग प्रणाली का उपयोग? माटोमो (पूर्व में पिविक) एक ओपन सोर्स एनालिटिक्स प्लेटफॉर्म है, जो गूगल एनालिटिक्स का एक खुला विकल्प है। Matomo स्रोत को होस्ट किया गया है
यह लेख वल्चर पर टेम्प्लेट के रूप में पेश किए जाने वाले सर्वर ऑपरेटिंग सिस्टम का एक संक्षिप्त सार प्रदान करता है। CentOS CentOS RHEL (Re) का एक ओपन-सोर्स संस्करण है
एक अलग प्रणाली का उपयोग? एक्स-कार्ट एक बहुत ही लचीली ओपन-सोर्स ईकामर्स प्लेटफॉर्म है जिसमें बहुत सारे फीचर्स और इंटीग्रेशन हैं। एक्स-कार्ट सोर्स कोड होस्ट है
मुनिन आपकी मशीन में प्रक्रियाओं और संसाधनों का सर्वेक्षण करने के लिए एक निगरानी उपकरण है और एक वेब इंटरफेस के माध्यम से रेखांकन में जानकारी प्रस्तुत करता है। अनुयायी का उपयोग करें
एक अलग प्रणाली का उपयोग? टिनी टिनी RSS रीडर एक स्वतंत्र और खुला स्रोत है जो स्वयं-आधारित वेब-आधारित समाचार फ़ीड (RSS / Atom) रीडर और एग्रीगेटर है, जिसे अलो के लिए डिज़ाइन किया गया है
परिचय इस ट्यूटोरियल में, हम CentOS, Debian, या Ubuntu पर चलने वाले लिनक्स सर्वर में एक संपूर्ण IP रेंज / सबनेट जोड़ने की प्रक्रिया को कवर करेंगे। प्रोज
LiteCart PHP, jQuery और HTML में लिखा गया एक स्वतंत्र और ओपन सोर्स शॉपिंग कार्ट प्लेटफॉर्म है। यह ई-कॉमर्स सॉफ्टवेअर का उपयोग करने के लिए एक सरल, हल���का और आसान है
एनएफएस एक नेटवर्क-आधारित फाइल सिस्टम है जो कंप्यूटरों को कंप्यूटर नेटवर्क पर फाइलों तक पहुंचने की अनुमति देता है। यह मार्गदर्शिका बताती है कि आप एनएफ पर फ़ोल्डर्स को कैसे उजागर कर सकते हैं
एक अलग प्रणाली का उपयोग? माटोमो (पूर्व में पिविक) एक ओपन सोर्स एनालिटिक्स प्लेटफॉर्म है, जो गूगल एनालिटिक्स का एक खुला विकल्प है। Matomo स्रोत को होस्ट किया गया है
टीमटॉक एक कॉन्फ्रेंसिंग प्रणाली है जो उपयोगकर्ताओं को उच्च-गुणवत्ता वाले ऑडियो / वीडियो वार्तालाप, टेक्स्ट चैट, स्थानांतरण फ़ाइलें और स्क्रीन साझा करने की अनुमति देती है। यह मैं
परिचय यह आलेख बताएगा कि विंडोज सर्वर 2012 पर गारस मोड सर्वर को कैसे डाउनलोड और इंस्टॉल किया जाए। यह गाइड गहराई में होने के लिए बनाया गया है।
एक अलग प्रणाली का उपयोग? परिचय CyberPanel बाजार पर पहला नियंत्रण पैनल है जो दोनों खुला स्रोत है और OpenLiteSpeed का उपयोग करता है। क्या थी?
FFmpeg ऑडियो और वीडियो रिकॉर्ड करने, कन्वर्ट करने और स्ट्रीम करने के लिए एक लोकप्रिय ओपन सोर्स समाधान है, जो सभी प्रकार की ऑनलाइन स्ट्रीमिंग सेवाओं में व्यापक रूप से उपयोग किया जाता है। मैं
एलयूकेएस (लिनक्स यूनिफाइड की सेटअप) लिनक्स के लिए उपलब्ध विभिन्न डिस्क एन्क्रिप्शन प्रारूपों में से एक है जो प्लेटफॉर्म एग्नॉस्टिक है। यह ट्यूटोरियल आपको बुद्धि प्रदान करेगा
Vultr अपने VPS को कॉन्फ़िगर करने, स्थापित करने और उपयोग करने के लिए कई अलग-अलग तरीके प्रदान करता है। क्रेडेंशियल एक्सेस करें आपके VPS के लिए डिफ़ॉल्ट एक्सेस क्रेडेंशियल ar
अक्टूबर एक खुला स्रोत सामग्री प्रबंधन प्रणाली है जो लारवेल PHP फ्रेमवर्क पर आधारित है। एक सुरुचिपूर्ण इंटरफ़ेस और एक संक्षिप्त मॉड्यूलर वास्तुकला के साथ