Hello, world! :) Welcome to this project. This is a free web repository that you can use as a blog for your website. This project is dedicated to "Sina Sattari" as an honorary title.

Related tags

React QURNO
Overview

QURNO News/Technology Web Application

Greetings and courtesy to all of you dear colleagues and friends of the DarkDragons team. We came back with another repository/project. This time of the public and free type. QURNO is a blog-based web application that can be used in any way you like. A product, a repository, a project and of course a tutorial! At QURNO you can read and write about anything but general technical news. Of course, QURNO is designed in such a way that you can learn in it. We have given you enough information, documents and comments to fully understand what is happening at QURNO. In fact, QURNO is a blog-based website that is really fully developed, QURNO has been trying to bring the best features of a blog-based website. QURNO under the Free, Open Source and Copyleft licenses GPL (GNU GENERAL PUBLIC LICENSE) Version 3 has been released, which means you can develop and distribute it any way you want. What are you waiting for? Let's go and get more acquainted with QURNO and install it :)

In the hope of freeing our beloved IRAN from sanctions<3

What is QURNO developed with?

We have tried to develop QURNO with the most modern technologies in the world. In fact, with technologies that make QURNO safe, fast and light.

Server/Back-End development

  • Django

Django is a web application development framework for Python that allows you to develop projects as quickly as possible with the utmost security and processing speed.

Database development

Database is a regular member in software development science. It is very important to know what database you are using, because the speed of development and processing speed of your work is very much dependent on it.

  • PostgreSQL

PostgreSQL database system and DBMS is a powerful engine that you can use to process very large data. Running QURNO on PostgreSQL is recommended.

  • SQLite

SQLite is a small, optimized engine that you can use for QURNO development and fast viewing. SQLite does not require any special installation or additional work, you just need to install the relevant libraries to use it.

Design/Client/Front-End development

One of the most important parts of QURNO and software development in general is the design and appearance section. Strong communication with the user is mostly done through the appearance of the software. At QURNO, we strive to design a beautiful and simple user interface with the utmost creativity and thinking, which is both user-friendly and beautiful.

  • Creative CSS and SCSS!

In fact, many parts of the site design have been done with CSS and SCSS. CSS and SCSS do not require much skill, you just need to be creative to be able to create a beautiful user interface.

  • Bootstrap

We used bootstrap framework technology in CSS to accelerate QURNO development. Bootstrap can be a great option for large projects.

  • JavaScript but to a certain extent!

We all know that the web is meaningless without JavaScript. JavaScript is a kind of web design spirit, but it should be used enough. Too much JavaScript in a website reduces processing speed, software security and boredom. We have used it enough to give a special spirit to our project.


What are the features of QURNO?

QURNO can be a tutorial!

Most of the clean development rules are followed in QURNO, while everywhere it is commented so that the user can safely develop QURNO and, of course, learn the related technologies!

QURNO is safe

All security protocols (to the best of our knowledge and facilities) have been followed in QURNO. We have also complied with database security standards.

QURNO is fast

There are several requirements for the high processing speed of a software, most of which we have met. Despite the high speed in Django itself, we have tried to follow the protocols related to processing speed.

In general, QURNO standard has been developed

There are many rules for clean development. We have tried to comply with most of them and of course we have succeeded. For example, we have complied with the PEP8 standard in Python coding.

QURNO has little dependence

Most software today requires a lot of files and resources to run. Fortunately, QURNO does not depend much on many resources, and most features are internally designed. But to observe the principle of cooperation in a community, we have used external packages and modules.

QURNO is Dockerized

We have developed QURNO with Docker so that you can use it in any type and wherever you want. The Docker system is great and important, try to learn it, we have given enough information about Docker in the project files.

QURNO launches fast

It is enough to be familiar with the installation to be able to set up QURNO. The easier solution, though, is to use Docker's lovely system and service.

QURNO has permanent support

The DarkDragons team is responsible for the ongoing protection and support of QURNO and is ready to accept any criticism, development or distribution from you dear ones.


Developers and stakeholders

QURNO was developed by DarkDragons, but its main developer is Navid Rahimzadeh, a developer and programmer of mobile, cross-platform and web.

For various reasons, it has been decided not to mention DarkDragons collaborators in this project.


QURNO installation

As standard, two installation methods are suggested by DarkDragons.

  • Docker System
  • Classic Setup

Docker System

Setting up with Docker will allow you to quickly and hassle-free access to the project and its resources. Just install Docker on your operating system and run Docker Desktop.

To run the project in Docker, just enter the following commands in order.

First we tell Docker to pull project structure images.

docker pull python:latest
docker pull postgres:latest

These two commands allow Docker to install and run Image Python and PostgreSQL software.

In the next command, we tell Docker to launch our project-specific image.

docker build .

Docker has now created a custom image for our project. You can combine this image with the PostgreSQL software image.

Now we need to use Docker Compose to attach your project image to Image of PostgreSQL.

docker-compose up

And over! The project is now ready to run on 127.0.0.1 (on port 8000). You can use the docker-compose exec web (python manage.py COMMAND) command to manage project-related commands.

For example:

docker-compose exec web python manage.py migrate
docker-compose exec web python manage.py createsuperuser

Docker Tips

  • Your environmental variables are stored in the docker-compose.yaml file. Be careful to keep this file correct.
  • Docker is under sanctions in Iran, Cuba, North Korea, Sudan and several other countries, beware.
  • Be sure to read the docker-compose.yaml file and the dockerfile file. There is a convincing explanation.

Classic installation

To install a classic project, you must first have PostgreSQL installed. Although installing PostgreSQL is not mandatory, it is best to do so.

Now you have two options:

  • Project installation with SQLite
  • Project installation with PostgreSQL

SQLite

If you want to install the project with SQLite, your work is not very annoying. Enough (Comment or delete psycopg2-binary and psycopg2 packages - in the requirements.txt file) and then enter the following command.

python -m pip install --upgrade pip
pip install -r requirements.txt

The required QURNO packages are now installed. It's time to set the environmental variables for QURNO and Django.

To set environmental variables in CMD:

set SECRET_KEY=YOUR SECRET_KEY

To set environmental variables in PowerShell:

$env:SECRET_KEY = "YOUR SECRET_KEY"

To set environmental variables in Unix Terminals:

export SECRET_KEY=YOUR SECRET_KEY
python manage.py migrate
python manage.py runserver

127.0.0.1:8000

And the whole project is now (SQLite dependent) executable.

PostgreSQL

Getting started with PostgreSQL is a bit more complicated. You should now have PostgreSQL installed on your system, which we hope it will be, because installing PostgreSQL is really troublesome.

We expect you to complete all the installation of PostgreSQL.

Now launch a new database and enter your details in it. (Preferably do this with a new ROLE in the PostgreSQL database.)

Convert your database profile to environmental variables. (With the following characteristics)

  • DATABASE_NAME = "Enter the name of the database created"
  • DATABASE_ROLE = "Enter the name of the ROLE with which you created the database."
  • DATABASE_ROLE_PASSWORD = "Enter the ROLE password with which you created the database."
  • Enter your SECRET_KEY with these values.

You can run these values in different commandlines as follows.

In CMD:

set SECRET_KEY=YOUR SECRET_KEY
set DATABASE_NAME=Enter the name of the database created.
set DATABASE_ROLE=Enter the name of the ROLE with which you created the database.
set DATABASE_ROLE_PASSWORD=Enter the ROLE password with which you created the database.

In PowerShell:

$env:SECRET_KEY = "YOUR SECRET_KEY"
$env:DATBASE_NAME="Enter the name of the database created."
$env:DATABASE_ROLE = "Enter name of ROLE with which you created the database."
$env:DATABASE_ROLE_PASSWORD = "Enter the ROLE password with which you created the database."

In Bash:

export SECRET_KEY=YOUR SECRET_KEY
export DATABASE_NAME=Enter the name of the database created.
export DATABASE_ROLE=Enter the name of the ROLE with which you created the database.
export DATABASE_ROLE_PASSWORD=Enter the ROLE password with which you created the database.

Note: By default, we assume that you are using the Docker system. In the Docker system, the database runs on the db host by default, but in PostgreSQL the original version is not. Change the host in DATABASES - default to 127.0.0.1 (or any other host you created). (Preferably convert the values of the hosts to an environmental variable. Especially in the production phase.)

Now you need to install the required packages in addition to the PostgreSQL adapter. This is important because PostgreSQL has two psycopg2 and psycopg2-binary adapters. Psycopg2 is actually a complete adapter, but psycopg2-binary, as its name implies, only works. The "requirements.txt" file also mentions this, first test whether psycopg2 works or not, if you find that it does not work, disable (comment) psycopg2 and enable psycopg2-binary.

python -m pip install --upgrade pip
pip install -r requirements.txt

Now that all the environment variables are set, (without closing the current Shell) Open another Shell and test whether the connection is secure.

python manage.py check

If all goes well, be happy, because for the first time you will definitely get into trouble and need a lot of research. In general, setting up Django and PostgreSQL for a novice will not be easy, so do not despair.


License

The license for this project is GNU GPL version three. You can manipulate, redistribute and rewrite this project and repository. You are generally free to do whatever you want with it. DarkDragons will give you this permission.

If you want to know more about the structure of GNU GPL, you can read the LICENSE.txt file in this basic directory.


Thanks for reading this README

DarkDragons Team

You might also like...

This simple and small react component can check your repository stars and change theme on light/dark

This simple and small react component can check your repository stars and change theme on light/dark

Repository metrics for react This beauty and easy (4KB) react component can help you add metrics to your repositories also you can change component th

Jun 25, 2022

The Bookstore is a website similar to the "Awesome Books" website built in the previous module. You will create an MVP version of it that allows you to: Display a list of books. Add a book. Remove a selected book.

The Bookstore is a website similar to the

Bookstore The Bookstore is a website similar to the "Awesome Books" website built in the previous module. You will create an MVP version of it that al

Jun 12, 2022

A web app built with Covid-19-API that displays Covid 19 cases, deaths and recovery per country in the entire World

A web app built with Covid-19-API that displays Covid 19 cases, deaths and recovery per country in the entire World

Covid19 Tracker A web app built with Covid-19-API that displays Covid 19 cases, deaths and recovery per country in the entire World Built With HTML, C

Nov 1, 2022

You can use this CLI Tool to clean your iOS and Android projects and keep them updated.

You can use this CLI Tool to clean your iOS and Android projects and keep them updated.

Mobile App Cleaner You can use this CLI Tool to clean your iOS and Android projects and keep them updated. This tool automatizes these items below; Cl

Mar 19, 2022

TryShape is an open-source platform to create shapes of your choice using a simple, easy-to-use interface. You can create banners, circles, polygonal shapes, export them as SVG, PNG, and even as CSS.

TryShape is an open-source platform to create shapes of your choice using a simple, easy-to-use interface. You can create banners, circles, polygonal shapes, export them as SVG, PNG, and even as CSS.

Create, Export, Share, and Use any Shapes of your choice. View Demo · Report Bug · Request Feature 👋 Introducing TryShape TryShape is an opensource p

Dec 26, 2022

This is a code repository for the corresponding video tutorial. In this video, we're going to build a Modern UI/UX Restaurant Landing Page Website

This is a code repository for the corresponding video tutorial. In this video, we're going to build a Modern UI/UX Restaurant Landing Page Website

Restaurant Landing Page Live Site Stay up to date with new projects New major projects coming soon, subscribe to the mailing list to stay up to date h

Jan 4, 2023

Interactive web app where you can Store ,Add and Remove books to organize the books that you've read or the ones willing to read

bookStore Interactive web app where you can Store ,Add and Remove books to organize the books that you've read or the ones willing to read Built With

Jul 20, 2022

Read Blog. This is also a practical project. Working with APIs more and Routing and many new things.

Read Blog. This is also a practical project. Working with APIs more and Routing and many new things.

React blog This is a React blog that created with a custom API. We serve the API in our system and run blog with it. Goals of this project In this pro

Jul 25, 2022

The Bookstore is a website similar to the "Awesome Books" website. Here we will create an MVP version of it that allows you to: Display a list of books, Add a book and Remove a selected book.

The Bookstore is a website similar to the

Book Store This is Book Store project. Built With HTML CSS JavaScript React Screenshot Live Demo Go Live 😎 Getting Started Open dev branch Open VSCod

May 3, 2022
Owner
DarkDragons Team
Hi everyone👋 Welcome to the DarkDragons team GitHub page!🐉 Here you can find lots of open source projects and make the most of them.❤️😘
DarkDragons Team
null 136 Dec 30, 2022
Web App to store a list of books (Title and Author) made as a single page app.

Awesome Books This project its an interactive list of books, you can add and remove items to the list. Built With HTML JS Getting Started In this proj

Alex Puente 7 Nov 9, 2022
Blog - ⚡️ Blog pessoal onde publico artigos relacionados a dev. Desenvolvido com Next.js e TailwindCSS

⚡️ Blog Blog pessoal desenvolvido com Next.js e TypeScript ℹ️ Sobre o projeto Este projeto consiste em um blog pessoal, onde futuramente farei posts d

Caio Augusto 2 Oct 6, 2022
A web application to search all the different countries in the world and get details about them which can include languages, currencies, population, domain e.t.c This application is built with CSS, React, Redux-Toolkit and React-Router.

A web application to search all the different countries in the world and get details about them which can include languages, currencies, population, domain e.t.c This application is built with CSS, React, Redux-Toolkit and React-Router. It also includes a theme switcher from light to dark mode.

Franklin Okolie 4 Jun 5, 2022
use this to replace redux,you can use useActions to change context value and useActions return a mutable function collection

English | 中文 NOTE react-context-mutation is a lighter and more convenient state manager designed for react applications. It aims to replace the Redux

null 19 Feb 22, 2022
Open Source Website where you can manage your information and artworks of your fursona(s)

MyFursona About this project MyFursona is an open source project where users can manage their artworks, info (such as biography and interests), and lo

MyFursona 23 Jan 7, 2023
My JAMStack website/blog [Next / MDX / ChakraUI]

carlosazaustre.es Personal website/blog Technologies used Next.js React.js @emotion/styled ChakraUI MarkdownX Vercel Support If you like my work, you

Carlos Azaustre 80 Dec 25, 2022
My website. Portfolio and blog in one.

Infi.sh The code that's running infi.sh. License This project is licensed under the MIT license. This excludes all of the content in the public/ and _

null 5 Sep 18, 2022
Personal website and blog made using NextJS, TailwindCSS, GraphCMS, and MDX bundler

This is a Next.js project bootstrapped with create-next-app. Getting Started First, run the development server: npm run dev # or yarn dev Open http://

null 12 Aug 21, 2022