# Getting Started
Doprax is an online development & deployment platform for python-based websites and apps. You only need a web browser to start coding and put it online with a single click. This document helps you get started using doprax for development of production-ready web applications apps using doprax.
Doprax helps you in the entire development and deployment life-cycle. It is cross-platform and works on your desktop as well as tablets and smartphones. All the software and packages needed for development, deployment and operation of your website and apps are installed, configured and managed by the platform automatically. You will start by creating a project. Projects hold your source code, databases and other requirements that are necessary to run your website or app. Every project on doprax automatically gets a free yourapp.doprax.com address with HTTPS. You can also bring your own domains to doprax easily. We handle SSL certificate creation and renewal, as well as automatic HTTP to HTTPS redirects for all your custom domains.
# Create a project
To use doprax you need to sign up. Create your first project by clicking on the “create a new project” button in your dashboard. Give your project a name and a description. Projects also have a type. Supported project types are Django, Flask and Custom. By choosing a project type, appropriate requirements and settings will be applied to your project. For Django projects need a database to work properly. Choose a database if you want to create a django project. You can always add and remove and customize your databases even after creation. Depending on the project that you are creating and the expected amount of traffic, give your project the necessary amount of computation power. Choose the appropriate amount of RAM, CPU and disk size for your project.
You can collaborate with your teammates on your projects in doprax. By default a team will be created for you and you are the only team member. You can invite other people to this team and also create other teams. Manage your teams, members and roles in the team section.
MySQL is a popular database powering many of the highest traffic sites in the world. Doprax makes it effortless to deploy production-grade MySQL on by just one click. By default the mysql version is mysql-5 which is the most popular and used version. Other versions can be used also.
PostgreSQL also known as Postgres, is an open source, powerful, object-relational database system. A relational database is a digital database based on the relational model of data, as proposed by E. F. Codd in 1970. Postgres has been around for over 30 years of active development and is famous for the strong reputation for reliability, feature robustness, and performance.
Redis is an open-source in-memory data structure project implementing a distributed, in-memory key–value database with optional durability and is one of the most flexible and popular caching and database servers in use today. Doprax makes it easy to run Redis, complete with persistence so your data is always protected against process restarts and failures.
In the course of processing web requests, you may have to offload tasks to an asynchronous, background process (typically called a worker). Doprax makes this easy to do through Background Workers, which work like any other service. We’ll use Celery, a popular distributed task queue for Python.
Doprax editor makes it easy for you to develop and configure your projects. The only requirement is a web browser. Click on Open In Editor to start editing. A screenshot of the editor is shown in the image below.
There are several sections in the editor. Main menu, toolbar, sidebar, and text editor.
# Main menu
In this menu you can see 2 options: projects and deploy.
By clicking on “projects” a drop down menu would be open and you can see 3 options:
Create new project. By clicking on this option, you can create a whole new project in the editor and start coding immediately.
domain setting, By clicking on this option, a domain setting field will be open and you can edit domain settings like domain name, verify ownership of domain, create CNAME record. Every project on doprax automatically gets a free yourapp.doprax.com address.
But you can also bring your own domains to doprax easily. We handle SSL certificate creation and renewal, as well as automatic HTTP to HTTPS redirects for all your custom domains.
Resource setting. You can edit the computational power of your projects like ram, CPU and disk space Deploy to production: when you finish your website and want to make it online for your customers, it will become online by clicking on deploy to production.
In the toolbar menu there are seven Icons. Respectively from the left to right:
1.create a new project: icon is to create a new project as we mentioned before.
2. save: You can save your changes of your codes in your projects.
3. Run: when you write your code and want to see the result, By clicking on run, the log window in the bottom of your page will be open, you can see the result of your code in realtime.
4. Pause: This icon is for when you want to pause the process of running your code. You can continue the process by clicking on run again.
5. Stop: This option is for when you want to stop the process of running your code.
6. Stop apps and services: By clicking on this icon, It stops the process of running your codes and all services like databases, task manager and celery.
7. Project setting: in project settings you can edit the domain of your websites and customize the setting of your project.
In the sidebar of the editor there are 4 different sections. Projects, Directory, Services and components.
Under the projects subsection you can view the list of all projects that you are a team member of. Click on each one to switch between them and start editing.
Under the Directory subsection you can view and access the directory structure of the current project that you are editing. You can also create new files and folders and upload files from your computer to the project. Under the services subsection you can view and manage services like databases that are used in your project. There are two tabs here. The first tab is the list of running services and the second one is the list of all available services that you can use in your project. Click on each one to view details. Under the components subsection you can view and manage the reusable code components. There are two tabs. The first one is my components that shows the list of all components that you have created or clones. click on each component to view the details and edit/use them. The second tab shows you the different category of code components. You can find the components that you need by browsing categories or searching the code component that you need.
# Text editor
In the directory section in the sidebar of the editor, a built-in text editor will be opened on the right side of the screen. After you finish editing each file don't forget to click on the save button to save the changes that you have made.